
Ricerca sulla superficie d'attacco pre-autenticazione di ArubaOS 8.13.2.0. XXE+SSRF, riflessione ICMP, buffer over-read, credenziali hardcoded — tutto inviato a HPE Bugcrowd, contrassegnato come N/A. Nessuna correzione rilasciata.
⚠️ Stato della divulgazione: Tutti i risultati in questo repository sono stati inviati al programma HPE Networking Bug Bounty (Bugcrowd) tra maggio e giugno 2026. Cinque delle sei segnalazioni sono state chiuse come "Not Applicable" in fase di triage senza riconciliazione tecnica delle prove presentate. Nessuna correzione è stata rilasciata al giugno 2026.
https://netacoding.com/posts/ghost-leak/
https://netacoding.com/posts/smurf-reflection/
https://netacoding.com/posts/xxe-ssrf/
Ricerca sulla superficie d'attacco pre-autenticazione di ArubaOS 8.13.2.0. XXE+SSRF, riflessione ICMP, buffer over-read, credenziali hardcoded — tutto inviato a HPE Bugcrowd, marcato N/A. Nessuna correzione rilasciata.
Ricercatore: Vesqer / JM00NJ
Blog: netacoding.com
Target: HPE Aruba Networking Wireless — AOS-8 Controller
Versione: ArubaOS 8.13.2.0 LSR (Build 95415, compilato 2026-03-25)
Modello: ArubaMC-VA-US
Programma: HPE Networking Product Public Program (Bugcrowd)
Periodo della ricerca: maggio–giugno 2026
Questo repository documenta la ricerca sulla sicurezza condotta su ArubaOS 8.13.2.0 LSR nell'ambito del programma HPE Networking Bug Bounty su Bugcrowd. Tutta la ricerca è stata eseguita su un'istanza di laboratorio autorizzata (macchina virtuale ArubaMC-VA-US) utilizzando le immagini firmware e l'OVA forniti dal programma al link firmware ufficiale.
Sono state identificate e segnalate sei vulnerabilità. I risultati riguardano lo stack IP/ICMP, l'interfaccia di gestione XML (porta 32000) e il servizio FTP (porta 21). Tutti i test sono stati effettuati in pre-autenticazione — nessuna credenziale amministrativa o sessione attiva è stata utilizzata per alcun risultato documentato qui.
| # | Titolo | Segnalazione | CWE | CVSS | Stato |
|---|---|---|---|---|---|
| 1 | Pre-Auth XXE → HTTP SSRF | 9e946ca3 | CWE-611 | 9.3 Critical | N/A — RaR scaduta senza risposta |
| 2 | Riflessione ICMP + Smurf | 09e49fa1 | CWE-290, CWE-406 | 7.4 High | N/A |
| 3 | Ghost Leak | c5eda0ae | CWE-126, CWE-1284, CWE-354 | 6.5 Medium | N/A — RaR presentata |
| 4 | XXE pre-auth → SSRF FTP con RETR | 0c716fec | CWE-611 | — | N/A |
| 5 | Credenziale FTP hardcoded / sap:x (CWE-798 | d13d0e83 | CWE-798, CWE-125 | — | Attiva — Nessuna risposta |
| 6 | Relay del payload ICMP — Zero DPI | b5727197 | CWE-20, CWE-693 | — | N/A |
Tutti i risultati documentati sono in pre-autenticazione. La superficie d'attacco è composta da tre componenti:
ArubaOS 8.13.2.0 LSR
│
├── Port 32000/TCP XML Management Interface
│ ├── [1] Pre-auth XXE → HTTP SSRF (9e946ca3)
│ └── [4] Pre-auth XXE → FTP SSRF (0c716fec) [pending]
│
├── IP/ICMP Stack
│ ├── [2] ICMP Reflection + Smurf (09e49fa1)
│ ├── [3] Ghost Leak — IP Length over-read (c5eda0ae)
│ └── [6] ICMP Payload Relay / Zero DPI (b5727197)
│
└── Port 21/TCP FTP Service (vsftpd)
└── [5] Hardcoded credential sap:x (d13d0e83) [pending]
Il parser XML sulla porta 32000 risolve le dichiarazioni di entità esterne SYSTEM senza autenticazione. Confermato tramite:
GET /test HTTP/1.0 avviata dal controller verso l'infrastruttura dell'attaccanteBad protocol version identification 'GET / HTTP/1.0' from 127.0.0.1 — prova lato server dell'esecuzione di SSRF registrata dal controller stesso<dialog>success</dialog>Risposta del triage: "teorico / nessun PoC valido" — non affrontata dopo quattro elementi di prova inclusi il log sshd. La prima RaR è scaduta senza risposta.
Il gestore dell'ICMP Echo non valida gli indirizzi IP sorgente rispetto ai binding della tabella ARP né applica il reverse path filtering (BCP38/uRPF). Richieste ICMP Echo Request con IP sorgente spoofato fanno sì che il controller consegni risposte non richieste alla sorgente falsificata. Indirizzi sorgente broadcast fanno sì che il controller risponda a ff:ff:ff:ff:ff:ff, consegnando la risposta a tutti gli host sul segmento L2.
Prove: due catture di pacchetti indipendenti da due macchine fisicamente separate. La cattura lato vittima mostra una risposta Echo non richiesta su un host che ha inviato zero richieste ICMP.
Risposta del triage: "funzionalità di rete prevista" — la pcap lato vittima non è stata affrontata.
Il gestore dell'ICMP Echo si fida di IP_Total_Length senza convalidarlo rispetto alla dimensione effettiva del frame ricevuto. L'invio di IP_Total_Length=46 con dati IP effettivi di 28 byte fa sì che il gestore legga 18 byte oltre il limite del pacchetto dal buffer di ricezione di rete, rimandandoli in echo nella risposta.
L'attacco utilizza pacchetti TTL=0 (la RFC 791 ne impone lo scarto), rendendolo invisibile a router, IDS, firewall e sistemi di logging. 27/27 pacchetti forgiati con TTL=0 hanno ricevuto risposta — tasso di risposta del 100%.
Stesso meccanismo di CVE-2003-0001 (EtherLeak) e CVE-2021-3031 (Palo Alto PAN-OS), entrambi accettati dai rispettivi vendor.
Risposta del triage: "solo byte azzerati" — attribuendo la caratteristica di padding pulito della NIC virtuale VirtualBox all'assenza di vulnerabilità.
Nell'ambito della ricerca sul riscontro 5 (non pubblicata qui), le immagini firmware degli AP distribuite tramite il servizio FTP sono state sottoposte a reverse engineering. Risultati chiave dell'analisi statica di tutte e quattro le immagini firmware:
Formato firmware: Aruba Image Container (.ari) — compresso LZMA, non cifrato. Il corpo utilizza la firma del codice (X.509) piuttosto che la cifratura per la riservatezza.
Piattaforme AP coperte:
| File | Piattaforma | SoC | Arch | Kernel | Modelli AP |
|---|---|---|---|---|---|
| ipq40xx.ari | 30x | Qualcomm IPQ40xx | ARM32 Cortex-A7 | Linux 3.12.19-rt30 | AP-303/303H/303P/304/305/365/367 |
| ipq806x.ari | 32x | Qualcomm IPQ806x | ARM32 Cortex-A7 | Linux 3.12.19-rt30 | IPQ806x series |
| arm64.ari | 51x | Broadcom BCM94908 | ARM64 Cortex-A53 | Linux 4.1.45 | ARM64 AP series |
| ipq807x.ari | 53x | Qualcomm IPQ8074 | ARM64 Cortex-A53 | Linux 4.1.45 | AP-534/535/555/584/587 |
Risultati notevoli del firmware: