Y en esta conferencia, veremos otro método para explotar las vulnerabilidades de inclusión de archivos
locales y obtener un control total sobre el servidor de destino.
Entonces, en el video anterior, hemos visto cómo usar la variable de entorno nuestras variables de entorno.
Y en esta conferencia veremos cómo hacerlo en función de los registros, estos servidores tienen muchos archivos de registro
y, básicamente, en este momento podemos leer cualquier archivo en el servidor siempre que tengamos permiso para
leerlo.
Entonces, si podemos lograr escribir algo en cualquiera de estos archivos, podemos ejecutar código y
obtener control sobre nuestro objetivo.
Entonces, lo que debe hacer es intentar leer cualquiera de los archivos de registro y ver o pensar en una forma de interactuar con
estos archivos de registro para poder escribir cosas en él, por ejemplo, si los archivos de registro que está
leyendo o interactuando con nuestros archivos de registro de correo, entonces quizás pueda enviar un correo electrónico con un código y luego aparecerá
en el archivo de registro.
Y nuestro ejemplo vamos a utilizar el registro var de ese registro y este archivo contiene todos los intentos de
registro en el servidor de destino.
Así que hagámoslo y tendrás una mejor comprensión en este momento.
Ahora solo tengo el exploit básico y estoy tratando de mostrar que es la contraseña.
Entonces este es el archivo que usamos en nuestro exploit básico.
Solo voy a eliminar eso y voy a buscar un registro de alambre fuera del reloj.
Ahora, como puede ver, el archivo es legible y podemos leer los intentos de inicio de sesión en el servidor de destino.
Entonces, vamos a pensar que este archivo muestra todos los intentos de inicio de sesión.
Entonces, ¿por qué no intentar iniciar sesión y ver si el intento se mostrará aquí?
Entonces voy a hacer aquí.
Solo voy a intentar S-sh en el servidor.
Así que voy a usar S-sh ya que I Sage es simplemente un servicio de inicio de sesión remoto que utilizan los servidores web.
Casi todos los servidores web tienen eso instalado.
Así que vamos a tratar de hacer S-sh para que hagamos S-sh y luego vamos a poner el nombre de
usuario.
Y solo voy a poner un nombre de usuario aleatorio que probablemente ni siquiera exista.
Solo quiero ver si esta solicitud se registrará en el archivo de registro.
Entonces solo estoy.
SS Voy a S-sh y solo voy a poner un nombre de usuario como aleatorio y luego lo
haré y subiremos con la dirección IP que es 10 20 9:46 y estoy voy a entrar Ahora me está pidiendo una contraseña.
Obviamente, este nombre de usuario no existe de todos modos, así que también voy a poner una contraseña aleatoria.
Realmente no estoy tratando de hackear usando S-sh.
Literalmente solo estoy intentando iniciar sesión. Voy a Control-C ahora y quiero ver si esto se registrará
en este archivo.
Así que voy a enviar otra solicitud y buscaré mi nombre de usuario para que el nombre de usuario se llame al azar y
veré si eso se registró y puede ver
aquí que todavía hay un mouse y el archivo de registro.
Por lo tanto, se registró en el servidor que alguien intentó iniciar sesión con un nombre de usuario aleatorio y en realidad tiene
mi dirección IP.
Por lo tanto, también está registrada mi dirección IP.
Así que ahora podemos leer ese archivo y también podemos escribir en el archivo iniciando sesión con una cuenta existente.
Entonces, lo que voy a hacer ahora es intentar volver a iniciar sesión y, en lugar de poner un
nombre de usuario, pongo el nombre de usuario al azar.
De hecho, voy a poner el chaquetón de PH que siempre usamos para darme un shell inverso o una conexión
inversa en el servidor.
Ahora, de nuevo, puede usar cualquier código de página que desee en mi ejemplo.
Voy a usar un código que me dará un shell inverso en la computadora de destino.
Entonces, antes de ejecutar el código, voy a escuchar la parte y voy a hacer eso usando netcat como
siempre lo hacíamos.
Entonces iba a ser netcat E. V. LP y voy a hacer mi parte, que es 8
8 8 8 y ahora estamos escuchando conexiones e intentaré iniciar sesión nuevamente en el objetivo.
Y en este caso voy a poner mi Ph Veikko.
Entonces, el mismo código que usamos antes.
Entonces, mi nombre de usuario va a ser, voy a poner dos comillas y luego voy a poner mi
código, así que use y pase y luego le pasaremos el comando a los comandos de PH que queremos ejecutar.
Y ese comando va a usar comillas simples aquí.
Y luego mi comando será
netcat bin sh.
Luego voy a poner mi dirección IP que es 10 20 14 a 0 8 y luego voy
a poner la parte que estoy escuchando que es 8 8 8 8 con este método.
Solo obtendrá una oportunidad con este código porque si coloca el código Kura incorrectamente, todo
se romperá y el archivo ya no se mostrará porque tiene un error en
su código.
Entonces, lo que sugiero es que voy a mantener el paso porque es una función segura.
Y estoy seguro de que esto se ejecutará correctamente.
Solo necesito que olvidé poner un punto y coma aquí, así que voy a poner eso allí.
Así que estoy seguro de que este código funciona correctamente, pero tengo muchos inconvenientes aquí.
Tengo muchos espacios y muchas barras inclinadas que siempre tienen problemas cuando intentas pasarlos
entre los siguientes comandos y puedes intentar saltarte estos caracteres.
Pero lo que sugiero es que realmente cifre este uso y la base 64 y luego lo descifre en el otro extremo.
Así que te mostraré cómo hacerlo.
En primer lugar, voy a copiar este comando.
Así que este es el resultado de que queremos que la función pastoral se ejecute y la copie.
Voy a ir a mis
eructos y voy a ir a mi decodificador aquí.
Nunca hemos visto el decodificador, por lo que esta pestaña le permite codificar y decodificar texto a diferentes
tipos de codificación.
Así que voy a pegar lo que copié y lo voy a codificar como Bedu 64.
Entonces, este texto que el puerto IP de Netcast se ha convertido se convierte en este código cifrado.
Voy a copiar este código. Lo voy a sustituir aquí en mi comando.
Entonces, en lugar de ejecutarlo así en lugar de poner el texto, voy a poner el
código base 64 para asegurarme de que no haya caracteres especiales que interfieran con el comando con el Bash.
Entonces tengo eso copiado.
Ahora, si ejecuto esto de esta manera, tengo mi paso, que es una función de Peachtree y le
digo que ejecute este comando show.
Ahora, obviamente, si copia este texto y lo ejecuta, no se ejecutará nada porque solo es un truco.
Así que necesito decirle que este es el código base 64 y lo haré usando la función APHC llamada
decodificación base 64.
Así que voy a decirle que decodifique esto.
Esta pieza de texto
Y luego, una vez que decodifique, se ejecutó el paso.
Así que solo voy a escribirlo aquí.
Entonces será 64 decodificación y
esa es solo otra función de función ph y luego voy a poner los corchetes.
Así que voy a hacer esto un poco más grande para que podamos hablar más al respecto.
Y en realidad voy a copiar y escribir nuevamente para que hablemos un poco
más.
OKAY.
En primer lugar, en realidad estamos usando el nombre de usuario como nuestro código como el código que queremos inyectar porque, como vemos,
el nombre de usuario se ha mostrado en la página de registro, por lo que todo lo que coloquemos en el
nombre de usuario se ejecutará como voz código.
Entonces tenemos eso entre dos citas aquí entre esta y esta cita.
Ahora tenemos nuestra página porque siempre usamos y siempre usamos la función passthrough para ejecutar comandos de
Unix en el servidor de destino.
Así que lo mantenemos exactamente igual y le estamos diciendo que ejecute este texto.
Pero antes de ejecutar este texto, quiero que lo decodifique en base 64.
Así que hemos pasado por decodificar el siguiente código.
Y este es el código.
Así que este es el comando del comando net cat que siempre usamos. Lo decodificamos en base a la base 64.
Y luego le estamos diciendo que lo ejecute utilizando la función de transferencia para ejecutarlo como un comando bash.
Así que voy a buscar otra antes.
Y eso es todo, pedirme una contraseña porque cree que este es realmente un nombre de usuario, por lo que estamos
inyectando todo como un nombre de usuario.
Así que voy a poner cualquier contraseña al azar aquí y allá.
Ahora esto debería almacenarse ahora en los registros.
Por lo tanto, este código debería haberse inyectado en ese registro.
Así que vamos a volver ahora a nuestro navegador y puedes ver eso en todo lo que escuchas aquí.
Así que voy a presionar enter aquí en el navegador.
Y como puede ver, tenemos una conexión desde nuestro sitio web de destino y si lo hacemos yo. RE. verá eso en el sitio
web de destino con el nombre de usuario o el grupo de usuarios de David.
Y puedo ejecutar comandos o hacer lo que quiera en el servidor de destino.
Este es solo otro método para explotar las vulnerabilidades de inclusión de archivos locales para obtener un espectáculo en la
computadora de destino.
Ahora, de nuevo, esto es solo una idea y puede probar estas ideas con diferentes tipos de archivos de registro para que
pueda probarlo sin el registro.
Puede probarlo con cualquier otro tipo de archivos de registro, pero debe pensarlo.
Debe pensar cómo podría inyectar código en ese archivo de registro.
Entonces, por ejemplo, como dije si es un servidor de correo y luego intente enviar un correo electrónico si está fuera
del registro como lo hemos hecho en este ejemplo actual, intente iniciar sesión usando S-sh y vea si puede inyectar código
y si ese código se ejecutará en la computadora de destino.