comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Como ver quien está usando nuestro Wi-Fi (con python)

  • 8 Respuestas
  • 3168 Vistas

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado porni

  • *
  • Underc0der
  • Mensajes: 8
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« en: Enero 07, 2018, 10:33:44 pm »
Buenas tardes , ayer me estaba funcionando muy lento internet así que decidí ver que dispositivos estaban conectados. Tenía el Netmap descargado pero no lo encontraba , asi que armé mi propio script en python :)

PLOT TWIST: no había ningún intruso conectado a mi Wi-Fi, es lento porque es mas malo que la realidad xd




Código Completo:
Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
import os,subprocess

def main():
miDireccion = raw_input("ip privada>> ")

for p in range(0,256):
ip = '192.168.1.'+str(p)

saver = open('temp.txt','w')
subprocess.call(['ping','-n','1',ip],stdout=saver)
saver.close()

leerSaver = open('temp.txt','r')
linea = leerSaver.readlines()

estado = linea[2]

wrong = "Reply from "+ miDireccion +": Destination host unreachable.\n"

if estado == wrong:
pass
else:
data = "[+] El host " + ip + " se encuentra activo.\n"
dataSaver = open('hostActivos.txt','a')
dataSaver.write(data)
dataSaver.close()

print data

main()

CODIGO EXPLICADO:

1)Importamos librerias:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
import os,subprocess
os nos va a servir para enviar un ping a una dirección de ip
subprocess nos sirve para ejecutar un comando en la consola, y atrapar su respuesta para poder analizarla


2)Ahora tenemos que guardar la ip privada de nuestro equipo, para que se pueda evaluar la respuesta que produce el ping (en la consola de comandos(cmd) la encontramos con el comando ipconfig)
Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
miDireccion = raw_input("direccion: ")
3) Con un bucle for vamos a recorrer desde la direccion 192.168.1.0 a la 192.168.1.256
Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
for p in range(0,256):
    ip = '192.168.1.'+str(p)

4) Miren esta porción de código
Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
saver = open('temp.txt','w')
subprocess.call(['ping','-n','1',ip],stdout=saver)
saver.close()

leerSaver = open('temp.txt','r')
linea = leerSaver.readlines()
estado = linea[2]

Acá abrimos un archivo para guardar la respuesta del ping que le vamos a hacer a la direccion de ip con subprocess.call. Luego vamos a leer el archivo, pero la linea que nos interesa es la numero 2, porque la vamos a comparar con la respuesta que dan los host activos y los inactivos

4) Veamos que "wrong" es la respuesta que recibimos cuando un host esta inactivo, entonces la comparamos con "estado", y si está activo el host, nos lo muestra en pantalla y lo guarda en un archivo de texto (nos puede servir para controlar cuantos dispositivos están conectados en distintos momentos del dia, etc)

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
wrong = "Reply from "+ miDireccion +": Destination host unreachable.\n"

if estado == wrong:
pass
else:
    data = "[+] El host " + ip + " se encuentra activo.\n"
    dataSaver = open('hostActivos.txt','a')
    dataSaver.write(data)
    dataSaver.close()
    print data



Esta es una imagen con los resultados del scaneo:
« Última modificación: Enero 29, 2018, 07:52:32 pm por porni »

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5380
  • Actividad:
    75%
  • Reputación 31
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #1 en: Enero 07, 2018, 10:42:14 pm »
Genial bro! Tendrás screenshots con los resultados?

Saludos,
ANTRAX


Desconectado porni

  • *
  • Underc0der
  • Mensajes: 8
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #2 en: Enero 29, 2018, 07:44:04 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Genial bro! Tendrás screenshots con los resultados?

Saludos,
ANTRAX

Amigo estaba de viaje sin la pc, ahora subo unos screenshot ;) !

Desconectado iGreentick

  • *
  • Underc0der
  • Mensajes: 29
  • Actividad:
    0%
  • Reputación -4
    • Ver Perfil
« Respuesta #3 en: Enero 30, 2018, 04:13:13 pm »
Yo hace un tiempo me hice un mini-script parecido.
Recuerdo que le añadi alguna opción más, como buscar las macs con un tracert, buscar si alguno tiene mac doblada, (así, aparte de scannear los activos, puedes detectar alguna incidencia) etc..
Tambien, creo recordar que tambien le implementé un pequeño trocito de código que llamase a un ataque arpspoof unidireccional para romperle la gateway y dejar a un dispositivo sin acceso a internet...

