Aziende plurimiliardarie che investono milioni di euro in costose “soluzioni” (?) di Cybersecurity e consulenze erogate da fantomatici “esperti”, e poi immancabilmente si ritrovano a distanza di mesi o anni infettate da un ransomware o coinvolte in gravissimi incidenti informatici iniziati con una banale BEC.
Gente che blatera di Sicurezza Informatica senza conoscerne a fondo le reali basi ingegneristiche, sistemisti e tecnici ICT che venerano Active Directory come una panacea per tutti i mali, nonché Microsoft Exchange come “il” mail server per antonomasia…ma anche lì, incidenti su incidenti informatici dietro l’angolo.
La lungimiranza e la perspicacia, quel think outside of the box che ha permeato le vite di tanti acuti pensatori, nonché dei padri fondatori di Internet e di svariati progettisti, dovrebbe pervadere le riflessioni, le scelte progettuali e gli investimenti portati avanti anche dai manager e dai CISO italiani…o almeno, della maggior parte tra loro. Ma non è esattamente così.
Se davvero lo fosse, la maggior parte dei mail server ancor oggi utilizzati in Italia in ambienti Enterprise non continuerebbero ad essere basati su Microsoft Exchange piuttosto che su O365 (Microsoft Office 365)… sistemi su di cui più o meno periodicamente vengono scoperte devastanti vulnerabilità RCE (Remote Code Execution).
DoveCot, invece, è fatto di un’altra pasta: è un mail server Open Source ideato con la Sicurezza Informatica in testa; si definisce “Secured by Design”, ma puoi leggerlo come “Sicurizzato fin dalla progettazione”.
Un esempio emblematico: qualche anno fa l’ente Mozilla Open Source (non esattamente dei “bottegai” dell’informatica) ha commissionato un audit di sicurezza informatica su DoveCot, il primo audit pubblico del suo codice sorgente. Il team che ha eseguito l’audit è rimasto estremamente colpito dalla qualità del suo codice sorgente, dichiarando nero su bianco che “nonostante i molti sforzi e l’approccio onnicomprensivo, i penetration tester di Cure53 sono riusciti solo a confermare l’eccellente livello di sicurezza informatica di DoveCot. Più specificamente, sono stati riscontrati solo tre problemi di sicurezza nel codice, ma di scarsa gravità, traducendosi così in un risultato prestigioso per DoveCot, nonché una prova-provata del fatto che mantenere le aspettative di Cybersecurity è una priorità dello sviluppo e del funzionamento di questo software”. È possibile reperire il report dettagliato delle vulnerabilità riscontrate dal team dei penetration tester di Cure53 consultando questo URL. Analogamente, a questo indirizzo è possibile leggere le più recenti vulnerabilità scoperte su DoveCot: provate a confrontare il numero di queste vulnerabilità (sia in quantità ma soprattutto in qualità/gravità!) con quelle scoperte su Microsoft Exchange, poi rifletteteci sopra chiedendovi se adottare software on-premises piuttosto che sistemi fruibili in SaaS per la posta elettronica sviluppati e distribuiti entrambi dalla Microsoft (società closed-source per antonomasia, anche omertosa quando si tratta dei propri databreach…leggetevi o rileggetevi, a tal proposito, dello scandalo riguardante il databreach di Microsoft Azure fatto emergere lo scorso anno dal senatore Ron Wyden e di questa recente inchiesta pubblicata sul Washington Post) sia ancora una scelta sensata e prudente.
Acronimo di Living-Off-the-Land BinariesCyber Threat Intelligence, LOLBins CTI-Driven è un progetto ideato per supportare gli analisti InfoSec nella ricostruzione di come i binari LOLBin vengano utilizzati dagli attacker durante un’intrusione. Il software è in grado di ricostruire il workflow percorso dai processi generando e mostrando un formato grafico compatibile con le piattaforme TIP e con lo standard STIX.
Di recente, alla piattaforma è stato aggiunto il supporto per il processo regsvr32.exe:
Perché proprio regsvr32.exe? Poiché viene comunemente utilizzato (abusato!) dagli attacker per avviare l’esecuzione di codice malevolo tramite proxy. Il suo utilizzo malevolo coinvolge attività come: – il bypass degli agent di sistemi XDR ed EDR – l’esecuzione di scriptlet COM per scaricare dinamicamente backdoor da iniettare in memoria – l’avvio di script dannosi – l’utilizzo di librerie .dll malevole – la distribuzione di payload – l’avvio di script remoti in grado di rilasciare ed eseguire file – la persistenza dei malware all’avvio dei sistema operativi – l’esecuzione di file con estensione .sct
La Securities and Exchange Commission statunitense di recente ha rivolto accuse contro la nota Corporation di sviluppo software SolarWinds, con sede in Texas, e contro il suo responsabile della Cybersecurity, Timothy G. Brown, per frodi relative a rischi e vulnerabilità di sicurezza informatica taciute agli investitori e consumatori. La denuncia sostiene che, dall’offerta pubblica iniziale dell’ottobre 2018 e almeno fino al momento dell’annuncio nel dicembre 2020, SolarWinds sarebbe stata l’obiettivo di un massiccio attacco informatico durato quasi due anni, soprannominato “SUNBURST”: la Corporation e Brown hanno frodato gli investitori sopravvalutando SolarWinds in malafede, nascondendo anche ai consumatori finali dei loro software i reali rischi informatici a cui andavano incontro. Dai documenti depositati presso la SEC si evince che durante quel periodo SolarWinds avrebbe ingannato gli investitori rivelando solo rischi generici e ipotetici, in un momento storico in cui, invece, la società e Brown erano perfettamente consapevoli delle carenze informatiche strutturali nelle architetture ICT e nelle policy di sicurezza informatica dell’azienda (volutamente omesse nei rapporti con l’esterno), nonché dei rischi sempre più elevati che la Corporation stava affrontando all’epoca.
Come sostiene la denuncia, le dichiarazioni pubbliche di SolarWinds sulle pratiche di Cybersecurity interne – e soprattutto sui rischi dei possibili incidenti informatici – erano apertamente in contrasto con le loro analisi tecniche, inclusa una presentazione del 2018 preparata da un ingegnere e condivisa internamente anche con Brown, secondo cui le configurazioni per l’accesso remoto ai sistemi e ai servizi SolarWinds “non erano molto sicure” (per usare un sottile eufemismo!), e che “qualcuno che dovesse sfruttare la vulnerabilità può praticamente fare qualsiasi cosa prima che noi lo scopriamo, finché non sarà troppo tardi”, il che potrebbe portare a “gravi perdite sia di reputazione che finanziarie”. Allo stesso modo, come affermato nella denuncia della SEC, le presentazioni interne del 2018 e del 2019 di Brown evidenziavano, rispettivamente, che “l’attuale livello della Cybersecurity espone le nostre risorse critiche ad un potenziale stato molto vulnerabile“, e che “l’accesso privilegiato ai sistemi critici nonché ai dati è inappropriato“. (puoi continuare l’approfondimento sul testo originale della denuncia seguendo questo link)
Perché continuare ad usare i prodotti di una software house che evidentemente, in un modo o nell’altro, continua ad ingannare i suoi clienti? Non bastano forse i pesanti databrech subiti da questa Corporation negli anni passati a mettere sul chi vive il consumatore?
…evidentemente no, se ancora molte aziende italiane (ma anche estere) continuano ad utilizzare (probabilmente nella più beata ingenuità…o forse a causa di una più preoccupante negligenza massificata?) software commerciali sviluppati da questa ormai ingannevole software house. Timore di cambiare fornitore o pigrizia per un ipotetico passaggio al mondo Open Source? Solo il tempo e gli incidenti informatici attuali e futuri dimostreranno ai clienti SolarWinds quanto costa (in termini di migliaia di dollari o di euro) la mancata valutazione di alternative, magari di alternative basate su software di monitoraggio Open Source: versatili, efficienti, spesso lowcost quando non del tutto FOSS, ma soprattutto più sicuri poiché liberamente ispezionabili dalle Community (Open Source —> codice aperto…oltre che libero!) nonché riprogrammabili dagli utenti, e spesso progettati con i principi ingegneristici della Security by Design in testa…e non con l’obiettivo di massimizzare a prescindere i profitti con la vendita di licenze di software consapevolmente buggato e insicuro.
…forse il sistema operativo più sicuro mai realizzato?
HardenedBSD implementa soluzioni innovative di mitigazione degli exploit, nonché tecniche di Hardening del kernel derivate dalla community FreeBSD. L’approccio alla sicurezza Defence in Depth è sostanzialmente un approccio costituito da strati di controlli di sicurezza informatica contigui: per avere accesso, gli aggressori devono tassativamente superare ogni strato. HardenedBSD promette di adottare (così è indicato nero su bianco sul loro portale) un approccio olistico alla sicurezza informatica ingegnerizzando scrupolosamente il sistema operativo attraverso collaudate tecniche di Secure Coding, e implementando tecnologie di prevenzione e mitigazione degli exploit. “Lavoriamo con FreeBSD e su qualsiasi altro progetto basato su FreeBSD per includere le nostre innovazioni“. “Il nostro obiettivo principale è fornire una reimplementazione pulita delle parti pubblicamente documentate del patchset grsecurity per Linux“.
OPNsense ad esempio, un firewall Open Source che originariamente era basato su FreeBSD, ha integrato fin dal 2016 l’implementazione della funzionalità ASLR di HardenedBSD, e ha completato la migrazionea HardenedBSD il 31 gennaio 2019.
È interessante notare, infine, quanti pochi siano i CVE relativi ad HardenedBSD, e quanti innumerevoli, invece, siano quelli riferiti agli altri sistemi operativi: il confronto parla da solo.
Letture di approfondimento: – link1 (una tabella comparativa delle feature di sicurezza informatica tra HardenedBSD e il resto del mondo BSD) – link2 (manuale ufficiale del sistema operativo) – link3 (tutte le feature di sicurezza informatica elencate punto per punto) – link4 (soluzioni di firewalling in ambito bancario basate su HardenedBSD) – link5 (elenco di mailing list)
Toyota, uno dei più grandi produttori di auto al mondo, pochi giorni fa ha subito un fermo produzione non banale in 12 su 14 delle sue fabbriche in Giappone, fermo macchina che ha causato la mancata fabbricazione di circa 13.000 veicoli. Un attacco hacker andato a segno? Forse un ransomware? Nulla di tutto questo: è bastata una manutenzione programmata di alcuni database server, su cui tuttavia in quel momento non era disponibile sufficiente spazio disco. Questo tipo di incidenti informatici (contrariamente a quanto pensa il mainstream, la Cybersecurity non ha solo a che fare con gli hacker o i malware) dimostra la complessità delle connessioni tra i vari sistemi operativi e dispositivi, le diverse e numerose procedure operative da non trascurare, l’importanza fondamentale del monitoraggio dei sistemi e dei servizi ICT, la serietà con cui andrebbe effettuato il testing dei processi di backup e delle connessioni ridondate, le potenziali conseguenze sul piano tecnico ed economico di un incidente generato evidentemente dalla negligenza.
Investire in Sicurezza Informatica vuol dire anche investire in sistemi di monitoraggio, vuol dire prevenire potenziali incidenti informatici di questo e di altro tipo. L’incidente della Toyota evidenzia almeno due aspetti su cui riflettere: il primo è che pur essendo una solida Industria 4.0 (come Toyota e altri colossi del settore), storici e banali incidenti informatici (banali nelle cause tecniche, ma non nelle conseguenze) di questo tipo posso comunque capitare se i sistemisti di turno non vigilano a sufficienza su allarmi e sensori; il secondo, è che pur investendo in costosi software commerciali (come verosimilmente avrà fatto Toyota) questi problemi possono comunque sorgere se il progettista, il sysadmin o il dirigente di turno non ha pensato bene (o addirittura non ha mai più di tanto immaginato!) agli scenari di fault (un sottoinsieme della Cyber threat modeling) e alle cause che possono generarli…ergo, è sempre l’ingegno dell’Uomo unito alla nostra attenzione che fa la differenza, è sempre la nostra capacità di immaginare le opportunità tecnologiche piuttosto che le potenziali minacce informatiche nei contesti più disparati che può fare la differenza tra un incidente informatico e una serena continuità di servizio, non lo strumento adottato in sé.
Nagios e CACTI sono due eccellenti software di monitoraggio sistemistico, molto utili a tal fine, peraltro Open Source. Certo non sono gli unici, ma ne garantisco la loro efficacia.
E tu, cosa utilizzi come sistema di monitoraggio, e cosa come sistema di backup? Li testi entrambi periodicamente? Ne effettui il monitoraggio H24 con procedure a prova di fault, magari anche con l’ausilio di un SIEM?
Fantastico syslog server che nella sua versione gratuita consente di raccogliere e gestire messaggi syslog al massimo da 5 indirizzi IP sorgente: non è decisamente intuitivo il fatto che se non si provvede a editare la maschera in alto subito dopo l’installazione, i pacchetti syslog di tali client – pur se configurati a puntino come è successo a me – Windows o Linux che siano, non verranno visualizzati nella finestra principale del server mai e poi mai (tale problema non si manifesta nella versione a pagamento: in tal caso, infatti, basterà inserire solo l’IP 255.255.255.255 per autorizzare la raccolta di tutto il traffico syslog diretto al server).
Un video esplicativo delle sue tante funzionalità.
Le applicazioni e i moderni siti Web gestiscono ormai enormi quantità di traffico HTTPS. Due dei principali strumenti per garantire l’efficienza dei sistemi su larga scala sono i bilanciatori di carico (o Load Balancer) e i proxy inversi (o Reverse Proxy)
Tuttavia, affrontano la gestione del traffico in modi leggermente diversi.
I Load Balancer si occupano di instradare le richieste dei client su più server, al fine di distribuire agilmente il traffico di rete prevenendo colli di bottiglia: ciò aiuta a massimizzare il throughput, riducendo i tempi di risposta e ottimizzando l’utilizzo delle risorse. Quando in un’architettura di rete è presente un Load Balancer, ecco cosa accade: 1) le richieste dei client vengono inviate al Load Balancer invece che direttamente ai server che ospitano l’applicazione 2) attraverso un algoritmo di bilanciamento, viene selezionato uno dei server disponibili dall’elenco degli host a disposizione del Load Balancer 3) la richiesta del client in coda viene inoltrata al server selezionato. 4) il server elabora le richieste e invia la risposta al Load Balancer 5) a sua volta il Load Balancer inoltrerà la risposta al client
Un Reverse Proxy, viceversa, è un server che si trova tra i client esterni e le applicazioni interne. Sebbene i Reverse Proxy possano distribuire il carico di rete come farebbe un Load Balancer, forniscono funzionalità avanzate come la terminazione del traffico TLS/SSL, la memorizzazione in cache, nonché aspetti di sicurezza informatica. I Reverse Proxy sono più interessati a limitare e salvaguardare l’accesso al/ai server.
Sebbene Load Balancer e Reverse Proxy possiedano teoricamente funzionalità distinte, nella pratica i confini possono confondersi, poiché molti software possono espletare sia le funzioni di un Load Balancer che quelle di un Reverse Proxy, come ad esempio è in grado di fare Nginx, un eccellente software FOSS (giunto ormai alla versione 1.25 nel momento in cui sto scrivendo) che può svolgere entrambi i ruoli a seconda della configurazione.
Microsoft Office e Google Docs al momento sono i software più utilizzati nel mercato delle Suite per ufficio, ossia quelle applicazioni per scrivere ed editare testi, creare fogli di calcolo e produrre presentazioni. Ma entrambe le suite hanno anche alcune limitazioni, che in certi casi possono costituire una barriera per alcune categorie di utenti.
Per esempio, Microsoft Office richiede una licenza che va acquistata, ma soprattutto gestita quando si passa da un computer a un altro, e inoltre non è disponibile per Linux se non in versione on-line tramite browser. Google Docs, d’altro canto, salvo casi particolari è utilizzabile solo quando si è connessi a Internet, e comunque implica la possibilità che Google legga (!!!) quello che scriviamo (“Accediamo ai tuoi contenuti privati soltanto se abbiamo la tua autorizzazione o se siamo obbligati per legge”, sostiene Google nel suo portale ufficiale), con ovvie implicazioni legate a possibili violazioni della Privacy personale e professionale.
Una soluzione a questi scenari è costituita da LibreOffice, una suite gratuita realizzata dalla Document Foundation, che di recente ha pubblicato la relativa versione 7.6 Community. LibreOffice permette di creare gratuitamente testi avanzati, fogli di calcolo e presentazioni nel formato standard OpenDocument, ma è altrettanto in grado di leggere modificare e creare file nei più classici formati proprietari di Microsoft Office.
LibreOffice, anche se accetta donazioni, è da sempre gratuito nonché Open Source, con l’indubbio vantaggio di offrire la massima trasparenza e flessibilità: l’utente può così evitare i costi e soprattutto le complicazioni dovute all’uso di licenze commerciali, è disponibile in oltre 120 lingue (compreso naturalmente l’italiano) su tutti i principali sistemi operativi, e dal 2011 viene sviluppato e mantenuto da una vasta comunità internazionale di programmatori volontari.
Lo utilizzo quotidianamente dal 2012 per tutti i documenti Office, compresi quelli di lavoro, e trovo impagabile la sua semplicità d’uso: fa tutto quello che mi serve su tutti i computer che uso, non mi assilla con scadenze e minacciose richieste di rinnovi di licenza come invece mi accadeva quando ero ancora un utente Microsoft Office. Vero, la compatibilità con alcuni formati Microsoft Office non è perfetta (specialmente negli scenari con documenti aventi formattazioni complesse) ma nella maggior parte dei casi è assolutamente accettabile, e se si utilizza il suo formato di default, ossia OpenDocument, si ha la garanzia di poter rileggere e rieditare i propri documenti anche a grandissima distanza di tempo.
Se desideri provarlo o direttamente installarlo, puoi scaricare LibreOffice dal seguente URL: sono disponibili le versioni per Windows, macOS e Linux. Ha un altro vantaggio importante rispetto alla concorrenza: funziona anche su vecchisistemi operativi (da Microsoft Windows 7 SP1 in su, e da macOS 10.12 in su) e offre anche alcuni prodotti per i s.o. Android e iOS. La versione per macOS è disponibile sia per i computer dotati dei recenti processori Apple Silicon, che per quelli che montano i più tradizionali processori Intel.
Questo video riassume le principali novità della versione 7.6, la più recente nel momento in cui sto scrivendo:
A onor del vero, per esperienza posso confermare che dei punti di criticità esistono, in particolare nell’ipotesi d’implementazione di macro VBA o nella gestione di file Excel di grandi dimensioni (per intenderci con griglie che ospitano decine di migliaia di righe contigue), ma trattasi di scenari poco diffusi, ergo, LibreOffice costituisce un FOSS funzionale ed aggiornato, valida alternativa per tantissimi utenti Microsoft Word, Excel e PowerPoint, nonché per tutti quelli come me stanchi di dover aggiornare tempestivamente i vari Microsoft Office installati presso i clienti poiché privi delle necessarie hotfix di sicurezza informatica pubblicate da Microsoft in ritardo rispetto ai relativi exploit scovabili in rete o nell’underground (una fra le tante storiche vulnerabilità, ma emblematica di quanto sia opportuno patchare o direttamente abbandonare sistemi Microsoft Office: l’RCE Follina)
Il buon vecchio FOSS draw.io (divenuto da poco app.diagrams.net) conserva ancora il suo prestigio e la sua semplicità d’utilizzo nel 2023, continuando ad essere un valido strumento per molti progettisti ICT/OT (me compreso), valida alternativa al commerciale Microsoft Visio.
È possibile usarlo sia on-line accedendo al portale app.diagrams.net, piuttosto che appunto off-line scaricando gratuitamente l’applicazione standalone da questa URL GitHub.
Semplice ed essenziale nel suo utilizzo ma anche estremamente versatile, il software è dotato di numerosissime icone ed oggetti con cui realizzare nonché arricchire schemi di Networking e/o schemi architetturali di Cybersecurity. Per quanto riguarda lo stile grafico c’è solo l’imbarazzo della scelta tra i suoi numerosi template.
Alcuni esempi:
Preferisco francamente la versione standalone, installabile in locale: lavorare con calma al progetto, salvando poi la bozza architetturale sulla mia postazione in uno dei formati supportati (.html, .png, .svg o .drawio (il default)) non ha prezzo, rappresenta per me un connubio tra Creatività e Ingegneria informatica applicata.
A progetto finito, si potrà inviare il file al cliente con uno dei formati selezionati in precedenza, scegliendo se condividere l’intero progetto editabile (e quindi dando al nostro interlocutore a sua volta la possibilità di rieditarlo), o solo la veste grafica.
Modelli di attacco informatico per aggirare l’autenticazione a due fattori (o 2FA, Two-Factor Authentication, come d’ora in avanti indicherò nell’articolo) ne esistono da anni, ma alcuni metodi stanno diventando sempre più pervasivi a causa dell’aumento delle organizzazioni che adottano e implementano la 2FA con leggerezza. Sebbene siano svariati i modi attraverso cui un attacker possa tentare di violare un account su cui è stata abilitata la 2FA, il presente post tratta di una tecnica facile da sfruttare, ma difficile da prevenire: i siti di phishing proxy.
I siti di phishing proxy sono versioni più avanzate della tipica pagina di phishing per la raccolta di credenziali, in quanto consentono l’intercettazione dei token di autenticazione. Tali siti sono anche noti come siti Man-in-the-Middle/Machine-in-the-Middle (“MitM“) o Adversary-in-the-Middle (“AitM“) poiché si pongono tra l’utente (vittima) e un servizio apparentemente legittimo ma impersonato dall’attacker.
Esistono diversi kit di phishing disponibili su GitHub, e creati per essere utilizzati da Red Team e penetration tester consentendo di creare i propri siti web da utilizzare in attacchi di phishing proxy: Evilginx2, Modlishka e EvilnoVNC sono tutti kit per effettuare phishing che dispongono di modelli per servizi popolari come Okta®, Microsoft 365® (“M365“), Google Workspace® e altri.
Evilginx2: una panoramica operativa Si tratta di un framework FOSS per realizzare attacchiphishing. Evilginx2 è scritto nel linguaggio di programmazione Go e viene fornito con vari phishlet integrati per imitare egregiamente le pagine di logon per Citrix, M365, Okta, PayPal, GitHub nonché altri sistemi e ambienti operativi: per ospitare il sito di phishing deve essere configurato utilizzando un’infrastruttura server nonché un dominio personalizzato.
L’attacker acquista un dominio, configura il DNS ed esegue i comandi necessari per strutturare il sito di phishing su di un server, ad esempio con il phishlet O365 integrato: nel periodo di tempo in cui il sito rimarrà attivo e raggiungibile, tutti gli utenti target che visiteranno il collegamento di phishing generato da Evilginx2 saranno accolti da una pagina web graficamente identica alla legittima pagina di accesso Microsoft. I comuni consigli di sicurezza informatica (“best practices”) sostengono che le pagine senza l’icona del lucchetto (la cui presenza indica l’effettiva adozione del protocollo di crittografia TLS tra client e server HTTPS) nella barra delle URL del browser dovrebbero mostrare una bandierina rossa in caso di attività dannose o di problemi con il certificato digitale: ma Evilginx2 a sua volta richiede l’adozione di un certificato TLS da Let’s Encrypt, una Certification Authority gratuita e (per usare un sottile eufemismo) poco attenta ai controlli di Identità, il che significa che le sue comunicazioni sono cifrate con HTTPS, con conseguente possibilità di effettuare phishing anche dei portali che sfruttano tale protocollo: per un utente l’unico modo per distinguere la seguente pagina web da quella di accesso legittima (ossia l’autentica) sarà l’analisi dell’URL o del certificato digitale (questo secondo caso è spesso prerogativa dei soli addetti ai lavori, programmatori, sistemisti o professionisti InfoSec).
Pagina di accesso fraudolenta visualizzata dalla vittima del phishlet Evilginx2O365 integrato
Se un utente ignaro inserirà le sue credenziali nella pagina di accesso fraudolenta, il sito di phishing le controllerà con Microsoft per assicurarsi che siano autentiche. Successivamente, all’utente verrà richiesta una normale verifica 2FA attraverso uno qualunque dei metodi abilitati sul proprio account M365. Ad esempio, se l’account della vittima è stato configurato per ricevere SMS e/o telefonate come secondo fattore di autenticazione, la schermata che gli si presenterà potrà essere così:
Se la 2FA viene approvata con successo, alla vittima sembrerà di aver effettuato un accesso con le proprie credenziali. Gli sforzi per accedere a risorse aggiuntive richiederanno un altro accesso poiché l’attacker dovrà ora sganciarsi dal sito ingannevole per accedere al vero workspace on-line della vittima. Gli utenti potrebbero essere avvertiti da una richiesta aggiuntiva di autenticazione o dal fatto che tutto ciò che è stato promesso loro nell’e-mail di phishing non è al momento disponibile, ma molti utenti potrebbero ancora non rendersi conto di essere stati oggetto di phishing.
Dall’altra parte (lato attacker) l’operatore del sito di phishing avvierà il comando sessions dalla propria istanza Evilginx2, potendo così visualizzare tutte le credenziali acquisite, nonché i dettagli su qualsiasi sessione specifica e token associati, similmente al seguente screenshot:
L’attacker ora provvederà a copiare il testo del cookie (visibile nella parte inferiore delle informazioni sulla sessione) importandolo in un browser utilizzando qualsiasi plug-in di modifica dei cookie (come ad esempio EditThisCookie). Quando aggiornerà la pagina di accesso di Microsoft, verrà eseguito l’accesso come utente sottoposto a phishing. Il seguente diagramma mostra ad alto livello il workflow dell’attacco:
Evidenze utili a scopo di Digital Forensics Sebbene possa essere intricato identificare con certezza l’uso di un sito di phishing che sfrutti proxy malevoli come Evilginx2, esistono modelli su cui periti forensi e analisti InfoSec possono far affidamento per accertare se un attacker ha effettivamente rubato il cookie di un utente attraverso un sito di phishing, tra cui:
accessi che continuano a essere effettuati da indirizzi IP anomali
tutte le attività degli attacker avranno lo stesso SessionId, anche se il cookie viene spostato dal server di phishing per essere importato in un browser di un altro sistema
gli accessi iniziali dal server di phishing appariranno come la stringa dello User Agent legittimo della vittima
Indirizzi IP anomali In questo scenario è possibile applicare i tipici metodi per identificare compromissioni della posta elettronica. Anche se all’utente sembra che stia accedendo tramite Microsoft, le sue credenziali verranno inviate a Microsoft tramite il sito di phishing, quindi sarà l’indirizzo IP pubblico del phishing server, e non l’IP del device utilizzato dall’utente, che apparirà nei log del primo accesso.
Coerenza dell’ID di sessione L’indirizzo IP del server di phishing viene tracciato a seguito del primo accesso, ma potrebbe cambiare con la successiva attività loggata. Nei tipici attacchi AitM, l’accesso avviene sul server di phishing ma l’autore dell’attacco poi sposta il cookie su di un’altra macchina, per importarlo in un browser. Poiché il cookie è il medesimo, il SessionId nell’Unified Audit Log (“UAL”) sarà coerente tra gli accessi, anche se proverranno da indirizzi IP e/o User Agent differenti. Per gli eventi riconducibili a UserLoggedIn, nell’UAL è possibile reperire il SessionId sotto la voce “Device Properties”.
Esempi di Audit Log unificati che mostrano gli accessi effettuati dagli attacker
Nella griglia l’indirizzo IP del server di phishing è evidenziato in rosso, e termina con .91, mentre l’indirizzo IP del sistema fake gestito dall’attacker è evidenziato in arancione (ha .94 come ultimo ottetto). Gli accessi successivi con l’indirizzo IP .94 si sono verificati quando l’attacker ha importato il cookie catturato dal server di phishing in un browser Chrome, continuando a interagire con l’account della vittima: il SessionId visualizzato in blu è lo stesso durante tutta l’attività di phishing, poiché l’attacker ha riutilizzato il medesimo cookie di autenticazione.
User Agent pattern In molte indagini riguardanti accessi abusivi alle e-mail, chi si occupa di Digital Forensics può rilevare l’attività criminosa seguendo le tracce dello User Agent, che è una stringa che identifica il tipo di dispositivo e il client utilizzati per accedere all’account. Generalmente l’utente legittimo avrà uno User Agent diverso da quello dell’attacker poiché quest’ultimo accede dalla propria infrastruttura. Tuttavia, Evilginx2 è in grado di acquisire la stringa dello User Agent della vittima, dando così la possibilità all’attacker di clonare l’User Agent dell’utente legittimo: questo significa che sebbene il sito di phishing possa essere eseguito su un sistema Linux, se la vittima fa click sul collegamento utilizzando Firefox su un computer Windows 10, lo User Agent che sarà tracciato nei file di log risulterà identico a quello originale della vittima. Nei log UAL mostrati nella griglia, ad esempio, la finta vittima durante i test ha effettuato l’accesso al sito di phishing utilizzando Windows 10 e il browser Opera, lo stesso User Agent che viene rilevato negli accessi iniziali originati dall’indirizzo IP del server di phishing.
Questo tentativo di fondersi con accessi legittimi nei log di autenticazione ha implicazioni sostanziali per gli investigatori: senza uno User Agent anomalo, l’unico chiaro indicatore di compromissione nell’evento di accesso è l’indirizzo IP difforme. In uno scenario in cui l’attacker dovesse impiegare una botnet o un’altra infrastruttura appartenente a ISP aziendali, il rilevamento di questa attività diventerebbe molto complicata.
Nella seconda fase dell’attacco, una volta catturati i cookie, il phisher provvederà a importarli nel suo browser: il truffatore potrà visualizzare lo User Agent dalla sessione catturata all’interno di Evilginx2, e clonarlo all’interno del proprio browser in modo da non destare sospetti.
Tecniche di Prevenzione
Autenticazione FIDO2 I meccanismi di autenticazione basati su hardware che sfruttano i protocolli FIDO2 attualmente sembrano essere il miglior modo per mitigare il rischio che un attacker eluda la 2FA in una qualunque delle sue forme. L’autenticazione FIDO2 utilizza chiavi crittografiche preregistrate (con un servizio come Microsoft 365) per consentire all’utente di autenticarsi su quel sito: la sfida presentata al dispositivo FIDO2 dal servizio include dettagli sull’origine della richiesta (come l’URI del sito) ed é per questo che i tentativi di autenticazione a un sito di phishing fraudolento utilizzando questi protocolli falliscono miseramente. Esempi di autenticazione FIDO2 includono token hardware come Yubikeys o una soluzione integrata nel laptop utente come Windows Hello.
Tuttavia, laddóve sono disponibili anche metodi di autenticazione alternativi, esiste il rischio di attacchi di downgrade all’autenticazione FIDO2: ad esempio, un’organizzazione può aver impostato l’autenticazione FIDO2 come metodo principale, ma in alternativa potrebbe anche consentire l’invio di password monouso (OTP) tramite SMS o e-mail. Oltre a questo rischio, ci sono ragioni logistiche per cui l’autenticazione FIDO2 può essere difficile da implementare, infatti, il suo utilizzo costituisce un cambiamento strutturale per la maggior parte degli utenti e in molti casi comporta costi aggiuntivi per le organizzazioni che allo stato attuale utilizzano standard di autenticazione vetusti.
Circoscrivere gli accessi Le organizzazioni che continuano a utilizzare notifiche push, telefonate o SMS come secondo fattore di autenticazione dovrebbero prendere in considerazione l’utilizzo di un approccio di sicurezza informatica a più livelli che includa anche la limitazione degli accessi esterni agli account utente: questo scenario generalmente viene implementato consentendo l’accesso remoto solo da indirizzi IP approvati, come il range degli indirizzi IP delle VPN aziendali, ma soprattutto richiedendo che i dispositivi di autenticazione siano gestiti dall’organizzazione attraverso l’utilizzo di PKI, certificati digitali e architetture di rete basate sullo standard Zero Trust: tali controlli e modelli architetturali costituiscono misure di Cybersecurity efficaci e drastiche in grado di rendere estremamente difficile la vita alle cybergang.
Protocolli di sicurezza su più livelli Ulteriori tecniche che aiutano a ridurre al minimo il rischio che questo attacco vada a segno già nelle sue fasi iniziali includono l’utilizzo di filtri antispam (utilizzando i filtri incorporati nella piattaforma di posta elettronica aziendale piuttosto che (ancora meglio) quelli disponibili in un’appliance di terze parti) e di proxy web per filtrare il traffico HTTP/HTTPS degli utenti. Attraverso l’uso dei proxy, agli utenti può essere facilmente impedito di visitare siti di phishing noti o altri portali appartenenti a categorie rischiose per la postazione stessa dell’utente ma soprattutto per la rete informatica dell’organizzazione. Un altro fattore chiave è la formazione in ambito Cybersecurity, in particolare sul tema Phishing: istruire dipendenti, manager e consulenti esterni dell’organizzazione a identificare email palesemente contraffatte o pericolose attraverso “campagne di Phishing” a sorpresa, volte a scoprire chi in azienda non è ancora in grado di distinguere un’email autentica da un tentativo di Phishing, è fondamentale, aggiungerei doveroso per un reale progresso della Cybersecurity Posture.
Sebbene la riduzione della durata dei token non impedisca completamente la possibilità di un accesso abusivo agli account target, limita concretamente l’impatto complessivo sull’organizzazione, riducendo al minimo il tempo che un attacker avrà a disposizione per raggiungere i suoi obiettivi fraudolenti. Nello specifico di M365, i Sysadmin possono modificare la durata della sessione: l’accesso condizionato può infatti essere configurato anche per particolari gruppi di utenti, come gli amministratori. Il reset delle password in M365 invaliderà i vecchi token persistenti, costituendo quindi un’efficace deterrente per gli account che hanno subìto questo attacco.
Considerazioni conclusive La Cybersecurity è in continua evoluzione e le capacità degli attacker di eludere la 2FA non sono una novità. I furti di sessione e gli attacchi AitM esistono da anni, ma con il crescente numero di organizzazioni che stanno adottando la 2FA come linea difensiva, gli attacker stanno a loro volta raffinando le tecniche per effettuare accessi abusivi negli account delle vittime. Tali attacchi costituiscono una minaccia non solo per i classici sistemi e servizi di posta elettronica aziendale (BEC), poiché anche altri servizi come Okta, Citrix ecc.. sono potenzialmente a rischio della medesima minaccia. La compromissione di questi account può avere come conseguenza la violazione della rete dell’organizzazione su vasta scala, culminando nella distribuzione a tappeto di ransomware, nel furto e/o nell’esfiltrazione di dati, nonché, dulcis in fundo, nell’installazione di kit APT per un futuro riutilizzo o rivendita delle backdoor impiantate nella rete del target, ovviamente a totale insaputa dell’organizzazione.
Gli attacker possono potenzialmente aggirare la 2FA anche senza possedere le competenze tecniche necessarie per creare un sito di phishing proxy. Servizi di Phishing-as-a-Service si noleggiano per circa duecento euro al mese, una cifra irrisoria rispetto a quanto può guadagnare illecitamente un truffatore da un singolo bonifico bancario reindirizzato. Scenario ancora più facile per l’attacker è quello in cui l’utente target (o potremmo dire utOnto in questo caso!) disgraziatamente accetti notifiche push sul proprio smartphone anche quando non ha avviato di sua iniziativa il logon su di un portale web: sebbene la 2FA sia uno strumento indispensabile e non negoziabile nel mondo della Cybersecurity, non costituisce una soluzione definitiva. Perduto e perso chi crede fermamente il contrario.