Instructor: Hasta
ahora, aprendimos cómo encontrar cualquier subdominio que exista
dentro de nuestro sitio web objetivo y que
no haya sido incluido en la lista.
En la conferencia de
hoy, veremos cómo podemos encontrar archivos y directorios que estén
almacenados en nuestra computadora de destino o en
nuestro sitio web de destino.
Nuevamente, esto podría ser
útil porque estos archivos podrían contener contraseñas.
Podrían contener información de configuración,
o podrían contener información sobre estos
servidores reales, lo que
nos ayudará a explotar aún más nuestro objetivo.
Permítanme mostrarles primero lo que quiero decir
con archivos y directorios, solo para mostrarles la estructura de
directorios en un servidor web.
Así que aquí tengo mi máquina Metasploitable.
Y como sabemos, generalmente el material del servidor web
se almacena en var / www.
Y si hago un ls, ya verás, o haré un ls
-la solo para que sea más agradable.
Verá que tenemos varios archivos y directorios.
Y podemos ver que
tenemos un directorio llamado mutillidae.
Mutillidae es una aplicación web que está diseñada
para ser pirateada, al
igual que metasploitable,
está diseñada para que tenga una serie de exploits, para que
podamos aprender cómo hackear en función de ella.
Entonces podemos ver que
está instalado en un directorio llamado mutillidae.
Ahora, si voy aquí a mi
dirección IP ahora, esta es la dirección IP de la máquina metasploitable.
Entonces, si hago un ifconfig aquí, verás
que son 10. 20) 14) 204
Así que estoy allí, y puedes ver que tienen un
acceso fácil para mí para mutillidae,
si hago clic en él, mira la URL aquí, entonces es / mutillidae.
Eso significa que estoy dentro del directorio mutillidae, por lo
que cada vez que ves una
barra diagonal, eso generalmente significa que estás dentro de un directorio.
Entonces volvamos aquí, hagamos un ls,
y si hago cd mutillidae, y voy a hacer un ls.
Y verá que tengo una gran cantidad de archivos,
una gran cantidad de archivos aquí.
Digamos, por ejemplo, que quería abrir
uno de estos archivos y tenemos un índice. php.
Si lo hago indice. php, entonces
este es nuestro archivo actual, se llama índice. php.
Entonces, lo que aprendemos de esto es que
mutillidae es solo un directorio dentro de mi ruta web.
Entonces, en este momento en el dispositivo metasploitable, estoy
adentro, déjenme escribirlo aquí para ustedes, así que estoy
en var / www mutillidae.
y luego el archivo al que estoy accediendo es index. php.
Bien, espero que esto esté claro ahora,
así que estoy en este directorio, en este directorio y estoy accediendo a
un archivo llamado índice. php.
Entonces, si solo hago un pwd aquí, verás que
estoy en var / www / mutillidae.
La dirección IP se esconde un poco donde está su ruta WWW, por lo
que oculta la var / www, y
luego todo lo que se muestra aquí se mostrará
después de la dirección IP.
Entonces, lo que estamos buscando encontrar hoy
es todos los directorios y los archivos que no podemos ver.
Entonces, a través de estos enlaces, podremos acceder a
diferentes tipos y páginas diferentes, esto es lo
mismo con cualquier otro sitio web.
Pero siempre hay archivos y directorios ocultos
que nunca se ven.
Así que veremos cómo podemos obtener las URL de estos archivos, acceder
a ellos y leer la información que contiene.
Para hacer eso, vamos a usar una herramienta
llamada dirb, y para ver cómo usar esa herramienta, vamos a hacer, man
dirb, para ver todas las opciones asociadas con esa herramienta.
Entonces, puede ver que para usar la herramienta,
simplemente escriba dirb, la URL de su destino, y luego ponga
una lista de palabras.
Entonces, la forma en que esto
funciona es, funciona en base a un ataque de fuerza bruta.
Y solo usa una lista de nombres de palabras, y envía solicitudes con
estos nombres, y cada vez que realmente
encuentra algo, nos dice que, "Oh, encontré
un archivo con este nombre. "Por lo tanto,
solo podrá encontrar nombres y directorios basados en
la lista de palabras que proporcione.
Ahora, puede crear una lista de palabras usando crunch,
o puede usar listas de palabras que vienen dentro de dirb.
Las opciones aquí le permiten configurar cómo
va a funcionar la herramienta,
para que pueda cambiar las cosas de la manera que desee.
Por ejemplo, puede deshabilitar la recursividad de la herramienta, por lo
que solo se ejecuta en un directorio
en lugar de probar varios directorios.
Puede hacer que le pregunte si
desea acceder a un directorio o no, en lugar de acceder
automáticamente a los directorios y tratar de encontrar archivos
dentro de estos directorios porque esto podría ser
exhaustivo si su objetivo es
un gran sitio web, puede haber muchos de directorios
y luego la herramienta
intentará acceder a todos ellos, y buscar archivos
dentro de todos ellos, para que
pueda ver qué tan grande podría ser el árbol.
También puede configurarlo para que use un nombre de usuario y
una contraseña si los sitios web de destino usan algún tipo de autenticación.
Y podemos usar v para la salida detallada,
y también puede usar o para enviar los resultados a un archivo.
Déjame mostrarte un ejemplo muy simple de ello.
Solo voy a ejecutar dirb en nuestro objetivo, que
es 10. 20) 14) 204, y eso debería ser http.
Porque recuerda, estamos apuntando a un sitio web, no
a una dirección IP.
Luego pondré el directorio
en el que quiero encontrar archivos y directorios.
No quiero que acceda a nada dentro de otro
porque podemos ver que
hay una serie de scripts instalados en
este servidor web, por lo que tenemos este script y también
tenemos phpMyAdmin, y tenemos TikiWiki.
Por lo tanto, no queremos que acceda a
todos ellos, solo queremos que esté trabajando en mutillidae en este ejemplo.
Por eso solo estoy usando
esta URL, y luego comenzará a encontrar
URL y archivos dentro de esta aplicación web en particular.
Entonces presionaré Enter, y dejaremos que funcione.
Así que esto va a usar un archivo de lista de palabras.
Y está usando un pequeño archivo de lista de palabras predeterminado que
se almacena aquí.
Entonces es un usuario / share / dirb / wordlists / common. txt, puede echar un vistazo a
este directorio y ver
si hay otras listas de palabras que
le gustaría
usar, y puede usarlas solo colocando la ruta completa a la
lista de palabras después del comando.
Entonces, en lugar de la forma en que escribí
el comando, lo escribiría así, y luego indicaría dónde está su lista
de palabras, por ejemplo, digamos que si
es raíz, la declaró como raíz
/ lista de palabras. txt, o lo que sea.
Pero en este momento, está usando el predeterminado,
que se almacena en este directorio en user / share
/ dirb / wordlist, y está usando el que
se llama común. TXT.