
POC di CVE-1999-0524
╔══════════════════════════════════════════════════════════════════╗
║ ██╗ ██████╗███╗ ███╗██████╗ ████████╗███████╗ ║
║ ██║██╔════╝████╗ ████║██╔══██╗ ██╔══╝██╔════╝ ║
║ ██║██║ ██╔████╔██║██████╔╝ ██║ ███████╗ ║
║ ██║██║ ██║╚██╔╝██║██╔═══╝ ██║ ╚════██║ ║
║ ██║╚██████╗██║ ╚═╝ ██║██║ ██║ ███████║ ║
║ ╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚══════╝ ║
╠══════════════════════════════════════════════════════════════════╣
║ CVE-1999-0524 · Scanner Richiesta/Risposta Timestamp ICMP ║
║ Autore : Muhamad Bion Tadavi — VPSI ║
║ Org : Vantage Point Security — Solo Uso Autorizzato ║
╚══════════════════════════════════════════════════════════════════╝
Scanner ICMP Timestamp veloce e multi-thread con output esadecimale colorato e analisi dettagliata dei timestamp.
Rileva host vulnerabili a CVE-1999-0524 (Divulgazione di informazioni tramite Timestamp ICMP) inviando pacchetti ICMP Tipo 13 (Richiesta Timestamp). Gli host che rispondono con ICMP Tipo 14 (Risposta Timestamp) vengono segnalati come vulnerabili — perdono il loro orologio di sistema interno, facilitando l'identificazione del dispositivo e l'incatenamento di attacchi basati sul tempo.
Realizzato con zero dipendenze esterne — puro Python stdlib.
| Campo | Valore |
|---|---|
| ID CVE | CVE-1999-0524 |
| CWE | CWE-200 — Esposizione di Informazioni Sensibili |
| CVSS v3 | 0.0 (Bassa) |
| Tipo | Divulgazione di Informazioni |
| Protocollo | ICMP Tipo 13 / Tipo 14 |
| Affetti | Cisco IOS, Cisco ASA, Linux, Windows (dipende dalla configurazione) |
Attaccante Target
│ │
│──── ICMP Tipo 13 (Richiesta Timestamp) ─▶│
│ │ [host elabora la richiesta]
│◀─── ICMP Tipo 14 (Risposta Timestamp) ──│
│ │
La risposta contiene tre campi timestamp a 32 bit (ms dalla mezzanotte UTC):
├── Timestamp di Origine (impostato dal richiedente — spesso 0)
├── Timestamp di Ricezione ◀── orologio del server divulgato qui
└── Timestamp di Trasmissione ◀── orologio del server divulgato qui
| Caratteristica | Dettaglio |
|---|---|
| Scansione multi-thread | Sonde parallele configurabili (predefinito: 30 thread) |
| Input flessibile | IP singolo · Separati da virgola · Range CIDR · File (-t / -f) |
| Esadecimale colorato | Intestazione IP · Intestazione ICMP · Byte tipo · Timestamp — ognuno colorato in modo univoco |
| Decodifica timestamp | Millisecondi grezzi decodificati in HH:MM:SS.mmm UTC |
| Evidenza esadecimale nel riepilogo | Hex colorato + legenda stampati per host vulnerabile nel riepilogo finale |
Dump esadecimale completo (-v) | Colonne offset + hex + ASCII per ogni risposta |
Barra di avanzamento (-v) | Barra di avanzamento live visualizzata solo in modalità verbose |
| Tabella di riepilogo | Tabella degli host vulnerabili ordinata con TTL, RTT e orario server |
| Zero dipendenze | Puro Python stdlib — nessun pip install richiesto |
python3 --version # deve essere 3.8+
git clone https://github.com/<tuo-username>/CVE-1999-0524-ICMP-Timestamp-Scanner.git
cd CVE-1999-0524-ICMP-Timestamp-Scanner
chmod +x icmp_timestamp_scan.py
sudo python3 icmp_timestamp_scan.py [OPZIONI]
Opzioni:
-t, --target IP, IP separati da virgola o CIDR (input da terminale)
-f, --file Percorso del file con un IP/CIDR per riga
--timeout SECS Secondi da attendere per host (predefinito: 2.0)
--threads N Thread concorrenti (predefinito: 30)
-v, --verbose Mostra barra di avanzamento + dump esadecimale completo per host
-h, --help Mostra aiuto
| Modalità | Comportamento |
|---|---|
Predefinita (senza -v) | Risultati stampati immediatamente appena ogni host risponde — hex colorato + timestamp per host, poi riepilogo |
Verbose (-v) | Barra di avanzamento live durante la scansione, poi dump esadecimale completo per host, poi riepilogo |
# Host singolo
sudo python3 icmp_timestamp_scan.py -t 192.168.1.1
# Host multipli
sudo python3 icmp_timestamp_scan.py -t 192.168.1.1,192.168.1.2,192.168.1.3
# Scansione sottorete CIDR
sudo python3 icmp_timestamp_scan.py -t 192.168.1.0/24
# Da file
sudo python3 icmp_timestamp_scan.py -f hosts.txt
# Verbose — barra di avanzamento + dump esadecimale completo
sudo python3 icmp_timestamp_scan.py -f hosts.txt -v
# Scansione ampia veloce
sudo python3 icmp_timestamp_scan.py -t 10.0.0.0/16 --threads 100 --timeout 1
hosts.txt# Un IP o CIDR per riga. Le righe che iniziano con # vengono ignorate.
192.168.1.1
192.168.1.2
192.168.1.3
10.0.0.1
10.0.0.2
10.0.0.0/24
-v) [*] Target : 4 host
[*] Timeout : 2.0s | Thread: 30
[*] Iniziato : 2026-07-14 06:37:25 UTC
[*] Sonda : ICMP Tipo 13 (Richiesta Timestamp)
[*] Atteso : ICMP Tipo 14 (Risposta Timestamp) da host vulnerabili
╔══ VULNERABILE ════════════════════════════════════════════╗
║ Host : 192.168.1.1
║ Tipo ICMP : 14 — Risposta Timestamp (inviato Tipo 13)
║ TTL : 59
║ RTT : 1.84 ms
║ ── Timestamp (ms dalla mezzanotte UTC) ────────────────
║ Origine : 0 ms → 00:00:00.000 (non impostato)
║ Ricezione : 22,974,518 ms → 06:22:54.518 UTC
║ Trasmissione: 22,974,518 ms → 06:22:54.518 UTC ← orario server
║ ── Risposta Grezza (hex) ─────────────────────────────
║ 45 48 00 28 14 76 00 00 3b 01 2d 93 c0 a8 01 01 c0 a8 01 64 0e 00 f9 15 ...
║ Legenda: ██=intestazione IP ██=intestazione ICMP ██=tipo ICMP 14 ██=timestamp
╚══════════════════════════════════════════════════════════╝
[-] 192.168.1.2 nessuna risposta (filtrato o non vulnerabile)
╔══ VULNERABILE ════════════════════════════════════════════╗
║ Host : 192.168.1.3
║ TTL : 59 | RTT : 2.11 ms
║ Trasmissione: 22,977,926 ms → 06:22:57.926 UTC ← orario server
╚══════════════════════════════════════════════════════════╝
══════════════════════════════════════════════════════════════════
RIEPILOGO SCANSIONE
══════════════════════════════════════════════════════════════════
Ora scanner : 2026-07-14 13:37:25 WIB (06:37:25 UTC)
Totale sondati : 4
Vulnerabili : 2
Nessuna risp. : 2
Errori : 0