¿Cómo puedo ver una lista de todas las máquinas que están disponibles en la LAN de la que formo parte?
Respuesta aceptada:
¿Cuánto sabe sobre la LAN en cuestión? Asumo que no sabes nada solo enchufado el cable o conectado a wifi.
- Intente solicitar una dirección IP con DHCP. ¿Tienes uno? Entonces ya sabe algunas cosas:la IP de la puerta de enlace, la IP del servidor DHCP, la máscara de subred y quizás los servidores DNS.
- Si no obtiene uno, no hay un servidor DHCP o la red está filtrada por MAC.
- De cualquier manera, comience a capturar paquetes con wireshark. Si tiene una conexión inalámbrica o está conectado a un concentrador, es fácil. Si está conectado a un conmutador, puede intentar la inundación de MAC para volver a cambiarlo al "modo concentrador", pero un conmutador más inteligente simplemente desactivará su puerto. Si quieres probarlo de todos modos, ethercap puede hacerlo por ti. (O macchanger y un script de shell 🙂)
- Mirando los paquetes puede encontrar direcciones IP, pero lo más importante es que puede adivinar los parámetros de la red. Si sospecha que el filtrado MAC cambia su dirección MAC a una de las observadas después de que se vaya (no envía nada por un tiempo).
- Cuando tenga una buena idea sobre la configuración de la red (máscara de red, puerta de enlace, etc.), use nmap para escanear. Nmap puede hacer mucho más que
-sP
en caso de que algunos hosts no respondan al ping (consulte la documentación). Es importante que nmap solo funcione si la configuración de red y las rutas son correctas. - Es posible que pueda encontrar incluso más hosts con el análisis inactivo de nmap.
A algunos (¿la mayoría?) administradores de sistemas no les gustan algunos de los métodos anteriores, así que asegúrese de que esté permitido (por ejemplo, es su red). También tenga en cuenta que su propio firewall puede evitar algunos de estos métodos (incluso obtener una IP con DHCP), así que primero verifique sus reglas.
Nmap
Aquí se explica cómo hacer un descubrimiento básico de host con nmap. Como dije, la configuración de su red debería ser correcta cuando intente esto. Digamos que es 192.168.0.50 y está en una subred /24. Su dirección MAC es algo que puede conectarse, etc. Me gusta tener Wireshark ejecutándose para ver lo que estoy haciendo.
Primero, me gusta probar el escaneo de lista, que solo intenta resolver los registros PTR en DNS para las direcciones IP especificadas. No envía nada a los hosts, por lo que no hay garantía de que esté realmente conectado o encendido, pero hay una buena posibilidad. Este modo obviamente necesita un servidor DNS que esté dispuesto a hablar contigo.
nmap -vvv -sn -sL 192.168.1.0/16
Esto puede no encontrar nada o puede indicarle que todas las direcciones IP están activas.
Relacionado:¿Enviar un correo electrónico escrito en markdown usando mutt?
Entonces suelo optar por el escaneo ARP. Envía solicitudes ARP (las ve como "Who has <target IP>? Tell <your IP>"
en el tiburón de alambre). Esto es bastante confiable ya que nadie filtra o falsifica ARP. La principal desventaja es que solo funciona en su subred.
nmap -vvv -sn -PR 192.168.1.0/24
Si desea escanear algo detrás de enrutadores o firewalls, use escaneos SYN y ACK. SYN inicia una conexión TCP y recibe un RST o un SYNACK como respuesta. De cualquier manera, el anfitrión está activo. Es posible que se prohíba la comunicación ICMP o algo así si hay un firewall. La mayoría de las veces, si un firewall filtra sus paquetes, no obtendrá nada. Algunos tipos de cortafuegos solo filtran los paquetes TCP SYN y dejan pasar todos los demás paquetes TCP. Esta es la razón por la cual el escaneo ACK es útil. Obtendrá RST en respuesta si el host está activo. Como no sabe qué cortafuegos está instalado, intente con ambos.
nmap -vvv -sn -PS 10.1.2.0/24
nmap -vvv -sn -PA 10.1.2.0/24
Luego, por supuesto, puede usar los escaneos basados en ICMP con -PE -PP -PM.
Otro método interesante es -PO con un número de protocolo inexistente. A menudo, solo se consideran TCP y UDP en los firewalls y nadie prueba lo que sucede cuando prueba algún protocolo desconocido. Obtiene un protocolo ICMP inalcanzable si el host está activo.
nmap -vvv -sn -PO160 10.1.2.0/24
También puede decirle a nmap que omita el descubrimiento de host (-Pn) y realice un escaneo de puertos en cada host. Esto es muy lento, pero es posible que encuentre otros hosts que el descubrimiento de hosts no detectó por algún motivo.