0Pricing
Cyber Security Academy · Lezione

Scripting per l'enumerazione delle reti

Automatizzate la ricognizione con gli script Nmap NSE e scanner Python personalizzati.

Scripting per l'enumerazione delle reti è una lezione Cyber Security Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cyber Security Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cyber Security Academy include 4 lezioni in totale.

Perché automatizzare la ricognizione?

La scansione manuale è lenta e soggetta a errori nelle reti di grandi dimensioni. Gli script integrano Nmap, Netcat e altri strumenti in pipeline ripetibili che analizzano l'output e inviano i risultati a ulteriori analisi.

Panoramica degli script NSE di Nmap

Il Nmap Scripting Engine (NSE) esegue script Lua sui servizi individuati. Gli script sono organizzati in categorie: auth, brute, default, discovery, exploit, safe e vuln.

# Run default safe scripts
nmap -sC 192.168.1.100

# List all scripts
ls /usr/share/nmap/scripts/ | grep http

# Run specific script
nmap --script=http-title 192.168.1.100

Script NSE comuni

Script chiave per l'enumerazione: http-title, http-headers, smb-enum-shares, ftp-anon, dns-brute e ssh-hostkey.

nmap --script=smb-enum-shares -p 445 192.168.1.100
nmap --script=ftp-anon -p 21 192.168.1.100
nmap --script=dns-brute --script-args dns-brute.domain=target.com 192.168.1.1

Script della categoria vuln

La categoria vuln verifica la presenza di vulnerabilità note. Gli script vuln generano più rumore e possono causare l'arresto anomalo dei servizi: li utilizzi solo con un'autorizzazione esplicita.

sudo nmap --script=vuln 192.168.1.100

# Specific vuln checks:
nmap --script=ms17-010 -p 445 192.168.1.100  # EternalBlue
nmap --script=http-shellshock 192.168.1.100

Analisi dell'output XML di Nmap con Python

L'output XML di Nmap ottenuto con -oX è leggibile dalle macchine. La libreria Python python-libnmap lo analizza in modo chiaro, così da creare report personalizzati o passarne i dati ad altri strumenti.

# Install
pip install python-libnmap

# Parse results
from libnmap.parser import NmapParser
report = NmapParser.parse_fromfile("scan.xml")
for host in report.hosts:
    for svc in host.services:
        if svc.state == "open":
            print(f"{host.address}:{svc.port} {svc.service}")

Semplice scanner di porte in Python

Costruisca uno scanner di porte minimale utilizzando il modulo Python socket. È utile quando Nmap non è disponibile o quando serve un approccio di scansione personalizzato.

import socket
from concurrent.futures import ThreadPoolExecutor

def scan_port(host, port):
    try:
        s = socket.socket()
        s.settimeout(0.5)
        s.connect((host, port))
        print(f"Open: {port}")
        s.close()
    except: pass

with ThreadPoolExecutor(100) as ex:
    for p in range(1, 1025):
        ex.submit(scan_port, "192.168.1.100", p)

One-liner per l'enumerazione in Bash

Bash consente di enumerare rapidamente host e porte utilizzando il pseudo-dispositivo /dev/tcp, senza strumenti esterni.

# Check if port is open (bash built-in)
timeout 1 bash -c "echo >/dev/tcp/192.168.1.100/80" && echo open

# Loop over hosts
for i in $(seq 1 254); do
  ping -c1 -W1 192.168.1.$i &>/dev/null && echo "192.168.1.$i up"
done

Scripting per l'enumerazione DNS

Automatizzi l'enumerazione DNS con dnsrecon, amass o script personalizzati che interrogano i record A, MX, NS, TXT e CNAME ed eseguono il brute force dei sottodomini.

dnsrecon -d target.com -t std
amass enum -d target.com

# Manual zone transfer attempt
dig axfr target.com @ns1.target.com

Enumerazione SMB con enum4linux

enum4linux automatizza l'enumerazione SMB: condivisioni, utenti, gruppi, criteri delle password e informazioni sul sistema operativo degli host Windows/Samba senza autenticazione.

enum4linux -a 192.168.1.100

# -a = all enumeration
# Shows: shares, users, groups,
#        password policy, OS version

Enumerazione SNMP

SNMP v1/v2c utilizza le community string (spesso "public") per l'autenticazione. L'interrogazione SNMP rivela informazioni sul sistema, processi in esecuzione, interfacce di rete e software installato.

# Query with default community string
snmpwalk -c public -v2c 192.168.1.100

# Get system info only
snmpget -c public -v2c 192.168.1.100 1.3.6.1.2.1.1.1.0

# Brute force community strings
onesixtyone -c community.txt 192.168.1.100

Organizzazione dell'output

Un output strutturato è fondamentale per gli incarichi di grandi dimensioni. Utilizzi directory separate per ogni target, una denominazione coerente (target_service_date) e strumenti come tmux per registrare tutto l'output del terminale.

Verifica rapida

Quale categoria NSE di Nmap esegue controlli per individuare vulnerabilità note?

Riepilogo: scripting per l'enumerazione

Lo scripting trasforma i singoli comandi degli strumenti in pipeline di ricognizione riproducibili. Combini script NSE per controlli mirati rapidi, Python per l'analisi personalizzata e l'automazione, Bash per la rapida individuazione degli host e strumenti specializzati (enum4linux, dnsrecon, snmpwalk) per l'enumerazione specifica dei protocolli.

Domande Frequenti

La lezione «Scripting per l'enumerazione delle reti» è gratuita?

Sì — il testo completo di «Scripting per l'enumerazione delle reti» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cyber Security Academy, passa a CoddyKit PRO. Il corso Cyber Security Academy include 4 lezioni in totale.

Cosa imparerò in «Scripting per l'enumerazione delle reti»?

Automatizzate la ricognizione con gli script Nmap NSE e scanner Python personalizzati. Eserciti Cyber Security Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cyber Security Academy?

Non è richiesta alcuna esperienza precedente. Cyber Security Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Scripting per l'enumerazione delle reti»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cyber Security Academy?

Sì. Ogni lezione Cyber Security Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Tecniche di scansione delle porte con Nmap
  2. Fingerprinting dei servizi e dei sistemi operativi
  3. Netcat: il coltellino svizzero
  4. Scripting per l'enumerazione delle reti
← Torna a Cyber Security Academy