La gestione dei programmi CGI effettuata dal perl è molto semplice. Essa avviene tramite una libreria denominata CGI.pm che fornisce una serie di metodi per creare elementi delle pagine HTML (moduli, tabelle, etc.) e per gestire il dialogo navigatore-programma. La caratteristica principale è rappresentata dal metodo per prelevare i parametri passati da un form. La classe fornisce un meccanismo indipendente dal tipo di passaggio di parametri (GET o POST), definendo un oggetto CGI con il metodo param che consente di ottenere il valore della variabile passata.
L'acquisizione si realizza mediante:
# Utilizziamo la libreria CGI.pm
use CGI;
# Istanziamo un oggetto CGI
my $query = new CGI;
# Assegnamo alla variabile $test il parametro passato dal form
my $test = $query->param("test");
Non vi è più la necessità di riferirsi alla variabile QUERY_STRING o alla lettura dello standard input: semplicemente si invoca un metodo su un oggetto! Inoltre viene effettuata la pulizia della stringa, convertendo gli eventuali caratteri esadecimali e sostituendo i segni di somma con gli spazi. In questo modo l'utilizzo dei moduli e degli script CGI risulta più sicuro, dato che vengono fatti dei controlli sulle stringhe in ingresso per evitare dei pericolosi buffer overflow.