In questa pagina viene descritta la soluzione di RomARS che offre un approccio emulativo virtualizzato flessibile, per la realizzazione di una piattaforma (“testbed”) realtime basata su Linux per la valutazione di prestazioni e sicurezza di applicazioni reali. L’ambito di utilizzo di questa soluzione è relativo al:

  1. Supporto a paradigmi di comunicazione TCP/IP con traffico distribuito tra nodi reali ed emulati su cui eseguire le applicazioni di interesse.
  2. Configurazione di diverse topologie di rete con tecnologie eterogenee gestite come LAN/VLAN, con elementi di switching/routing e possibili firewall. L’emulazione include la riproduzione di segmenti satellitari e wireless in generale
  3. Sistema di controllo e monitoraggio dello stato dei trasfermento dati, packet-based o stateful, tra gli agenti (client/server), permettendo di realizzare anche analisi di sicurezza
  4. Possibilità di integrare nel testbed
    • Dispositivi reali (es. dispositivi COTS o sperimentali con interfacce di rete standard): ad esempio sensori analogici interfacciati attraverso dei GW tipo raspberry per trasformare il dato analogico in IP, oppure webcam IP.
    • Dispositivi emulati direttamente in IP (es. Container o VM)
  5. Interfaccia grafica per l’analisi delle prestazioni in tempo reale (tempo di consegna, messaggi persi) scalando il sistema dal numero attuale di agenti a numeri maggiori (così, tra l’altro, permettendo di identificare i requisiti di rete in caso di inserimento di ulteriori nodi di rete o data-center regionali)
  6. Ottimizzazione del trasferimento dati per applicazioni custom e legacy (ad es. passare da JSON a formati binari e/o protocolli IoT IP di tipo MQTT o CoAP, oppure valutare differenti protocolli di trasporto e compressione), supportando la fase di design e collaudo dei protocolli aggiornati
  7. Simulazione di aggiunta o “provision” di un dispositivo (registrazione, inizializzazione) – stesso per la sua rimozione similarmente a quanto avviene nella rete che si vuole simulare. Entrambe le attività devono essere possibili solo ad operatori legittimi e non potenziali attaccanti.
  8. Realizzazione di attacchi Cyber “veri” per
    • Definire le minacce e le vulnerabilità dei nodi esposti alla rete (penetration testing)
    • Identificare le vulnerabilità dei protocolli di scambio dati definiti, come ad esempio attacchi di tipo replay, delay, o man in the middle in generale o vulnerabilità nelle procedure già definite
    • Valutare l’introduzione, per mitigare i rischi, di componenti di filtraggio quali firewall, packet inspectors, sistemi di anomaly o intrusion detection, ecc.
    • Simulare una situazione anomala a seguito di un ipotetico attacco che ha avuto successo per identificare possibili ulteriori contromisure

A tale scopo, la nostra soluzione prevede la realizzazione di una infrastruttura di rete emulata rappresentativa della rete vera, su cui gireranno le applicazioni ed i protocolli di interesse su macchine virtuali (principalmente Linux based, ma anche con opzioni per inclusione di nodi Windows). La soluzione proposta è basata su una piattaforma SW generica già predisposta da RomARS, che utilizza un insieme di Software Open Source correttamente adattati, integrati e configurati, che offrono all’utente le funzionalità di base per eseguire le attività descritte. Come funzioni di base, la piattaforma permette ad esempio di:

  1. Definire la topologia di rete, e la configurazione delle macchine collegate in rete (inclusa CPU, RAM, sistema operativo)
  2. Offrire l’accesso ai singoli nodi per installare SW, eseguire applicazioni e script
  3. Gestire connessioni esterne via VPN
  4. Includere segmenti satellitari, wireless o reti mobili (5G)
  5. Applicare una configurazione di test, eseguire traffico, e ripristinare alle condizioni iniziali
  6. esporre graficamente i KPI di rete (bitrate per link e per direzione), quelli dei nodi attivi (CPU/RAM) oltre a permettere di catturare traffico in diversi punti della rete.

