Molto tempo fa ho lavorato per una piccola banca. Abbiamo utilizzato una rete fisicamente separata per ospitare i nostri server interni che gestivano tutte le transazioni, nonché le workstation che accedevano al sistema.
Un giorno arrivò qualcuno che voleva creare un'interfaccia web basata su perl, e praticamente provò a mettere un server connesso a internet nella nostra area server sicura e collegarlo direttamente al server di banca con cat5. Questo, naturalmente, è stato prontamente negato.
Ma questo mi ha fatto pensare; e ora, molti anni dopo, ci sto ancora pensando. Come puoi "intercettare" in modo efficiente una rete e fornire servizi a un mondo esterno?
La mia idea era la seguente.
- Configura una rete fisicamente separata con un server che ospita dati critici ( conti bancari, transazioni, servizi di rete elettrica, record di voto, ecc. ). Garantire tutte le normali procedure di sicurezza per reti air gap, ecc. Ecc.
- Configura una rete connessa ad internet un po 'meno sensibile (ma comunque molto sicura) per ospitare server di applicazioni e oltre, da qualche parte verso il perimetro, i veri server web, load balancer, firewall e così via.
- Esegui un cavo seriale tra due host sulle due reti.
- Qualsiasi comunicazione tra le reti, ad esempio per chiedere informazioni su un saldo, pubblicare una transazione e così via, deve avvenire tramite il cavo seriale. Ogni richiesta dovrebbe anche essere firmata in modo crittografico, quindi l'autorizzazione definitiva spetta ai server sicuri della rete air gap: non si fida di nulla che arrivi sul cavo seriale a meno che non sia crittografato e autorizzato.
Il mio ragionamento qui è che una volta collegato un cavo cat5 a un server, ci sono così tanti diversi tipi di traffico che si possono verificare su quel cavo (anche con i firewall appropriati). Puoi fare in modo che gli intrusi si muovano lateralmente attraverso la rete, firewall configurati in modo errato, ci sono 65000 porte possibili e ne stai utilizzando 1 - utilizzando un cavo seriale stai riducendo drasticamente i vettori di attacco. Ovviamente è ancora necessario proteggere lo stack del software dietro il cavo seriale, e qui ci sono molti altri attacchi possibili, ma mi limito a limitarmi a limitare il traffico a un protocollo personalizzato tramite un cavo seriale stupido - un po 'come il ponte su Khazad-dûm, se lo sai.
Lo svantaggio è che un cavo seriale non è particolarmente efficace . A 115 kbit / s, sarà difficile rispetto a un normale collegamento da 1 Gbit / s. Suppongo che potresti usare più cavi seriali ...
...
- È una buona idea?
- Ci sono idee migliori?
- Esiste un'alternativa pratica a un cavo seriale che ancora non porta con sé un intero stack di rete?