# Thanks to MaB of Efnets #programmers for helping clean up my code and reduce my 20 line Class C IP Generator
# to 10 lines of "On The Fly" code and his timeout scheme. 
 
print<<__MENU;

               NeoErudition Technologies
                 CGI VTI Mass Scanner
               
                 By: Lawrence Lavigne
                          MaB
               
               
__MENU

use strict;
use diagnostics;
use warnings;
use LWP::UserAgent;
my $hostsfile;
my $host;
my @hosts;
my $userresp;
my $url;
my $class;
my $x;
my @checks = (	"http://HOST/_vti_pvt/service.grp",
		"http://HOST/_vti_pvt/authors.pwd",
		"http://HOST/cgi-bin/password.txt",
		"http://HOST/_vti_pvt/service.pwd",
		"http://HOST/_vti_pvt/users.pwd",
		"http://HOST/_vti_pvt/administrator.pwd",
		"http://HOST/_vti_pvt/administrators.pwd",
		"http://HOST/cgi-win/uploader.exe",
		"http://HOST/cgi-bin/upload.pl",
		"http://HOST/cgi-bin/whois_raw.cgi?",
		"http://HOST/cgi-bin/passwd",
		"http://HOST/cgi-bin/passwd.txt",
		"http://HOST/cgi-bin/handler.cgi",
		"http://HOST/cgi-bin/handler",
		"http://HOST/cgi-bin/files.pl",
		"http://HOST/msadc/Samples/SELECTOR/showcode.asp",
		"http://HOST/msadc/Samples/selector/showcode.asp",
		"http://HOST/session/adminlogin?");
my $ua = LWP::UserAgent->new(agent => "VTI Scan", env_proxy => 1, keep_alive => 1,timeout => 5);

print "Class C Range To Be Scanned (ie 10.1.101): ";
$class = <STDIN>;
chomp($class);
if ($class =~ /\d+\.\d+\.\d+/) {
	print "Adding $class.* to hosts list...\n\n";
	for ($x = 1; $x < 255; $x++) {
		push @hosts, "$class.$x";
	}
} else {
	print "Error: Invalid class syntax.";
	exit;
}

print qq(CGI/VTI Scan Initiated..\n);
print qq(Output Saved To CGIVTI.log.\n\n);
foreach $host (@hosts) {
	foreach (@checks) {
		$url = $_;
		$url =~ s/HOST/$host/;
		print qq(:: Checking $url...\n);
		my $response = $ua->get($url);
		if ($response->is_success) {
			print $response->content;
			open(OUT, ">>CGIVTI.log");
			print OUT $url;
			close OUT;
		} else {
			print qq(Not Vulnerable..\n\n);
		}
	}
}
<>








