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)
