
Escáner de red en Golang con descubrimiento ARP y parser propio
chmod +x install.sh
./install.sh [como root]
[ARGUMENTOS]
-ar CIDR: Descubrimiento ARP
-ar CIDR -s: Escanear puertos en todos los hosts descubiertos
-ap: Escanear los 65535 puertos
-pr MINPUERTO MAXPUERTO: Definir rango de puertos a escanear
-1000: Escanear los 1000 puertos principales (como nmap)
-t: Establecer tiempo de espera (en milisegundos)
[EJEMPLOS]
go run scannerport.go -ap <IP>: Escaneo TCP de todos los puertos
go run scannerport.go <IP> Escaneo por defecto de puertos 0-1024
go run scannerport.go -ar 192.168.0.1/24 <IP>: Escaneo ARP Ping de toda la subred local
go run scannerport.go <IP> -pr <MINPUERTO> <MAXPUERTO>
go run scannerport.go -ar 192.168.1.1/24 -s
go run scannerport.go -1000 192.168.1.1
go run scannerport.go -t 100 192.168.1.1
Ejemplo: go run scannerport.go -ar 192.168.1.1/24 (enviará un ping ARP a cada host de la red para descubrir si está activo)
Ejemplo: go run scannerport.go google.com -1000 (Resolverá google.com + Escaneará los 1000 puertos principales)
Ejemplo: go run scannerport.go 192.168.0.1 -pr 100 3000 (escaneará todos los puertos en este rango; debes poner primero el puerto menor)
Ir al archivo ports.go
func Ports() map[int]string {
//Based in well known ports
ports := map[int]string{
1: "echo",
9: "WOL",
20: "ftp data",
21: "ftp control",
22: "ssh",
23: "telnet",
25: "smtp",
43: "whois",
49: "TACACS",
53: "DNS",
67: "BOOTP",
69: "TFTP",
70: "Gopher",
71: "NETRJS",
80: "http",
81: "TorPark",
82: "TorPark",
88: "Kerberos",
110: "POP3",
115: "sFTP",
143: "imap",
220: "imap3",
123: "NTP",
135: "RPC",
443: "https",
445: "Microsoft-ds, Samba",
465: "SMTP over TLS",
514: "Syslog",
520: "RIP",
521: "RIPng",
540: "UUCP",
543: "klogin",
544: "kshell",
587: "submission",
993: "IMAP over TLS",
995: "POP3 over TLS",
1433: "Microsoft SQL Server",
3306: "MySQL",
3389: "rdp",
5432: "postgres",
6667: "irc",
25565: "minecraft server",
}
return ports
Solo añade el número de puerto y el nombre del servicio Ejemplo: Añadir git
9418: "git",
Hecho por @luijait ¡Gracias a @ajaniramon por su ayuda en este proyecto!