En esta ocasión continuaremos con nuestro ataque anterior, así que lo que vamos a hacer es poner un
poco en orden las cosas.
Estoy acá.
Voy a cerrar esto otro de acá y voy a entrar a mi directorio de Blueprint y desde este lado, una vez
más voy a ser Serch y vamos a buscarlo de e-commerce.
Pero estoy acá y.
Borró este guión, borró también.
Ahora esto lo voy a hacer para enseñarles otro de los usos que le podemos dar a Serge Toit y van a ver
qué interesante que voy a decir Serge Plait menos M Y ahora voy a copiar esto lo hago por acá y digo
enter.
No sé como pueden ver.
Dice que el exploit ha sido copiado hacia el directorio en el que me encuentro y si hacemos un L.S.
Podemos ver que aquí está mi exploit y también tengo el escaneo que hice con In-App.
Ahora lo que vamos hacer es ver qué propiedades tiene esto para ver si lo podemos editar y si, como
pueden ver, tengo permiso de ejecución, de escritura y de lectura.
Entonces vamos a abrir esto con una aplicación que me gusta mucho, que es Kiedis.
Le recomiendo que le instalen.
Si no la tienen, simplemente hacen sudo, get to edit y la instala.
Entonces yo por acá voy a decir Yedioth y el nombre, el exploit y este signo de acá para poder seguir
utilizando mi terminal.
Entonces por acá vamos a editar el exploit y aquí viene la parte interesante, donde le he comentado
ya anteriormente de que no es necesario ser un experto desarrollador, pero sí es necesario saber leer
código por acá.
Vamos a quitar todo esto de arriba que ya no nos interesa.
Para tener esto un poco más limpio y ahora lo primero que vamos a editar es la BAYS o RLM, porque yo
sé que tengo https y Chinto editar esto el DOCa Ojos por la AIPE en mi máquina que está de acá a copiar
y vamos a pegar por acá.
De igual modo, necesito llevarme esto hacia la parte de abajo.
Vamos a evitar esto.
No se copio todo, vuelvo a escribir https 2.los Caprica que más necesitamos editar.
Yo también necesito editar la parte donde ingresar mi payload PHP Y qué tipo de pedido me interesa ingresar
acá?
Ya lo van a ver.
Esa es una técnica muy interesante.
Mi aplicación quizás directamente no es vulnerable a L.F.
Pero yo la voy a convertir vulnerable por este lado de acá, como yo soy capaz de ejecutar código de
manera remota.
Yo voy a hacer que el servidor descargue un archivo que yo controlo y este archivo me va a permitir
realizar inyección de comandos.
Entonces vean qué interesante.
Yo voy a obligar al servidor a descargar un archivo y he ahí la LF que voy a estar realizando.
Luego yo voy a hacer que ese archivo que voy a subir me permita inyección de comandos.
Entonces creo que ahora está claro lo que vamos a estar haciendo.
Por tanto, es hora de ir manos a la obra.
Acá vamos a personalizar esto.
Iba mucho ocupar algo y vamos a ocupar una pequeña aplicación que tenemos en Windows para realizar descargas
y esto se llama ser útil y para descargar con esto nosotros hacemos serch útil menos de la caché.
Luego decimos menos F y aquí vamos a pasar la dirección de donde va a realizar la descarga, entonces
va a mandar a descargar algo de mi dirección IP, la voy a revisar por acá rápidamente, solo voy a
decir IPEA y tengo mi IP.
Entonces ahora.
La pegó por acá.
Voy a mandar a descargar un archivo que de momento no existe.
Voy a decir que descargue Hola!
Y una vez que lo descargue quiero que a ese archivo que la descargó le llame también.
Entonces aquí tengo mi salud y vamos a guardarlo, guardamos.
Casi lo cierro, pero ya me acabo de fijar que otra cosa que necesito editar es esto.
Recordemos que estoy en 2.3.4 en la parte de acá y yo tengo mi aplicación web, era hasta .4.
Entonces también debo editar esto.
Ahora, si guardamos los cambios y vamos a intentar ejecutar este código, entonces por acá vamos a
hacer lo siguiente.
Por un lado voy a montar mi 3 m http server para ver si el intento de descarga se realizó, pero esto
lo vamos a hacer desde mi carpeta de Blueprint.
Entonces copio Estoy acá y voy a borrar o ingresar a Blueprint.
Y ahora si ejecutamos esto?
Y por acá intentara ejecutar el script.
Así que voy a decir Goitom y vamos a ejecutarlo.
A ver qué pasa.
Ocurrió un pequeño problema.
Podríamos probar ahora con Peyton?
Saber qué pasa y veamos que tengo un gran error.
Y en el error que obtengo?
Lo primero que logró localizar es ese SL.
Seguramente estoy teniendo problemas con el certificado.
Como pueden ver Certificate, pero estoy failed.
Al parecer falló la verificación del certificado.
Entonces vamos a volver a editar nuestro exploit y no vamos a ocupar el https.
Vean que estas son las cosas que tienen que ir aprendiendo ahora.
Qué pasa si yo dejo http?
Yo sé que no hay nada en el puerto 80, pero recordemos que en el escaneo de enema vemos que el puerto
80 80 está abierto.
Podríamos ver si en la misma página está alojada en ese puerto.
Eso lo podemos verificar rápidamente.
Vamos a ver.
Y en efecto, puerto 80 80.
También tengo esta página.
Entonces, poco a poco y ligando toda la información que he obtenido y también voy intentando, porque
no siempre la primera que intenten la envasa el lector, pueden ver cómo voy agotando los recursos de
poquito en poquito.
Entonces ahora vamos a editar esto de acá también, porque debo indicar que la conexión será el puerto
80 80.
Guardamos y volvemos a intentar la ejecución solamente Cospeito.
Sigue habiendo error entonces?
Es y excelente como pueden ver a Funcionaba.
Ahora también me gustaría mostrarles una manera de saber si voy a utilizar Payton o Payton III.
Y es que la función me puede dar una gran pista.
Si yo estoy en Payton III, seguramente veré algo como Pruitt y luego unos parentesis.
Y qué pasa cuando se está Payton, cuando se está en Payton?
No se suelen utilizar paréntesis, una característica que puedes examinar a la hora de ver el código,
para así saber si en esa parte de acá vas a utilizar Pipe o Payton.
Y si eso no es suficiente, entonces te sugiero que pruebes con alguno de los dos.
Eventualmente vas a terminar acertando con el correcto.
De todas formas, solamente son dos opciones las que tienes.
Entonces, ahora que ejecutar con éxito mi primer ataque, lo que hacer es copiar esto y abrirlo en
el navegador.
Recuerden que las instrucciones que tenía al leer el exploit.
Entonces ahora vamos a hacer esto y podemos ver que tenemos un error bastante interesante.
Dice que System ha sido deshabilitado por razones de seguridad.
Entonces el administrador no ha sido tan flojo porque ha previsto un ataque de este tipo, pero existen.
No es la única manera de ejecutar códigos en PHP.
Existe otra manera y esa es utilizando scheduled guión bajo EXEC.
Vamos a guardar los cambios y vamos a volver a cargar.
Tengo error porque no borré esto que había escrito antes.
Ahora, si se fijan, terminan recibiendo un recordatorio de que debo abrir el link para que sea ejecutado
mi código que copiamos y nuevamente vamos a intentar.
Examinemos nuestro servidor por acá para ver qué ocurre y excelente.
La ejecución de código ha sido todo un éxito, como pueden ver acá.
Intentó hacer un get al archivo?
Hola!
Y como no hay ningún archivo.
Hola, aquí en mi carpeta pueden ver que recibí un 404 porque ese archivo no existe, no está reflejado
por acá porque no estoy visitando mi servidor local, pero sí que el 404 de este lado.
Entonces ahora mejoramos un poco el exploit.
Nosotros vamos a hacer lo siguiente en primer lugar, voy a guardar esto dentro de una variable.
Vamos a llamar esto iguala.
Voy a dar un poco más y ahora por acá voy a decir lo siguiente bailout más igual.
Y vamos a añadir esto.
Voy a imprimir lo que me devuelve la ejecución de este código, porque si yo ejecuto este código y supongamos
que hubo un error en la ejecución, cómo puedo yo saberlo?
Desde el navegador lo voy a saber con esto que estoy realizando acá.
Entonces vamos a decir hehco a mi variable que acabo de declarar de este lado, así que ahora por acá
cierro.
Coma Voy a guardar y vamos a ejecutar nuevamente para ver si recibo un mensaje de información aquí en
el navegador.
Entonces hasta ahora vamos a decir esto nuevamente.
Copiamos esto y lo vamos a llevar hacia acá.
Como pueden ver ahora, si tengo algo de información acerca del comando que ejecuté en la parte de acá,
no me aparecía nada acerca del comando Serch ni útil, y ahora sí me aparece y dice que el comando falló.
Seguramente falló porque en este lado vemos que el archivo a descargar no fue encontrado.
Entonces ahora vamos a continuar con la personalización de mi exploit.
Voy a mandar a descargar sin mandar a descargar exploit PHP.
Ya luego veremos que va a ser esto de exploit PHP.
Por acá también va a ser exploit PHP.
Guardamos ahora aquí y yo voy a entrar a Blueprint y vamos a crear el archivo exploit PHP.
Entonces acaece, lavábamos.
Vamos a decir lo siguiente voy a ingresar el siguiente código PHP, es decir, PHP, ecko y vamos a
ocupar lo mismo que ya vimos antes.
Hehco para ver qué es lo que me devuelve la ejecución del código y qué código PHP voy a ejecutar.
Voy a hacer lo siguiente quiero que me recoja en la web R.L.
Lo que va a estar dentro de un parámetro, entonces eso lo voy a hacer de la siguiente forma vea signo
de dólar, ni un bajo.
Ahora ocupo estos símbolos y por acá voy a ocupar estas comillas dobles.
Y cuál va a ser el parámetro que va a estar en la Borrel?
Va a ser CMD.
Entonces aquí estoy diciendo quiero que ejecutes lo que se esté guardando dentro del parámetro CMD y
me imprimación lo que ocurre con esa ejecución.
Lo que te devuelve la ejecución de código.
Entonces ahora por aquí vamos a cerrar la orden con puntico ma guardamos y vamos a cerrar también.
Ahora que tenemos esto, vamos a volver a ejecutar nuestro exploit.
Vamos a copiar y vamos a pegar por acá, por acá tengo los resultados y se que el comando Ser útil se
ejecutó de manera exitosa, entonces ahora no es el error de antes, porque en esta ocasión sí encontré
el archivo que iba a descargar.
Lo pueden ver reflejado en este lado.
Hizo un guests al exploit punto PHP con un mensaje de 200.
Eso quiere decir un OK.
Todo funcionó a la perfección.
Ahora, en dónde se encuentra mi archivo que se acaba de descargar?
Yo acabo de mandar a realizar la descarga desde este lugar.
El archivo con confíar punto PHP fue el que se encargó de realizar la descarga.
Entonces esta descarga debería estar en el directorio que vemos por acá.
Vamos a borrar esto para ver si podemos enumerar lo que hay en el directorio y si se puede por acá tenemos
el exploit punto PHP.
Hacemos clic acá.
Ahora vamos a ver si funciona el ataque de L.F.
Y entonces signo de interrogación.
Luego CMD iguala y como estamos en Windows, si queremos listar archivos dentro del directorio actual
en el servidor necesitaríamos utilizar dir..
Presionamos Enter y como pueden ver enumerado y como pueden ver, he logrado enumerar exitosamente mis
archivos.
Por acá tengo apliqué un punto PHP, configure PHP, exploit cunto, php.
Eran las cosas que yo veía cuando borré esto y acá se fijan.
Esto que vemos aquí es lo que me acaba de volver.
De este lado podemos ejecutar el comando Guama para ver quiénes somos ahorita con esta ejecución de
código y somos NT Authority, insisten.
Excelente.
Eso quiere decir que actualmente somos los dueños del servidor desde este lugar, pero no nos vamos
a conformar con eso.
Estar ejecutando comandos desde acá no es muy cómodo.
Entonces, en la próxima clase nosotros estaremos viendo cómo obtener un H'El para trabajar desde acá
en vez de estar trabajando de manera incómoda en este lugar, así que lo espero en la próxima.