¡Algunas ideas por si se te queda pequeño el script! Saludos. Porcierto, buen trabajo! ^^
8Noobs <- Más que una comunidad, una familia. (No tienes permisos para ver links. Registrate o Entra con tu cuenta)

La percepción, es solo una percepción

Desconectado magodiesan

  • *
  • Underc0der
  • Mensajes: 40
  • Actividad:
    0%
  • Reputación 0
  • Diesan Romero
    • Ver Perfil
    • Diesan Romero
    • Email
  • Twitter: @magodiesan
« Respuesta #4 en: Marzo 18, 2018, 01:22:42 am »
En la cuarta parte de la explicación del código, en la segunda línea aparece un método del objeto subproccess que se llama .call(), veo que tiene dos parámetros, un array y creo que una variable llamda stdout. No entiendo muy bien ambos parámetros, tampoco entiendo que es lo que contiene el array. Yo cada vez que hago un ping lo hago de la siguiente manera, lógicamente dependiendo de :

Código: Bash
  1. ping laip

y listo.


Desconectado porni

  • *
  • Underc0der
  • Mensajes: 8
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #5 en: Abril 02, 2018, 10:54:29 am »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
En la cuarta parte de la explicación del código, en la segunda línea aparece un método del objeto subproccess que se llama .call(), veo que tiene dos parámetros, un array y creo que una variable llamda stdout. No entiendo muy bien ambos parámetros, tampoco entiendo que es lo que contiene el array. Yo cada vez que hago un ping lo hago de la siguiente manera, lógicamente dependiendo de :

Código: Bash
  1. ping laip

y listo.

Buenas, el primer parametro de .call() indica los comandos que le paso a la consola, y en el segundo parametro (luego del stdout) indico la variable a la cual le asigno la respuesta de la consola. Saludos

Desconectado kmogu

  • *
  • Underc0der
  • Mensajes: 1
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #6 en: Agosto 18, 2018, 08:47:46 am »
Esta muy bien el script pero debes tener en cuenta que no todos los equipos responden a ping.

la mejor forma de revisar la actividad de tu red es comprobar las asignaciones de IP a traves del DHCP de tu router.

luego ademas tienes opciones extra de seguridad como activar el mac filter, desactivar el emparejado por WPS, colocar horarios.... y un sin fin de cosas mas.
(lo de colocar horarios dependera del firmware de tu router pero hoy en dia casi todos tienen esta opcion.)

Desconectado Byakko

  • *
  • Colaborador
  • *
  • Mensajes: 76
  • Actividad:
    78.33%
  • Reputación 0
    • Ver Perfil
  • Skype: Daligon
« Respuesta #7 en: Agosto 31, 2018, 04:15:19 pm »
jaja muy buena tu idea de hacerlo con python.

gracias por la explicacion de que es cada parte del codigo. como para que nosotros lo podamos comprender.
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado hielasangre

  • *
  • Underc0der
  • Mensajes: 124
  • Actividad:
    5%
  • Reputación 0
    • Ver Perfil
« Respuesta #8 en: Agosto 31, 2018, 10:56:25 pm »
Porque no mejor?

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
sudo nast -m -i eth0 (si estamos conectados por cable directos al router)
sudo nast -m -i wlan0 (si nos conectamos por WI-FI a la red)

 

¿Te gustó el post? COMPARTILO!



[UnderTips] Funciones como parámetro de entrada en otras funciones

Iniciado por DeBobiPro

Respuestas: 0
Vistas: 1163
Último mensaje Septiembre 09, 2016, 12:27:16 pm
por DeBobiPro
como con cx_Freeze exportar tkinter a exe con algunas librerias usadas

Iniciado por royer14

Respuestas: 2
Vistas: 879
Último mensaje Noviembre 08, 2017, 07:58:37 pm
por royer14
[Código] Yardas a metros - Metros a yardas [Python]

Iniciado por LucaSthefano

Respuestas: 0
Vistas: 1338
Último mensaje Mayo 29, 2011, 01:27:34 am
por LucaSthefano
Python phpmyadmin "BruteForce"

Iniciado por linkgl

Respuestas: 2
Vistas: 2437
Último mensaje Agosto 19, 2011, 12:14:37 pm
por linkgl
Python Trojan - By "bLiNdFiR3"

Iniciado por d33k40

Respuestas: 1
Vistas: 1970
Último mensaje Abril 03, 2010, 11:01:59 pm
por Dharok