Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
скрипт распознавания форума |

17.02.2007, 20:05
|
|
Постоянный
Регистрация: 09.07.2006
Сообщений: 937
Провел на форуме: 1948091
Репутация:
1686
|
|
скрипт распознавания форума
вот накропал скрипт распознает версию форумов ipb phpBB и булки
конечно не фонтан еще надо дорабатывать но позырьте
http://www.genom.h10.ru там вверху
запускать forum.pl http://forum.antichat.ru/ например +)
там фича идет сначала распознавание форума по характерным файлам или папкам -- но иногда допустим при отсутствии файла на серве идет рефреш на страницу в ошибками хостера и если там нет строки not found то скрипт подумает что такая страница есть в таком случае запускайте forum.pl http://forum.antichat.ru/ all
на ачате походу вроде получается 3.0.6 проапрейдженный до 3.5.? а потом до последней версии 3.6.4
|
|
|

17.02.2007, 21:31
|
|
Участник форума
Регистрация: 27.08.2006
Сообщений: 223
Провел на форуме: 2154209
Репутация:
341
|
|
не. на ачате по идие должен 3.5 со всеми фиксами от последних + свои фиксы. =) это по моему анализу
|
|
|

17.02.2007, 21:44
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
Код:
+admin@xaxa:~/Desktop/Downloads$ perl forum.pl http://www.viagroup.ru/forum/
############# What a forum? genom-- ###############
��� �������?....��� ������ �
~~~~~~~~~~~~~~~~~vBulletin~~~~~~~~~~~~~~~~~~~~~
Check version by clientscript's file ....
Check #1 for vBulletin 3.6.4 ....[OK]+
Check #2 for vBulletin 3.6.4 ....[NO]
Check #3 for vBulletin 3.6.4 ....[NO]
Check #4 for vBulletin 3.6.4 ....[NO]
Check for vBulletin < 3.6.* ....[OK]+
Check for vBulletin >= 3.6.0 ....[NO]
Check for vBulletin >= 3.6.0 ....[OK]+
Check for vBulletin >= 3.6.0 ....[OK]+
Check for vBulletin >= 3.5.0 ....[OK]+
кривой твой скрипт, там ипб
|
|
|

17.02.2007, 22:03
|
|
Участник форума
Регистрация: 24.02.2006
Сообщений: 206
Провел на форуме: 2735257
Репутация:
103
|
|
phpbb назвал воблой гг)
У меня в сетке битторент )
|
|
|

