
APOLOGEE è uno script Python e un modulo Metasploit che enumera una directory nascosta sui Siemens APOGEE PXC BACnet Automation Controllers (tutte le versioni precedenti alla V3.5) e TALON TC BACnet Automation Controllers (tutte le versioni precedenti alla V3.5). Con un CVSS di 7.5, questo exploit consente a un attaccante di eseguire un bypass dell'autenticazione utilizzando un percorso o canale alternativo per accedere a directory nascoste nel server web. Questo repository sfrutta CVE-2017-9947.
APOLOGEE è uno script Python e un modulo Metasploit che enumera una directory nascosta sui controller di automazione BACnet Siemens APOGEE PXC (tutte le versioni precedenti alla V3.5) e sui controller di automazione BACnet TALON TC (tutte le versioni precedenti alla V3.5). Con un CVSS di 7.5, questo exploit consente a un attaccante di eseguire un bypass dell'autenticazione utilizzando un percorso o canale alternativo per accedere a directory nascoste nel server web. Questo repository sfrutta la CVE-2017-9947.
I Pannelli di Campo Siemens forniscono principalmente controlli di processo per i sistemi di automazione degli edifici (BAS). Un sistema di automazione degli edifici (BAS) è una rete progettata per connettere e automatizzare determinate funzioni all'interno di un edificio. Tutti i sistemi di controllo dell'edificio, dall'illuminazione e HVAC (Riscaldamento, Ventilazione e Condizionamento d'Aria) ai sistemi antincendio e di sicurezza—tutti cablati attraverso un unico insieme di controlli. Cosa significa questo? Utilizzando il repository APOLOGEE, puoi enumerare i dispositivi che controllano i processi di automazione degli edifici per ottenere informazioni sulle loro posizioni, configurazioni e molto altro!
Un attaccante con accesso di rete al server web integrato (porte 80/TCP e 443/TCP) potrebbe bypassare l'autenticazione e scaricare informazioni sensibili dal dispositivo.
Una vulnerabilità di path traversal potrebbe consentire a un attaccante remoto con accesso di rete al server web integrato (porte 80/TCP e 443/TCP) di ottenere informazioni sulla struttura del filesystem dei dispositivi interessati.
Siemens ha fornito la versione firmware V3.5 per i moduli avanzati dei Pannelli di Campo BACnet, che risolve le vulnerabilità, e raccomanda agli utenti di aggiornare alla nuova versione corretta. Gli utenti devono contattare l'organizzazione di assistenza locale per ulteriori informazioni su come ottenere e applicare la V3.5. Il modulo web è disponibile al seguente indirizzo sul sito Siemens:
http://w3.usa.siemens.com/buildingtechnologies/us/en/contact-us/Pages/bt-contact-form.aspx
Regola Suricata per il rilevamento:
alert http any any -> any any (msg:"Siemens Field Panel Authentication Bypass Using an Alternate Path or Channel, Path Traversal"; http.method; content:"GET"; content:”FieldPanel.xml”; http_uri; reference: cve, CVE-2017-9947; priority:1; sid: 1000001; rev: 1;)
Sono disponibili due script Python: siemens_field_panel_scanner.py e APOLOGEE.py. Lo script siemens_field_panel_scanner.py è un modulo Metasploit che può essere caricato nel framework per semplici usi ausiliari su reti OT (Operational Technology) e ICS (Industrial Control System) interne. Lo script APOLOGEE.py è un programma autonomo per enumerare i pannelli di campo utilizzando argomenti standard da riga di comando.
Scarica il repository:
$ mkdir APOLOGEE
$ cd APOLOGEE/
$ sudo git clone https://github.com/RoseSecurity/APOLOGEE.git
Utilizzo di APOLOGEE.py:
# python3 APOLOGEE.py <IP del Pannello di Campo Siemens>
$ python3 APOLOGEE.py 192.168.1.22
Utilizzo di siemens_field_panel_scanner.py:
Per caricare lo script in Metasploit:
# Rendi lo script eseguibile
$ chmod +x siemens_field_panel_scanner.py
# Crea la directory per il modulo
$ mkdir -p ~/.msf4/modules/auxiliary/scanner/scada
# Sposta lo script nella cartella
$ mv siemens_field_panel_scanner.py ~/.msf4/modules/auxiliary/scanner/scada
Avvia Metasploit:
$ msfconsole -q
# Ricarica i moduli
msf> reload_all
msf> use /modules/auxiliary/scanner/scada/siemens_field_panel_scanner.py
Se incontri errori, controlla il seguente log:
$ tail ~/.msf4/logs/framework.log
Se sei interessato a scrivere i tuoi moduli Python per Metasploit, consulta: https://docs.metasploit.com/docs/development/developing-modules/external-modules/writing-external-python-modules.html