痞菜
级别:管理员威望 :9 经验:18 货币:99999 体力: 来源:不知道 总发帖数:2602 注册日期:2001-04-13
查看 邮件 主页 QQ 消息 引用 复制 下载 #!/usr/bin/perl
# UNIX SCRIPTS
################################################### @scripts_u =
("GET /cgi-bin/rwwwshell.pl HTTP/1.0\n\n","GET /cgi-bin/phf
HTTP/1.0\n\n", "GET /cgi-bin/Count.cgi HTTP/1.0\n\n","GET
/cgi-bin/test-cgi HTTP/1.0\n\n", "GET /cgi-bin/nph-test-cgi
HTTP/1.0\n\n","GET /cgi-bin/nph-publish HTTP/1.0\n\n", "GET
/cgi-bin/php.cgi HTTP/1.0\n\n","GET /cgi-bin/handler HTTP/1.0\n\n",
"GET /cgi-bin/webgais HTTP/1.0\n\n","GET /cgi-bin/websendmail
HTTP/1.0\n\n", "GET /cgi-bin/webdist.cgi HTTP/1.0\n\n","GET
/cgi-bin/faxsurvey HTTP/1.0\n\n", "GET /cgi-bin/htmlscript
HTTP/1.0\n\n","GET /cgi-bin/pfdispaly.cgi HTTP/1.0\n\n", "GET
/cgi-bin/perl.exe HTTP/1.0\n\n","GET /cgi-bin/wwwboard.pl
HTTP/1.0\n\n", "GET /cgi-bin/www-sql HTTP/1.0\n\n","GET
/cgi-bin/view-source HTTP/1.0\n\n", "GET /cgi-bin/campas
HTTP/1.0\n\n","GET /cgi-bin/aglimpse HTTP/1.0\n\n", "GET
/cgi-bin/glimpse HTTP/1.0\n\n","GET /cgi-bin/man.sh HTTP/1.0\n\n",
"GET /cgi-bin/AT-admin.cgi HTTP/1.0\n\n","GET
/cgi-bin/filemail.pl HTTP/1.0\n\n", "GET /cgi-bin/maillist.pl
HTTP/1.0\n\n","GET /cgi-bin/jj HTTP/1.0\n\n", "GET
/cgi-bin/info2www HTTP/1.0\n\n","GET /cgi-bin/files.pl
HTTP/1.0\n\n", "GET /cgi-bin/finger HTTP/1.0\n\n","GET
/cgi-bin/bnbform.cgi HTTP/1.0\n\n", "GET /cgi-bin/survey.cgi
HTTP/1.0\n\n","GET /cgi-bin/AnyForm2 HTTP/1.0\n\n", "GET
/cgi-bin/textcounter.pl HTTP/1.0\n\n","GET /cgi-bin/classifieds.cgi
HTTP/1.0\n\n", "GET /cgi-bin/environ.cgi HTTP/1.0\n\n","GET
/cgi-bin/wrap HTTP/1.0\n\n", "GET /cgi-bin/cgiwrap
HTTP/1.0\n\n","GET /cgi-bin/guestbook.cgi HTTP/1.0\n\n", "GET
/cgi-bin/edit.pl HTTP/1.0\n\n","GET /cgi-bin/perlshop.cgi
HTTP/1.0\n\n"); @names_u = ("THC - backdoor ","phf
","Count.cgi ","test-cgi ","nph-test-cgi ", "nph-publish
","php.cgi ","handler ","webgais ","websendmail ", "webdist.cgi
","faxsurvey ","htmlscript ","pfdisplay ","perl.exe ",
"wwwboard.pl ","www-sql ","view-source ","campas ","aglimpse ",
"glimpse ","man.sh ","AT-admin.cgi ","filemail.pl ","maillist.pl
", "jj ","info2www ","files.pl ","finger ","bnbform.cgi ",
"survey.cgi ","AnyForm2 ","textcounter.pl
","classifields.cgi","environ.cgi ", "wrap ","cgiwrap
","guestbook.cgi ","edit.pl ","perlshop.cgi "); # Windows
SCRIPTS ###################################################
@scripts_w = ("GET /_vti_inf.html HTTP/1.0\n\n","GET
/_vti_pvt/service.pwd HTTP/1.0\n\n", "GET /_vti_pvt/users.pwd
HTTP/1.0\n\n","GET /_vti_pvt/authors.pwd HTTP/1.0\n\n", "GET
/_vti_pvt/administrators.pwd HTTP/1.0\n\n","GET /_vti_bin/shtml.dll
HTTP/1.0\n\n", "GET /_vti_bin/shtml.exe HTTP/1.0\n\n","GET
/cgi-dos/args.bat HTTP/1.0\n\n", "GET /cgi-win/uploader.exe
HTTP/1.0\n\n","GET /cgi-bin/rguest.exe HTTP/1.0\n\n", "GET
/cgi-bin/wguest.exe HTTP/1.0\n\n","GET /scripts/issadmin/bdir.htr
HTTP/1.0\n\n", "GET /scripts/CGImail.exe HTTP/1.0\n\n","GET
/scripts/tools/newdsn.exe HTTP/1.0\n\n", "GET
/scripts/fpcount.exe HTTP/1.0\n\n","GET
/cfdocs/expelval/openfile.cfm HTTP/1.0\n\n", "GET
/cfdocs/expelval/exprcalc.cfm HTTP/1.0\n\n","GET
/cfdocs/expelval/displayopenedfile.cfm HTTP/1.0\n\n", "GET
/cfdocs/expelval/sendmail.cfm HTTP/1.0\n\n","GET
/iissamples/exair/howitworks/codebrws.asp HTTP/1.0\n\n", "GET
/iissamples/sdk/asp/docs/codebrws.asp HTTP/1.0\n\n","GET
/msads/Samples/SELECTOR/showcode.asp HTTP/1.0\n\n", "GET
/search97.vts HTTP/1.0\n\n","GET /carbo.dll HTTP/1.0\n\n");
@names_w = ( "_vti_inf.html ","service.pwd ","users.pwd
","authors.pwd ","administrators ", "shtml.dll ","shtml.exe
","args.bat ","uploader.exe ","rguest.exe ", "wguest.exe ","bdir
- samples ","CGImail.exe ","newdsn.exe ","fpcount.exe ",
"openfile.cfm ","exprcalc.cfm ","dispopenedfile ","sendmail.cfm
","codebrws.asp ", "codebrws.asp 2 ","showcode.asp
","search97.vts ","carbo.dll "); $insecure = 0; system
"clear"; use IO::Socket; my ($port, $sock,$server);
$size=0; ################################ SCAN
########################## if(! $ARGV[0]) { &usage;
exit; } $server = $ARGV[0]; ($s,$e) =
split(/-/,$server); ($ia,$ib,$id,$ix) = split(/\./,$s);
print "[Scaning from $s to $ia.$ib.$id.$e]\n"; $port =
$ARGV[1]; if(! $ARGV[1]) { $port = 80; }
for($i=$ix;$i<=$e;$i++) { $server = "$ia.$ib.$id.$i";
&connect; } print "[CGI Scanner by
RapMaster2000]\n"; sub connect { #print "[Trying
$server]\n"; $sock =
IO::Socket::INET->new(PeerAddr => $server,
PeerPort => $port,
Proto => 'tcp');
if ($sock) {
print "[Connected to
$server on $port]\n"; $n=0; &version;
close(sock); $size++;
} else { } }
################################ VERSION
########################## sub version { $ver = "HEAD /
HTTP/1.0\n\n"; my($iaddr,$paddr,$proto); $iaddr =
inet_aton($server) || die "Error: $!"; $paddr =
sockaddr_in($port, $iaddr) || die "Error: $!"; $proto =
getprotobyname('tcp') || die "Error: $!"; socket(SOCK, PF_INET,
SOCK_STREAM, $proto) || die "Error: $!"; connect(SOCK, $paddr)
|| die "Error: $!"; send(SOCK, $ver, 0) || die "Can't to send
packet: $!"; print "[Server version
is]:\n[##############################]\n"; while(<SOCK>)
{ print; } print
"[##############################]\n"; print "[It is Windows or
UNIX?]\n[Windows-1,Unix-2,Quit-3]:"; $n=0;
chomp($type=<STDIN>); if($type eq 3) { print "Scan
aborted!\n"; exit; } if($type eq 1) { foreach
$scripts_w(@scripts_w) { print "Searching
for @names_w[$n] : "; $scw=$scripts_w;
$name = @names_w[$n]; &win_scan;
$n++; } } else
{ foreach $scripts_u(@scripts_u) {
print "Searching for [@names_u[$n]] : ";
$sc=$scripts_u; $name = @names_u[$n];
&unix_scan; $n++;
} } close(SOCK); } sub win_scan {
my($iaddr,$paddr,$proto); $iaddr = inet_aton($server) || die
"Error: $!"; $paddr = sockaddr_in($port, $iaddr) || die "Error:
$!"; $proto = getprotobyname('tcp') || die "Error: $!";
socket(SOCK, PF_INET, SOCK_STREAM, $proto) || &error("Failed
to open socket: $!"); connect(SOCK, $paddr) ||
&error("Unable to connect: $!"); send(SOCK,$scw,0);
$check=<SOCK>;
($http,$code,$blah) = split(/ /,$check);
if($code == 200) {
print "[Found!]\n";
$insecure++;
} else
{
print "[Not Found]\n"; }
close(SOCK); } sub unix_scan
{ my($iaddr,$paddr,$proto); $iaddr = inet_aton($server)
|| die "Error: $!"; $paddr = sockaddr_in($port, $iaddr) || die
"Error: $!"; $proto = getprotobyname('tcp') || die "Error: $!";
socket(SOCK, PF_INET, SOCK_STREAM, $proto) || &error("Failed
to open socket: $!"); connect(SOCK, $paddr) ||
&error("Unable to connect: $!"); send(SOCK,$sc,0);
$check=<SOCK>;
($http,$code,$blah) = split(/ /,$check);
if($code == 200) {
print "[Found!]\n";
$insecure++;
} else
{
print "[Not Found]\n"; }
close(SOCK); }
################################ USAGE
########################## sub usage { system "clear";
print "[Usage: ./port IP-END PORT
]\n[Example: ./port 195.34.0.1-255 23]\n[Put first agument -s for
single host scan]\n"; exit(0); }
################################ END ##########################
print "[Totaly found $size hosts with open $port port and
$insecure buggy scripts]\n"; [ 此消息由 痞菜 在
2002-08-31.14:12:32 编辑过 ]