كود:
	#!/usr/bin/perl
#######################################################
#                                                            #
#                       CGI Helper                           #
#                     By Steve Miles                         #
#                http://www.gron)dbreak.com                  #
#                                                            #
#                 Copyright <c> 1999-2000                    #
#                                                            #
#     Selling or distributing this software or               #
#     modifications of this software without                 #
#     permission is expressly forbidden. Permission          #
#     to modify the script for personal use is granted.      #
#     In all cases this header and copyright                 #
#     must remain intact. All violators will be              #
#     PROSECUTED to the full extent.                         #
#                                                            #
########################################################
use File::Find;
use CGI qw (:standard);
$q = new CGI;
$|++; 
print $q->header();
$color1 = "C1C4CA";
$color2 = "C9CEE7";
$color = "C1C4CA";
print<<EOF;
<HTML><HEAD><TITLE>المساعد</TITLE>
<style type="text/css"> 
<!-- 
A:visited {text-decoration: none;} 
A:hover {text-decoration: underline;}
A:link {text-decoration: none;} 
A:active {text-decoration: none;} 
.MEMBERS {font-size: 8pt; text-decoration: none; font-family: Verdana,Arial; color: FF0000;}
--> 
</style>
</HEAD>
<BODY BGCOLOR="ffffff" TEXT="000000" LINK="000080" VLINK="004080">
EOF
$referer = $q->referer();
$remote_host = $q->remote_host();
$remote_addr = $q->remote_addr();
$remote_user = $q->remote_user();
$request_method = $q->request_method();
$auth_type = $q->auth_type();
$script_name = $q->script_name();
$self_url = $q->self_url();
$user_agent = $q->user_agent();
$user_name = $q->user_name();
$sendmail = `whereis sendmail`;
@sendmail = split (/ /, $sendmail);
shift @sendmail;
$perl	=`whereis perl`;
@perl = split (/ /, $perl);
shift @perl;
print<<EOF;
<Center><TABLE WIDTH=750 CELLPADDING=1 CELLSPACING=0 bgcolor=000000 border=0><TR><TD bgcolor=000000>
<TABLE WIDTH=100% CELLPADDING=10 CELLSPACING=0 bgcolor=$color2 border=0><TR><TD bgcolor=$color2>
<font face=arial size=5><b><center>مساعد السي جي اي<br><font face=arial><i><b>انتظر لحظة الى ان يتم تحميل الصفحة ...
</td></tr></table></center>
<center><table cellpadding=5 cellspacing=0 width=750>
<tr><td valign=middle  bgcolor=$color1 colspan=2><center><font face=verdana,arial size=3><b>You are running Perl version $] with $^O</font></b></td></tr>
EOF
foreach $item (keys %ENV) {
	if ($color eq $color1) { $color = $color2; }
	elsif ($color eq $color2) { $color = $color1; }
	$key = $item;
	$ENV{$key} =~ s/<ADDRESS>//ig;
	$ENV{$key} =~ s/<\/ADDRESS>//ig;
	$ENV{$key} =~ s/\ \;//ig;
	$item =~ s/\_/ /g;
	$item =~ s/(\w+)/\u\L$1/g;
	print "<tr><td valign=middle bgcolor=$color><font face=verdana,arial size=1><b>$item:</td><td valign=middle bgcolor=$color><font face=verdana,arial size=1><b>\ \;$ENV{$key}</td></tr>\n";
}
print<<EOF;
<tr><td valign=middle bgcolor=$color2 width=200><font face=verdana,arial size=1><b>Referer:  </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $referer</td></tr>
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b>Remote Host:  </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $remote_host</td></tr>
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b>Remote Address:  </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $remote_addr</td></tr>
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b>Remote User:  </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $remote_user</td></tr>
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b>Request Method:  </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $request_method</td></tr>
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b>Authorization Type:  </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $auth_type</td></tr>
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b>Script Name:  </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $script_name</td></tr>
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b>Self URL:  </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $self_url</td></tr>
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b>User Agent:  </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $user_agent</td></tr>
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b>User Name:  </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $user_name</td></tr>
EOF
foreach $item(@INC) {
if ($item =~ /\//g) {
if ($q eq 1) {
print<<EOF;
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $item</td></tr>
EOF
} else {
print<<EOF;
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b>Directories Searched:</td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $item</td></tr>
EOF
$q = 1;
}
}}
$q=0;
foreach $item(@perl) {
if ($q eq 1) {
print<<EOF;
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $item</td></tr>
EOF
} else {
print<<EOF;
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b>Paths to Perl:</td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> $item</td></tr>
EOF
$q = 1;
}
}
$q=0;
print<<EOF;
<tr><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> </td><td valign=middle bgcolor=$color1><font face=verdana,arial size=1><b> often found in '/usr/bin/perl' or '/usr/local/bin/perl'</td></tr>
EOF
foreach $item(@sendmail) {
if ($q eq 1) {
print<<EOF;
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $item</td></tr>
EOF
} else {
print<<EOF;
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b>Paths to Sendmail:</td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> $item</td></tr>
EOF
$q = 1;
}
}
print<<EOF;
<tr><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> </td><td valign=middle bgcolor=$color2><font face=verdana,arial size=1><b> often found in '/usr/sbin/sendmail' or '/usr/lib/sendmail'</td></tr>
EOF
print<<EOF;
</table></td></tr></table></center>
EOF
find(\&wanted,@INC);
	
