martes, 21 de enero de 2014

Arreglando bug SQL Injection PHP

Publicado por OverNet en martes, enero 21, 2014 ,

Arreglando bug SQL Injection de manera rápida y sencilla

Este tutorial, va dedicado a los novatos que principalmente explotan el bug y defacean y se van sin arreglarlo.
*En este post encontraras como realizar una Inyección SQL.

Para poder arreglar el bug, necesitamos tener permisos de escritura (para los que trabajan con PHP Shells), de lo contrario este tutorial no te servirá pero sí a los webmasters que quieran evitar este tipo de ataque.

Bueno tenemos la siguiente página:

Como se puede apreciar es vulnerable a SQL Injection, observen la comilla.
Hay que tomar nota de esto, nos basamos en el archivo y la variable que se ejecuta:
http://www.avcnoticias.com.mx/bb/haxor.php?id='

* Tomamos nota *
- Directorio o carpeta:
/bb/
- Archivo vulnerable: haxor.php
- Variable vulnerabl SQLi: id=
- Lineas a modificar: 19 & 25 (Se identifican gracias al error que se imprime)

Nos vamos a nuestra PHP Shell o FTP (En caso de ser el propietario) y buscamos el Directorio (/bb/ en mi caso) y entre ella descargamos o modificamos el Archivo vulnerable (haxor.php en mi caso)

Lo editamos con el Bloc de Notas/Adobe Dreamweaver o cualquier otro editor de texto y buscamos la variable que es en nuestro caso id
(si estas en Adobe Dreamweaver CTRL + f, si estas en bloc de notas CTRL + b)
Y encontramos algo por el estilo:

Se observa claramente el código que no tiene ningún filtro de seguridad y que la variable es vulnerable a este tipo de ataques.
Ahora vamos arreglar este fallo tenemos en esta linea que se ejecuta la variable:

  1. $id=$_GET['id'];  
  2. $consulta = "SELECT * from nota where id_nota=$id";  
  3. $rs = mysql_query($consulta,$conn);  

Con la función sprintf() y mysql_real_escape_string() podemos arreglar este fallo:

  1. $consulta = sprintf("SELECT * from nota where id_nota='%s'",  
  2. mysql_real_escape_string($id));   
Y listo, sí incluimos la comilla en la variable ya no nos muestra ningún error.

Back Top

2 comentarios:

  1. Hola,

    Esto es para informar al público en general que la Sra. HENRIETTA FERNANDO, una prestamista de préstamo privado de buena reputación ha abierto una oportunidad financiera para todos los que necesitan ayuda financiera. ¿Necesita un préstamo? ¿Necesita dinero urgente para resolver un problema de emergencia? ¿O necesita un préstamo para cancelar sus deudas o financiar su proyecto? ¿Ha sido rechazado por los bancos y otras agencias financieras? No busque más, porque estamos aquí para todos sus problemas financieros. Ofrecemos préstamos rápidos y confiables a un tipo de interés del 2% a personas, empresas y sociedades independientemente de la nacionalidad del cliente o situación financiera. Nuestros términos y condiciones y claro y muy comprensible.
    No se requiere chequeo de crédito, 100% garantizado.

    Envíenos un correo electrónico a: (henriettafernandoloanfirm@gmail.com)

  2. Si cree que su pareja puede estar engañando, comuníquese con expressfoundations@gmail.com para contratar a un pirata informático confiable y monitorear su teléfono en secreto.

Publicar un comentario

Blaaa blaa y + blaa.. escribe las dudas que tengas :D

- No incluyas Correos electrónicos por seguridad propia.
- No SPAM/Flood.
- Se borrará cualquier comentario ofensivo, racista o vulgar.