ScadaSploit Framework

Questa sezione è dedicata a ScadaSploit, un framework su cui sto lavorando dedicato al penetration testing in ambito OT/ICS. Vi chiederete: "Ma non c'è già Metasploit che lo fa?". Certo! E allora che bisogno c'è di creare un nuovo tool del genere? Provo a dare qualche risposta:

  • framework esclusivamente dedicato alle vulnerabilità di SCADA, PLC e altri dispositivi ICS

  • scritto in Python, sia il core del framework sia i moduli aggiuntivi

  • interfaccia "Metasploit like" basata su Sploitkit

  • focus maggiore su parco PLC installato, specialmente europeo

  • open source.

Non so se questi punti siano sufficienti a dare maggior senso al progetto, per me è stato così. Volevo raccogliere in un unico ambiente gli scripts che comunemente vengono utilizzati durante i pentest in automazione, e casualmente ho intercettato Sploitkit.

Metasploit attualmente conta quasi 70 moduli dedicati ai sistemi ICS, ma la maggior parter di essi sono per dispositivi praticamente inesistenti sul mercato italiano. Se consideriamo il parco dei PLC installato in Italia negli ultimi 20 anni, troviamo che Siemens + Schneider Electric ne fanno da padrone con quasi i 2/3 delle parti di mercato. Seguono Rockwell Automation (ex Allen-Bradley), GE, Omron soprattutto sulle macchine utensili, qualche Phoenix e Wago e poi pochi altri.

Da qui è nata l'idea di ScadaSploit, un database di moduli ausiliari e di exploit dedicati ai principali produttori e protocolli di comunicazione, che faciliti le fasi di pentest. L'uso di Python lo rende probabilmente più accessibile anche a scopo didattico.

Principali moduli attualmente presenti

Seguendo la stessa filosofia di approccio di Metasploit, anche in ScadaSploit troviamo due categorie di moduli: "auxiliary" ed "exploit". I moduli ausiliari sono dedicati ad operazioni di ricognizione, scanning, lettura/scrittura di dati ecc., mentre gli exploit basano il loro comportamento sullo sfruttamente di una vulnerabilità.

In entrambe le categorie troviamo un'ulteriore suddivisione in funzione dei diversi produttori di PLC, che al momento si limitano a Schneider Electric e Siemens.