foreach $item (keys %modules) {
	$i++;
	push (@modules, $item);
}
@modules = sort @modules;
$stop = int ($i / 4);
print<<EOF;
<p>
<CenteR><TABLE WIDTH=750 CELLPADDING=1 CELLSPACING=0 bgcolor=000000 border=0><TR><TD bgcolor=000000>
<TABLE WIDTH=100% CELLPADDING=10 CELLSPACING=0 bgcolor=$color2 border=0><TR><TD bgcolor=$color2>
<tr><td valign=middle align=center bgcolor=$color1 colspan=4><font face=verdana,arial size=2><b>INSTALLED MODULES (click on module for more info)</font></b></td></tr><tr><td bgcolor=$color2>
EOF
while ($e < $stop + 1) {
	$item = shift @modules;
	$search = $item;
	$search =~ s/ /+/g;
	print "<font size=1 face=verdana,arial><a href=\"http://search.cpan.org/search?mode=module&query=$search\">$item</a><br>";
	$e++;
}
$e = 0;
print "</td><td bgcolor=$color2>";
while ($e < $stop + 1) {
	$item = shift @modules;
	$search = $item;
	$search =~ s/ /+/g;
	print "<font size=1 face=verdana,arial><a href=\"http://search.cpan.org/search?mode=module&query=$search\">$item</a><br>";
	$e++;
}
$e = 0;
print "</td><td bgcolor=$color2>";
while ($e < $stop + 1) {
	$item = shift @modules;
	$search = $item;
	$search =~ s/ /+/g;
	print "<font size=1 face=verdana,arial><a href=\"http://search.cpan.org/search?mode=module&query=$search\">$item</a><br>";
	$e++;
}
$e = 0;
print "</td><td bgcolor=$color2>";
while ($e < $stop + 1) {
	$item = shift @modules;
	$search = $item;
	$search =~ s/ /+/g;
	print "<font size=1 face=verdana,arial><a href=\"http://search.cpan.org/search?mode=module&query=$search\">$item</a><br>";
	$e++;
}
$e = 0;
print "</td></tr></table></td></tr></table></center>";
sub wanted
{
  if ($File::Find::name =~ /\.pm$/)
  {
      open(MODFILE,$File::Find::name) || return;
      while(<MODFILE>)
      {
        if (/^ *package +(\S+);/)
          {
            $modules{$1} = 1;
            last;
          }
      } 
  }
}
 ----------الى هنا( لا تنسخ هذا الخط ) ------------