sad:fedora14:p5
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
sad:fedora14:p5 [2018/02/10 18:06] – José Manuel Guallar | sad:fedora14:p5 [2019/01/04 13:18] (actual) – editor externo 127.0.0.1 | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ¿Qué es una inyección SQL? | + | **¿Qué es una inyección SQL?** |
La inyección SQL (también conocida como SQL fishing) es una técnica que se usa a menudo para atacar aplicaciones impulsadas por datos. | La inyección SQL (también conocida como SQL fishing) es una técnica que se usa a menudo para atacar aplicaciones impulsadas por datos. | ||
Línea 7: | Línea 7: | ||
La vulnerabilidad ocurre cuando la entrada del usuario se filtra incorrectamente para los caracteres de escape literales de cadena incrustados en las declaraciones SQL o la entrada del usuario no se escribe con fuerza y se ejecuta inesperadamente. La inyección SQL se conoce principalmente como un vector de ataque para sitios web, pero se puede usar para atacar cualquier tipo de base de datos SQL. | La vulnerabilidad ocurre cuando la entrada del usuario se filtra incorrectamente para los caracteres de escape literales de cadena incrustados en las declaraciones SQL o la entrada del usuario no se escribe con fuerza y se ejecuta inesperadamente. La inyección SQL se conoce principalmente como un vector de ataque para sitios web, pero se puede usar para atacar cualquier tipo de base de datos SQL. | ||
- | Requisitos para hacer la práctica | + | **Requisitos para hacer la práctica** |
- | Tener instalado Fedora 14 | + | |
- | Tener instaldo | + | Tener instalado Fedora 14\\ |
+ | Tener instaldo BackTrack 5 R1\\ | ||
Tener instalado | Tener instalado | ||
- | En esta práctica haremos lo siguiente: | + | **En esta práctica haremos lo siguiente:** |
* Probar el script de Login.php para las vulnerabilidades de inyección de SQL. | * Probar el script de Login.php para las vulnerabilidades de inyección de SQL. | ||
* Varios métodos sobre cómo omitir la cláusula de contraseña. | * Varios métodos sobre cómo omitir la cláusula de contraseña. | ||
Línea 19: | Línea 20: | ||
Hacemos un ifconfig de las dos máquinas para saber la ip, luego en el Backtrack instalamos Firebug por si no está instaldo | Hacemos un ifconfig de las dos máquinas para saber la ip, luego en el Backtrack instalamos Firebug por si no está instaldo | ||
+ | {{: | ||
---- | ---- | ||
+ | **Si no tenemos instalado Firebug** | ||
+ | |||
Abrimos el navegador y vamos a http:// | Abrimos el navegador y vamos a http:// | ||
Línea 27: | Línea 30: | ||
---- | ---- | ||
- | Desde el Bt vamos a http:// | + | Desde el Bt vamos a http:// |
- | ====== Test de la comilla simple (') ====== | + | {{: |
+ | ====== | ||
En el campo de texto " | En el campo de texto " | ||
+ | |||
+ | {{: | ||
Analizamos que ha pasado | Analizamos que ha pasado | ||
Línea 44: | Línea 50: | ||
</ | </ | ||
- | A continuación | + | A continuación |
<code sql> | <code sql> | ||
SELECT * FROM accounts WHERE username = ' | SELECT * FROM accounts WHERE username = ' | ||
</ | </ | ||
+ | {{: | ||
- | ====== Login sin password hacemos un By-Pass ====== | + | ======= Login sin password hacemos un By-Pass |
- | Ahora reemplazamos** ' or 1=1--** | + | Ahora reemplazamos ** ' or 1=1-- ** (hay que poner espacio detrás de los los --) |
**¿Qué hemos hecho?** | **¿Qué hemos hecho?** | ||
Línea 61: | Línea 68: | ||
<code sql> | <code sql> | ||
- | SELECT * FROM accounts WHERE username = '' | + | SELECT * FROM accounts WHERE username = '' |
</ | </ | ||
+ | |||
+ | {{: | ||
**Verificando resultados** | **Verificando resultados** | ||
Línea 68: | Línea 77: | ||
Ha iniciado sesión como administrador. Debido al diseño del código de Mutillidae, iniciamos sesión como administrador porque admin es el primer usuario en la tabla de cuentas. | Ha iniciado sesión como administrador. Debido al diseño del código de Mutillidae, iniciamos sesión como administrador porque admin es el primer usuario en la tabla de cuentas. | ||
- | En DVWA, como una cadena similar (**% 'o' 0 ' | + | En DVWA, como una cadena similar (**% 'or' 0 ' |
+ | |||
+ | {{: | ||
Click en '' | Click en '' | ||
+ | |||
+ | ====== Campo PASSWORD ====== | ||
+ | |||
Ahora toca el campo password, hacemos la prueba de la comilla simple en el campo Password | Ahora toca el campo password, hacemos la prueba de la comilla simple en el campo Password | ||
- | pulsamos en Login/ | + | pulsamos en **Login/ |
Analizamos los resultados de la comilla simple (') | Analizamos los resultados de la comilla simple (') | ||
Línea 98: | Línea 112: | ||
y reemplazamos la palabra **password** por la palabra **text** | y reemplazamos la palabra **password** por la palabra **text** | ||
+ | |||
+ | {{: | ||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | {{: | ||
Aplicamos el test que siempre es verdad **(' or 1=1 -- )** | Aplicamos el test que siempre es verdad **(' or 1=1 -- )** | ||
+ | |||
En ** name** escribimos **samurai** | En ** name** escribimos **samurai** | ||
en **password** escribimos **' or 1=1--** | en **password** escribimos **' or 1=1--** | ||
+ | |||
+ | {{: | ||
+ | {{: | ||
Bueno, lo que veo son buenas noticias. Por un lado, estoy contento de haber iniciado sesión, pero debo iniciar sesión como samurai en lugar de administrador. | Bueno, lo que veo son buenas noticias. Por un lado, estoy contento de haber iniciado sesión, pero debo iniciar sesión como samurai en lugar de administrador. |
sad/fedora14/p5.1518285972.txt.gz · Última modificación: (editor externo)