17.02.2007, 22:14
|
|
Постоянный
Регистрация: 08.10.2006
Сообщений: 445
Провел на форуме: 1028732
Репутация:
80
|
|
Да вот тоже на этом форуме тоже пробовал.
Вот тут чуть чуть добавил в скрипт.=)
Код:
#!/usr/bin/perl
use LWP::UserAgent;
my $ua = LWP::UserAgent->new(
max_size => 1024,
agent => 'kakep brayzer v 9.1.1',
);
print"\n\n############# What a forum? genom-- ###############\n\n";
if (length(@ARGV[0])==0) {print 'Use: forum.pl http://www.loleg.com/forum/'; exit; }
if (@ARGV[1] eq "all"){bulka();ipb();phpbb();exit;}
$xz="\n может это булка?....";$xz=~tr/а-я/\x80-\x9f/;print "$xz";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'reputation.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {$xz="угу кажысь она\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";bulka();exit;}
else{$xz="не не она\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";}
$xz="\n а если это IPB?....";$xz=~tr/а-я/\x80-\x9f/;print "$xz";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_images/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {$xz="попался бугагаг\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";ipb();exit;}
else{$xz="некатит\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";}
$xz="\n прочеким на phpBB?....";$xz=~tr/а-я/\x80-\x9f/;print "$xz";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'viewtopic.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {$xz="точняк он\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";phpbb();exit;}
else{$xz="проехали\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";}
sub phpbb{
print"\n~~~~~~~~~~~~~phpBB~~~~~~~~~~~~~\n";
print"\nCheck #1 for phpBB <=2.0.11 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'db/oracle.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for phpBB <= 2.0.19 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'admin/admin_disallow.php?setmodules=00');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/Call to undefined function/==1) {print '[OK]+';}
else{print'[NO]';}
}
sub ipb{
print"\n\n~~~~~~~~~~~~~IPB~~~~~~~~~~~~~\n";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/lib/search_mysql_ftext.php');
my $res = $ua->request($req);
$yda4a=$res->as_string; $ww=index($yda4a,'home');$ss=index($yda4a,'sources\lib');$zz=substr($yda4a,$ww,$ss-$ww);$zz=~s/\n//eg; $xz="путь к папке с форумом для ipb < 2.2.0 ...";$xz=~tr/а-я/\x80-\x9f/;print"$xz $zz \n";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'init.php');
my $res = $ua->request($req);
$yda4a=$res->as_string; $ww=index($yda4a,'home');$ss=index($yda4a,'init.php');$zz=substr($yda4a,$ww,$ss-$ww);$zz=~s/\n//eg; $xz="путь к папке с форумом для ipb >= 2.2.0 ...";$xz=~tr/а-я/\x80-\x9f/;print"$xz $zz \n";
print"\nCheck #1 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_emoticons/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==1) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_avatars/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==1) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'Skin/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'ssi_templates/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #5 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'fonts/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\n------------------------------------\nCheck #1 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'skin_cache/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/ipbportal.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/findpost.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/announcements.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #5 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/taskloader.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\n------------------------------------\nCheck #1 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'jscripts/ipb_editor.js');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'jscripts/ipb_editor_std.js');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/components_acp/registration_DEPR.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/components_init/example.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\n------------------------------------\nCheck #1 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_captcha/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'resources/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'converge_local/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'admin/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/is not allowed to connect to/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #5 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'skin_acp/clientscripts/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'cache/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'ips_kernel/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'jscripts/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'lofiversion/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'modules/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_avatars/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
sub bulka{
print"\n\n~~~~~~~~~~~~~~~~~vBulletin~~~~~~~~~~~~~~~~~~~~~\n";
print"\nCheck version by clientscript's file ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'clientscript/vbulletin_editor.css');
my $res = $ua->request($req);
$yda4a=$res->as_string; $ss=index($yda4a,'vBulletin');$zz=substr($yda4a,$ss,18);$zz=~s/\n//eg; print"$zz";
print"\nCheck #1 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'clientscript/vbulletin_cphome_scripts.js');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'images/regimage/fonts/HECK.TTF');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'images/regimage/fonts/WetPet.ttf');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'includes/functions_banning.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin < 3.6.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'validator.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.6.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'admincp/admininfraction.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.6.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'signaturepics/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.6.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'includes/datastore');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.5.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'ajax.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
}
sub mybb{
}
|
|
|

17.02.2007, 22:20
|
|
Участник форума
Регистрация: 24.02.2006
Сообщений: 206
Провел на форуме: 2735257
Репутация:
103
|
|
Сообщение от Ali_MiX
Да вот тоже на этом форуме тоже пробовал.
Вот тут чуть чуть добавил в скрипт.=)
Код:
#!/usr/bin/perl
use LWP::UserAgent;
my $ua = LWP::UserAgent->new(
max_size => 1024,
agent => 'kakep brayzer v 9.1.1',
);
print"\n\n############# What a forum? genom-- ###############\n\n";
if (length(@ARGV[0])==0) {print 'Use: forum.pl http://www.loleg.com/forum/'; exit; }
if (@ARGV[1] eq "all"){bulka();ipb();phpbb();exit;}
$xz="\n может это булка?....";$xz=~tr/а-я/\x80-\x9f/;print "$xz";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'reputation.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {$xz="угу кажысь она\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";bulka();exit;}
else{$xz="не не она\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";}
$xz="\n а если это IPB?....";$xz=~tr/а-я/\x80-\x9f/;print "$xz";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_images/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {$xz="попался бугагаг\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";ipb();exit;}
else{$xz="некатит\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";}
$xz="\n прочеким на phpBB?....";$xz=~tr/а-я/\x80-\x9f/;print "$xz";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'viewtopic.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {$xz="точняк он\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";phpbb();exit;}
else{$xz="проехали\n";$xz=~tr/а-я/\x80-\x9f/;print "$xz";}
sub phpbb{
print"\n~~~~~~~~~~~~~phpBB~~~~~~~~~~~~~\n";
print"\nCheck #1 for phpBB <=2.0.11 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'db/oracle.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for phpBB <= 2.0.19 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'admin/admin_disallow.php?setmodules=00');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/Call to undefined function/==1) {print '[OK]+';}
else{print'[NO]';}
}
sub ipb{
print"\n\n~~~~~~~~~~~~~IPB~~~~~~~~~~~~~\n";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/lib/search_mysql_ftext.php');
my $res = $ua->request($req);
$yda4a=$res->as_string; $ww=index($yda4a,'home');$ss=index($yda4a,'sources\lib');$zz=substr($yda4a,$ww,$ss-$ww);$zz=~s/\n//eg; $xz="путь к папке с форумом для ipb < 2.2.0 ...";$xz=~tr/а-я/\x80-\x9f/;print"$xz $zz \n";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'init.php');
my $res = $ua->request($req);
$yda4a=$res->as_string; $ww=index($yda4a,'home');$ss=index($yda4a,'init.php');$zz=substr($yda4a,$ww,$ss-$ww);$zz=~s/\n//eg; $xz="путь к папке с форумом для ipb >= 2.2.0 ...";$xz=~tr/а-я/\x80-\x9f/;print"$xz $zz \n";
print"\nCheck #1 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_emoticons/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==1) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_avatars/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==1) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'Skin/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'ssi_templates/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #5 for IPB 1.3.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'fonts/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\n------------------------------------\nCheck #1 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'skin_cache/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/ipbportal.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/findpost.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/announcements.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #5 for IPB 2.0.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/taskloader.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\n------------------------------------\nCheck #1 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'jscripts/ipb_editor.js');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'jscripts/ipb_editor_std.js');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/components_acp/registration_DEPR.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 2.1.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/components_init/example.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\n------------------------------------\nCheck #1 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_captcha/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'resources/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'converge_local/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'admin/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/is not allowed to connect to/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #5 for IPB 2.2.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'skin_acp/clientscripts/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'cache/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'ips_kernel/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'jscripts/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'lofiversion/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'modules/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'sources/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for IPB 2.*.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'style_avatars/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
sub bulka{
print"\n\n~~~~~~~~~~~~~~~~~vBulletin~~~~~~~~~~~~~~~~~~~~~\n";
print"\nCheck version by clientscript's file ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'clientscript/vbulletin_editor.css');
my $res = $ua->request($req);
$yda4a=$res->as_string; $ss=index($yda4a,'vBulletin');$zz=substr($yda4a,$ss,18);$zz=~s/\n//eg; print"$zz";
print"\nCheck #1 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'clientscript/vbulletin_cphome_scripts.js');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #2 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'images/regimage/fonts/HECK.TTF');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #3 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'images/regimage/fonts/WetPet.ttf');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck #4 for vBulletin 3.6.4 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'includes/functions_banning.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin < 3.6.* ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'validator.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.6.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'admincp/admininfraction.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.6.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'signaturepics/');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.6.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'includes/datastore');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
print"\nCheck for vBulletin >= 3.5.0 ....";
my $req = HTTP::Request->new(GET => "@ARGV[0]".'ajax.php');
my $res = $ua->request($req);
$yda4a=$res->as_string;
if ($yda4a=~m/not found/==0) {print '[OK]+';}
else{print'[NO]';}
}
sub mybb{
}
Substitution pattern not terminated at F:\-=-Exploit-=-\Version forum.pl line 25
4.
Сам ошибки там чего то не заметил так что незнаю!
|
|
|

17.02.2007, 22:24
|
|
Участник форума
Регистрация: 05.09.2006
Сообщений: 187
Провел на форуме: 6860213
Репутация:
378
|
|
KaMiKadZe убери на 254 строке пробел между $ss
|
|
|

18.02.2007, 00:52
|
|
Постоянный
Регистрация: 09.07.2006
Сообщений: 937
Провел на форуме: 1948091
Репутация:
1686
|
|
кривой кривой Green_Bear и KaMiKadZe написано ведь в посте что если вывод сообщения об ошибке нестандартный -- выводится какаянить хрень(у машки там денид аксес при открытии любого несуществующего файла если сильно надо его просканить то можешь поменять not found на Forbidden
You don't have permission to access /forum/123.php on this server.) вместо 404 file not found --- то скрипт это криво обработает -- и запускайте тогда forum.pl хост all
и зырьте по тому форуму который там стоит
и кста если чтото добавляете то лучше кусочки кода выкладывайте а не весь
Последний раз редактировалось genom--; 18.02.2007 в 01:00..
|
|
|

27.02.2007, 18:47
|
|
Познающий
Регистрация: 05.12.2006
Сообщений: 63
Провел на форуме: 1269724
Репутация:
100
|
|
Мне такая весчь давно нуна была....заипись...!
Доработай пжалста....
|
|
|

27.02.2007, 20:03
|
|
Тут может быть ваша реклама.
Регистрация: 30.07.2005
Сообщений: 1,243
Провел на форуме: 4520553
Репутация:
1316
|
|
я тут уже критиковал твой скрипт
http://s-teals.org/showthread.php?t=263
вместо 404 file not found --- то скрипт это криво обработает
Не учили юзать redirectable?
Код нечитаемым и просто сам алгоритм тупой определения.....
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|