Tale base di partenza, e le funzionalità principali generali già sviluppate, sono state identificate grazie a numerosi progetti di ricerca sui testbed di rete eseguite da RomARS. Facendo leva sulle funzionalità di base già disponibili, il testbed che verrà consegnato dovrà essere adattato considerando i requisiti specifici del committente in base ai casi d’uso definiti, come in particolare quali sono le applicazioni da caricare, quanti nodi di rete, con che caratteristiche, che velocità di trasferimento, complessità della topologia, etc.

Per quanto riguarda la valutazione di prestazioni, grazie ad i KPI messi a disposizione (anche in realtime), si potrà supportare la valutazione dell’overhead della comunicazione (cioè identificare a regime il rapporto tra dati utili e traffico di rete complessivo), le tempistiche di scambio dati, eventuali perdite di messaggi, oltre a valutare con accuratezza il traffico scambiato e i carichi dei nodi coinvolti, che potranno essere in anche messi in relazione con i consumi energetici (ad esempio a dimezzamento dei dati trasmessi o riduzione di CPU corrisponde quasi certamente un risparmio energetico).

Per quanto riguarda la valutazione di sicurezza, tale sistema può anche essere considerato un Cyber Range flessibile, in grado di caricare configurazioni di rete e numero di nodi variabili, inclusi nodi veri, permettendo di realizzare focus su protocolli di sicurezza, attacchi ed identificazione di vulnerabilità. Si sottolinea però che le valutazioni di sicurezza sui protocolli e la definizione di contromisure non fanno parte della presente offerta, e dovranno essere realizzate da personale esperto di Cyber Security.

Sono previsti due opzioni di fornitura dell’ambiente proposto. In entrambi i casi, come detto, è necessaria una prima configurazione e dimensionamento del sistema sulla base della rete oggetto di simulazione ed i requisiti specifici degli use-case di interesse, che verrà quotata in ciascuna delle opzioni come costo di setup ed integrazione iniziale. Inoltre, per entrambe le opzioni, sono possibili piani addizionali di supporto, estensione, sviluppo SW e affiancamento nelle attività di R&D associate all’uso del testbed, da quotare a parte sulla base dell’impegno previsto in mesi-uomo.

Opzione A – Realizzazione del testbed su nostro ambiente Private Cloud, accessibile da remoto.

Il testbed virtualizzato, ritagliato sulla topologia vera della rete, può essere installato su un ambiente di Virtualizzazione fornito da noi, interamente configurato da noi e con possibilità di accesso da remoto, in modalità “Testbed-as-a-service”. Il testbed deve permettere di realizzare le configurazioni di rete volute, attivare gli agenti client/server ed i servizi in modalità emulata locale, oltre a dare la possibilità di collegare una o più workstation per configurare la piattaforma e visualizzare i dati da remoto.

A titolo esemplificativo, ipotizzando una applicazione di tipo IoT su protocollo TCP/IP, l’architettura fisica del testbed è presentata in Figura 1 mentre l’architettura logica è presentata in Figura 2.

Opzione B – Realizzazione del testbed su Server dedicato, con assistenza remota

La seconda opzione prevede l’installazione da parte nostra di un testbed virtualizzato presso la sede del cliente, su un Server già pre-configurato e fornito da noi con possibilità di supporto da remoto. Il testbed deve permettere di realizzare le configurazioni di rete volute, attivare alcuni dei dispositivi in modalità emulata locale, oltre a dare la possibilità di collegare anche apparati veri IP e una o più workstation per configurare la piattaforma e visualizzare i dati.

A titolo esemplificativo, ipotizzando una applicazione di tipo IoT su protocollo TCP/IP, l’architettura fisica del testbed è presentata in Figura 3 mentre l’architettura logica è presentata in Figura 4.

Specifiche del server fornito:

1 CPU con 16 core (AMD Ryzen), 128 GB RAM, 1 TB SSD + Switch VLAN Gbit ed accessori di rete. Opzione Rack oppure Workstation.