domingo, 1 de mayo de 2011

DEMO: Explotación de SQL Injection

Hola, esta es la demo que hice para la charla que dimos, un amigo y yo, el día sábado en el FLISOL (UNAC).

En el vídeo se muestra como explotar una inyección SQL para conseguir una sesión de meterpreter en el sistema remoto y tomar el control.



Saludos.

15 comentarios:

  1. wena combinancion tecnicas, Alguien

    ResponderEliminar
  2. Me gusto tu video nunca he visto ese tipo de inyección, solo he utilizado los select para mostrar datos pero nunca pense que se pudiera crear de esa manera un archivo, sera porque no estoy muy asociado al SQL, te agradeceria si puedes explicarme maso tu select con la creacion de ese txt. gracias

    ResponderEliminar
  3. Hola Anónimo, bueno lo que se hace es usar la clausula INTO OUTFILE (cuando solo es texto) o INTO DUMPFILE (cuando son datos binarios) para botar el resultado de una consulta a un fichero del servidor. La sintaxis es más o menos así:

    SELECT 'codigo_php_malicioso' INTO OUTFILE '/ruta/al/fichero.php'

    Para que ello funcione el usuario que está ejecutando las consultas en la base de datos debe tener habilitado el permiso FILE sino no podrá utilizar las clausulas antes mencionadas.

    Espero haber aclarado tus dudas, en todo caso ya escribiré algo más detallado en la serie de inyecciones SQL.

    Un saludo.

    ResponderEliminar
  4. Muy claro tu explicacion, obtengo un usuario nobody sin muchos privilegios, para escalar privilegios requiero q el kernel tenga una vulnerabilidad cierto, o existe otra manera

    ResponderEliminar
  5. Sí, se necesita de una vulnerabilidad en el kernel o en algún servicio que este corriendo como root.

    Para averiguar la versión de kernel ejecuta esto:

    $ uname -a

    Y para saber que servicios están corriendo y con que usuario esto:

    $ ps -axu

    Luego solo toca echar un vistazo en exploit-db.com.

    Justo la VM del DVWA que uso en el vídeo tiene una vuln en el kernel si estas practicando con esa VM sigue adelante ;)

    ResponderEliminar
  6. si tengo el DVWA en mi mismo ubuntu 11.04 dudo q por ahora haya una vulne para escalar privilegios, he visto algunos videos cuando suben una webshell, tantos privilegios pueden tener tanto asi que cambian el index, yo supongo q esas webshell tambien tiene los privilegios de nobody y no root?

    ResponderEliminar
  7. hola, cuando pongo trato de acceder a mi dvwa(maquina virtual) desde mi maquina real, me sale mensaje ¡¡acceso prohinido!!, tengo que asignarle privilegios a el directorio dvwa'

    ResponderEliminar
  8. @Anónimo1 Si las webshells también se ejecutan con el usuario nobody y dependiendo de los permisos que tengan los ficheros de la web podrás o no modificarlos.

    @Anónimo2 Creo que el problema podría estar en la configuración del sshd de tu DVWA. A mí tampoco me permite conectar.

    Saludos.

    ResponderEliminar
  9. hola exelente explotacion, una consulta el exploit que lansas es una vulneravilidad en alguna version del PHP, para poder practicar tu explotacion que necesito para armar un entorno de trabajo similar que exploits utilisas. gracias de antemano por tu tiempo en hacer estos tutos se aprende mucho

    ResponderEliminar
  10. DVWA, es una aplicacion web vulnerable a propósito que sirve para hacer practicas de este tipo. Puedes bajartela de aquí:

    http://www.randomstorm.com/dvwa-security-tool.php

    Y este es un tuto para instalarla:

    http://alguienenlafisi.blogspot.com/2011/04/sql-injection-web-attacks-parte-iii.html

    En el vídeo se muestra como explotar una vulnerabilidad SQL Injection (una vuln de la aplicación) para conseguir subir un webpayload (un payload de MSF pero web) y obtener una sesion de meterpreter };]

    Un saludo.

    ResponderEliminar
  11. Buena demo porciaca alguien logro poder ponerla en red a la DVWA o solo es posible acceder por localhost .. saludos

    ResponderEliminar
  12. DVWA corre como cualquier aplicación web, es decir, si funciona remotamente. De echo cuando usas el LiveCD de DVWA estas levantando la aplicacion es un host remoto (como en el video).

    Saludos.

    ResponderEliminar
  13. hola! tengo instalado el dvwa sobre win XP desde el localhost corre sin problemas pero trato de acceder desde otr maquina en la red LAN y al darle a la ip http://192.168.1/dvwa me manda un error de acceso prohibido! algien sabe como puedo habilitar el acceso?

    Saludos y gracias.

    ResponderEliminar
  14. Hola

    En la carpeta de instalación de DVWA hay un archivo ".htaccess". Abrelo con el blog de notas. Verás algo como esto:

    # Limit access to localhost
    <Limit GET POST PUT>
    order deny,allow
    deny from all
    allow from 127.0.0.1
    </Limit>

    Por seguridad la configuracion por defecto solo permite acceder a DVWA desde localhost. Para dejarlo accesible a todos solo comenta esas lineas"

    # Limit access to localhost
    #<Limit GET POST PUT>
    # order deny,allow
    # deny from all
    # allow from 127.0.0.1
    #</Limit>

    Aunque también podrías añadir directivas "allow" para las IPs que quieres permitir el acceso.

    Un saludo.

    ResponderEliminar