LogonTracer è uno di quegli strumenti Open Source che non dovrebbe mai mancare nell’arsenale di chi s’occupa di Incident Response e/o di Digital Forensics (DFIR)
Questo software analizza gli eventi correlati agli accessi (logon andati a buon fine), associa gli hostname (e/o gli indirizzi IP) e gli account correlati visualizzandoli in un grafico schematico: in questo modo è possibile vedere in quale account si verifica il tentativo di accesso, e quale host viene utilizzato. È davvero utile per controllare rapidamente gli account compromessi in contesti MicrosoftAD (Active Directory) aziendali.
Nei grafici generati da LogonTracer ogni indirizzo IP, così come ogni hostname, viene rappresentato da un nodo avente delle connessioni (che rappresentano l’ID dell’evento) all’altro nodo (utente). LogonTracer consente quindi di filtrare, cercare ed esportare risultati, visualizzare la cronologia, e molte altre funzionalità.
Utilizza anche PageRank, il modello Hidden Markov e ChangeFinder per rilevare host ed account dannosi analizzando l’Event Viewer.
È anche possibile visualizzare i registri eventi in ordine cronologico:
Valido strumento da affiancare all’utilizzo di un SIEM (attenzione: da affiancare, non con cui sostituire!), puoi scaricarlo gratuitamente dalla pagina ufficiale del tool.
🔴 Attenzione: rammenta di abilitare l’audit su ogni workstation su cui desideri analizzare le attività di accesso (Audit Credential Validation, Audit Kerberos Authentication Service, Audit Kerberos Service Ticket Operations, Audit Logon, Audit Special Logon, Logoff)
Vero, ci sono già HackTheBox, i lab e le certificazioni del SANS Institute, così come le certificazioni e i lab di OffSec… indubbiamente ottimi lab per esercitarsi col penetration testing in ambito Microsoft, ma hanno un loro costo, e soprattutto una loro scadenza.
Se invece vuoi farti un po’ le ossa gratuitamente, puoi usare GOAD: un laboratorio virtualizzato (giunto alla versione 3 (v3) nel momento in cui sto scrivendo) comprensivo di svariati scenari Active Directory (domini e foreste, piccole, medie, grandi realtà ecc..) volutamente vulnerabili.
Scenario GOAD comprensivo di 5 VM, 2 foreste e 3 domini (full goad lab) volutamente vulnerabili ad attacchi informatici
Inizia oggi, 1 dicembre 2024, il periodo (che terminerà il 28 febbraio 2025) per iscrivere le organizzazioni soggette alla direttiva NIS2, pubbliche e private, sulla piattaforma messa a disposizione dall’Agenzia per la Cybersecurity Nazionale. La registrazione in questione è quella prevista dal primo comma dell’art. 7, D.Lgs. 138/2024. Nonostante in tale norma sia specificato che la registrazione può essere effettuata dal 01 gennaio al 28 febbraio di ogni anno successivo all’entrata in vigore della direttiva NIS2, in fase di prima applicazione è previsto che la registrazione possa avvenire a partire dalla data di pubblicazione della piattaforma (art. 42, comma 3, D.Lgs. 138/24) ergo dal 1 dicembre 2024.
Per associare il punto di contatto al soggetto è necessario indicare: – per le pubbliche amministrazioni, il codice IPA – per i soggetti pubblici e privati, il codice fiscale. Il punto di contatto dovrà caricare il titolo giuridico che lo abilita ad operare per conto del soggetto nel contesto NIS (a meno che non sia il rappresentante legale o un procuratore generale). Il processo di censimento del punto di contatto e l’associazione al soggetto NIS si conclude con l’invio di un link di richiesta di convalida al domicilio digitale del soggetto stesso. La dichiarazione che il punto di contatto dovrà compilare è suddivisa in 4 sezioni: – contesto – caratterizzazione – tipologie di soggetto – autovalutazione
Dopo aver compilato la dichiarazione, il punto di contatto dovrà prendere visione del riepilogo delle informazioni fornite, accettare le clausole di responsabilità e trasmettere la dichiarazione all’Agenzia. Una copia della dichiarazione verrà inviata al domicilio digitale del soggetto.
Un mio conoscente lavora in uno studio di ingegneria civile, dove si occupano di progettazione: mi ha contattato di recente poiché nel loro ufficio hanno ricevuto un’email dalla società Autodesk in cui sono stati avvisati (ma il mio conoscente così come i suoi colleghi ne erano già al corrente!) che la versione di Autocad che stavano utilizzando su tutti i pc dello studio era sprovvista di regolare licenza (nel gergo tecnico ci si riferisce a software crackato).
Attraverso l’email, Autodesk ha “gentilmente” avanzato ai legali dello studio la richiesta di 15000€ per il tempo di utilizzo del software Autocad già trascorso e quello futuro, pena la disattivazione perenne da remoto del software (leggi blocco e impossibilità di ulteriore utilizzo delle varie copie di Autocad operative nello studio).
Mi è stato chiesto: ma Autodesk può farlo? Tecnicamente, accettando le condizioni contrattuali durante l’installazione del software, di fatto si autorizza Autodesk a condurre verifiche da remoto (ed ho riferito al mio interlocutore che personalmente trovo il comportamento della software house più che lecito). Viceversa, se legalmente possano o non possano farlo, ossia bloccare da remoto un software privo di licenza comunicando quello che di fatto è stato un ultimatum, è una pastoia legale che lascio ai veri esperti in Diritto dell’Informatica (avvocati praticanti, o almeno si auspica) . Concludendo, al mio conoscente – ma soprattutto al suo responsabile che anni addietro decise di autorizzare le installazioni pirata – tecnicamente ho suggerito alcune dritte per evitare il blocco da remoto, ma non ho dato seguito alle modifiche sulle postazioni dello studio poiché personalmente sono assolutamente d’accordo con Autodesk: se il software che si decide di installare nasce come commerciale (da non confondere, quindi, con i gratuiti software muniti di regolare licenza FOSS), andrebbe regolarmente pagato, ergo acquistato, non crackato, così come andrebbero sempre remunerate le attività di manutenzione e/o le consulenze fatte da programmatori, sistemisti o esperti di sicurezza informatica di cui ci si avvale, a meno che questi signori non lavorino gratis per i propri committenti. Questa propensione (tremendamente italiana) ad avvalersi di software crackato è vergognosa e pericolosa, soprattutto perché molto spesso gli utilizzatori finali (architetti, ingegneri, progettisti meccanici o elettronici solo per citare il mondo Autocad) lavorano presso rinomati studi che possono eccome permettersi l’acquisto di qualche licenza software in più: quello che invece accade più o meno regolarmente, a mio avviso, è che in Italia molte aziende e tantissimi utenti decidono di non farlo, ossia scelgono anticipatamente di barare installando software pirata o (che dir si voglia) crackato con il beneplacito del tecnico informatico di turno, solo che questa gente dimentica che la malìzia non è una Virtù ma un vizio: come tutti i vizi, prima o poi qualcuno viene a chiedere il conto ai trasgressori.
Pessima idea quella di usare software crackato in azienda (sotto diversi punti di vista: etici, legali ma soprattutto dal punto di vista della (in)sicurezza informatica) ma se proprio non puoi farne a meno, come minimo assicurati di installarlo e utilizzarlo all’interno di una VM isolata dalle altre postazioni della tua rete LAN, altrimenti la prossima rete hackerata da un ransomware potrebbe essere proprio la tua.
In Italia, informaticamente parlando (ma anche sotto altri aspetti), tutto (il peggio) è possibile: anche che la Giurisprudenza debba ribadire l’ovvio, lo scontato, il lapalissiano, esattamente come il titolo di questo articolo. Dovrebbe essere una verità inequivocabilmente scontata e palese per tutti, ma evidentemente non lo è se una sentenza della Suprema Corte (sent. n. 50205) ha confermato la condanna penale di un dirigente che aveva utilizzato le credenziali di accesso di un suo “sottoposto” per accedere al sistema informatico aziendale.
🔑 i FATTI: – il dirigente si era fatto comunicare le credenziali di un collaboratore – aveva utilizzato queste credenziali per accedere a circa 90.000 schede individuali – riteneva (a torto) che la sua posizione gerarchica lo legittimasse a tale comportamento
⚠️ PRINCIPIO stabilito dalla Suprema Corte: – La posizione di superiore gerarchico NON autorizza l’accesso ai dati tramite credenziali altrui: questo comportamento integra il reato di ACCESSO ABUSIVO a SISTEMA INFORMATICO (art. 615-ter c.p.)
📋 CONSEGUENZE PRATICHE per AZIENDE e ORGANIZZAZIONI: – Ogni dipendente deve avere CREDENZIALI PERSONALI e non cedibili; – Le DELEGHE di ACCESSO devono essere espressamente AUTORIZZATE; – Va implementato un SISTEMA di PROFILAZIONE UTENTI con diversi LIVELLI di AUTORIZZAZIONE; – Occorre una POLICY AZIENDALE chiara sulla GESTIONE delle CREDENZIALI; – Rischio di responsabilità penale per i TRASGRESSORI.
💡 AZIONI da intraprendere: – Revisione tempestiva delle policy di accesso ai sistemi ICT; – Implementazione di protocolli di sicurezza informatica (AUTENTICAZIONE, PROFILAZIONE, AUTORIZZAZIONE e PROTEZIONE) adeguati; – Formazione specifica del personale; – Vulnerability Assessment e Audit dei sistemi; – Adeguamento dei modelli organizzativi al GDPR.
Come ripeto spesso ai miei studenti e contatti professionali, la sentenza (una delle tante) sottolinea come la Cybersecurity non sia solo una questione tecnica, ma anche legale, con rilevanti profili di responsabilità penale (a questo indirizzo, chi fosse interessato può reperire e leggere la sentenza con calma)
Durante una visita ospedaliera fuori regione, annoiato tra un’attesa e l’altra, attraverso alcune scansioni di rete ho riscontrato una preoccupante malagestione nella rete Wi-Fi del policlinico. La segmentazione delle reti, che generalmente dovrebbe garantire un isolamento dei dispositivi interni da quelli esterni, risultava inadeguata: ho riscontrato che dispositivi di norma riservati al personale ospedaliero, come stampanti con firmware non aggiornato nonché fileserver, erano accessibili dalla rete Guest (tipicamente la rete WLAN dedicata alle utenze dei visitatori e pazienti di una struttura ospedaliera) semplicemente variando la subnet mask sul mio scanner di rete. Questo scenario rappresenta un rischio per la sicurezza informatica della rete ospedaliera, poiché l’assenza o la carenza di una efficace segregazione tra le reti pubbliche e quelle interne può esporre l’infrastruttura ospedaliera ad attacchi informatici.
In un contesto come quello sanitario, dove le reti informatiche sono già di per sé un’infrastruttura critica, trascurare la Cybersecurity può avere conseguenze ragguardevoli. Dispositivi non aggiornati o direttamente vulnerabili possono diventare una facile preda per attacchi ransomware, che possono compromettere la continuità dei servizi essenziali, mettendo a rischio la sicurezza fisica dei pazienti nonché le capacità operative dell’ospedale.
Le immagini qui sopra fanno riferimento a delle stampanti in rete: ma cosa succederebbe se gli attacker prendessero di mira i PLC usati dall’ospedale, che pure erano raggiungibili attraverso la medesima sottorete delle stampanti? (e che per carità divina ho evitato di postare!)
Mandiant ha recentemente rilasciato CAPA Explorer, una GUI (un’interfaccia grafica) per esplorare i risultati estratti da CAPA.
CAPA è un software FOSS utilizzato per velocizzare il processo di identificazione delle capacità di possibili malware, mappandole avvalendosi delle matrici MITRE ATT&CK e MBC 🔍
L’aspetto interessante è che adesso è possibile analizzare e scorrere tra i risultati usando appunto una comoda interfaccia grafica! 🖥️
CAPA, a sua volta, utilizza un insieme di regole per riconoscere i comportamenti specifici (pattern o capability) di un programma eseguibile. Le regole, che possono anche essere personalizzate dall’analista, descrivono azioni tipiche dei malware come (ad esempio): – capacità (capability) di comunicazione con un server esterno: questo potrebbe indicare che il malware sta cercando di inviare dati rubati o di ricevere nuove istruzioni. – capacità (capability) di cifrare o decifrare dati: la crittografia viene spesso utilizzata dai malware per occultare le proprie attività o per azioni estorsive (ransomware) – capacità (capability) di modificare il registro di sistema: moltissimi malware modificano il Registry di Windows per rimanere persistenti nel sistema o per disabilitare le difese di sicurezza. – Capacità (capability) di eseguire codice arbitrario: la capacità più insidiosa a fronte di un’infezione, in quanto permette al malware di eseguire qualsiasi azione sul sistema infetto, come se fosse eseguita da un sysadmin.
Un esempio dell’utilizzo di capa applicato ad un eseguibile
Concludendo, se come me ti occupi di Cybersecurity dovresti quantomeno valutare il suo utilizzo poiché: -> velocizza il processo di analisi dei malware: CAPA può analizzare rapidamente un gran numero di campioni di malware, identificando le loro funzionalità principali, ergo aiutando gli analisti InfoSec a concentrarsi sulle parti più insidiose del malware in esame -> facilita la condivisione delle informazioni: CAPA utilizza un formato di regole condivisibili, che permette alla comunità di ricercatori di malware e agli analisti di collaborare e di creare un database sempre più ricco di comportamenti e pattern malevoli -> è integrabile con i più diffusi software di reverse engineering (Ghidra, IDA, Binary Ninja)
Un esempio di utilizzo della GUI di CAPA, CAPA Explorer, applicato ad un malware per architetture x64
Prossimamente (data da destinarsi), un paio di post integrativi al presente articolo su: -> come creare regole in CAPA -> come integrare CAPA in un workflow di analisi malware
Certo, i confini e le proporzioni delineate nel grafico a torta in basso non sono e continueranno a non essere mai così nette e definite in nessuna organizzazione, ma globalmente questa infografica delinea a grandi linee il bias cognitivo di molta gente a proposito di ciò che si pensa sia dietro la sigla CYBERSECURITY (vero e proprio Leitmotiv professionale dei nostri tempi), rispetto alle problematiche attuali di cui la CYBERSECURITY è realmente costituita… ed appunto, il grafico in basso è indubbiamente una rappresentazione del settore meno sbrigativa e meno superficiale rispetto a quella illustrata nel primo grafico, ossia da quelle ipocrite rappresentazioni con cui il mainstream continua a beffare tantissimi non addetti ai lavori.
C’è gente che continua ad usare i propri dati personali come password…che è quasi come prestare le proprie chiavi di casa o d’ufficio ad un hacker: praticamente un invito aperto a un incidente informatico.
Passlord, ad esempio, è un software progettato per generare un ampio elenco di password su misura per singoli account, incorporando al contempo dati personali nell’algoritmo di generazione. Con Passlord è possibile generare con il minimo sforzo migliaia di password univoche, ciascuna contenente informazioni personalizzate al fine di dare vita a un dizionario cucito ad-hoc per il target (ogni password conterrà qualche riferimento ai dati personali del soggetto, come sottostringhe della data di nascita e/o del cognome e/o del nome del soggetto ecc..).
Tutti i moduli utilizzati dal programma fanno parte della Python Standard Library. Sono forniti in bundle con Python stesso, quindi non c’è neanche bisogno di installarli separatamente.
Superfluo scrivere che se il target ha scelto come password proprio una delle combinazioni generate da Passlord, salvo meccanismi di hardening da parte del sistema o del servizio, l’accesso abusivo all’archivio o al sistema target sarà solo questione di tempo.
A tratti unpopular opinion, ma fondamentalmente biasimo da nostalgico della disciplina che insegno da tempo e che continuo a praticare sia con vecchie che con nuove infastrutture informatiche, virtualizzate e non: l’amministrazione dei sistemi ICT, pane quotidiano di tutti i veri sysadmin.
Francamente penso che il mercato dell’Informatica da una parte si stia assuefacendo all’Automazione dei sistemi finalizzata alla riduzione dei costi (DevOps), dall’altra parte stia perdendo di vista il Santo Graal di tutti i sistemi informatici: la Disponibilità.
L’Automazione può rendere i sistemi più veloci ed economici riducendo l’elemento umano, ma un’operazione critica come quella di aggiornare un componente fortemente (troppo?) integrato nel sistema operativo andrebbe supervisionata: il recente disastro informatico legato al BSOD provocato da Falcon – l’agent software commercializzato dalla nota azienda CrowdStrike – è infatti la dimostrazione che anche i più blasonati operatori del settore commettono errori e possono provocare devastanti incidenti informatici, e almeno per ora, francamente non vedo un orizzonte rassicurante nemmeno per un futuro prossimo: non possono infatti testare alla perfezione ogni rilascio, per ogni possibile target, per ogni intricato scenario di utilizzo variabile (da più di qualche anno, ormai, ci si sono messi in mezzo sia il Cloud che il mondo IoT con i suoi firmware personalizzati spesso Insecure by Default).
La soluzione non è ovviamente quella di aspettare che i sistemisti abbiano il tempo di applicare gli aggiornamenti a mano, ma definire preventivamente procedure chiare e testate, e avere in squadra persone che sappiano eseguirle nei tempi e modi opportuni: cioè tempestivamente, ma non alla cieca. Ci devono essere precise fasi di STAGING ed esperti (ossia figure senior)che possano bloccare il passaggio in produzione prima che avvengano danni gravi…come quelli provocati da CrowdStrike.
Costoso? Ovviamente… e invece bloccare inaspettatamente voli intercontinentali e banche di mezzo mondo non ha avuto alcun impatto?
Obsoleto pensare a interventi manuali? Già, proprio come quelli che sono stati necessari per ripristinare i sistemi coinvolti, secondo alcuni esperti addirittura per mesi.
Suggerimento: rileggere le due frasi precedenti immaginando che un episodio analogo colpisca, invece degli aeroporti (la foto sottostante ritrae i nastri trasportatori presso l’aeroporto “LaGuardia” di NYC durante l’incidente informatico del 20 luglio 2024), i sistemi di controllo di una rete idrica o elettrica, o impianti chimici, o i sistemi di sale operatorie o ancor peggio sistemi MILITARI.
Forse è utile riportare l’attenzione sulla Formazione,e relativamente al mercato del lavoro, coinvolgere chi realmente conosce e ha esperienza nella gestione delle infrastrutture o si è preparato alacremente per questo, non solo chi sa esclusivamente installarci sopra delle applicazioni solo perché costa meno sul libro paga.
Addendum: tutti i media sono corsi a intervistare gli esperti di Cybersecurity più in voga (tutti esperti di kernel Windows, di puntatori a puntatori nonché di gestione della memoria heap a basso livello?!?🤔ma davvero?🤔) poiché così vanno le cose (anche in Italia), giacché se oggi un sistema informatico o una rete si interrompe, immediatamente il mainstream grida all’attacco informatico, tuttavia nel caso di CrowdStrike non si è trattato di questo.
Intendiamoci, c’è effettivamente di mezzo un’azienda (CrowdStrike) che di quello si occupa (e se non fosse un aspetto importante della vicenda, non insegnerei Cybersecurity e Sistemi operativi in contesti diversi, dai corsi professionalizzanti per diplomati ai master per neolaureati) ma focalizzarsi sul fatto che detta azienda si occupi di Cybersecurity fa perdere di vista il problema essenziale, ossia che si è trattato di un problema sistemistico, generato da un bug contenuto in un software proprietario commercializzato da un’azienda che sviluppa software per la Sicurezza Informatica, e la soluzione al problema, pur avendola tirata fuori dal cilindro i progettisti stessi di CrowdStrike, sulle reti in produzione l’hanno poi applicata dei sistemisti, non dei malware analyst né dei penetration tester.
Poi è interessante notare come la profezia in qualche modo si sia auto-avverata, con svariati attacchi informatici mascherati da soluzioni al problema… di nuovo facendo leva sul pretenzioso desiderio di Automazione perfetta.
A questo link è possibile consultare un recente articolo della stessa CrowdStrike per approfondire la soluzione della problematica che essi stessi hanno generato.
Concludo questo messaggio in bottiglia destinato a quei CISO e architetti di sistemi ICT che transitano da queste parti: incidenti informatici come questo invocano la necessità di ridefinire il concetto di HA (High Availability) studiato nelle Università; se i vari Domain Controller, server FTP, HTTP, SMB ecc.. fossero stati duplicati anche su sistemi Linux (quante sono le organizzazioni che continuano a investire ciecamente solo su Microsoft Windows quando invece molti dei medesimi servizi si possono erogare anche su Linux/Unix?), questo disastro informatico di portata globale si sarebbe potuto “banalmente” evitare con una migrazione temporanea verso i relativi sistemi Linux/Unix ridondati e aggiornati con i medesimi dati contenuti nei database Windows operativi fino a qualche minuto prima. La (Cyber)Security by Design (che oltre al codice andrebbe applicata anche alle architetture dei sistemi informativi) è tutt’altro che improvvisazione: non si può dunque improvvisare affidando il disegno e la gestione del proprio patrimonio informativo al primo ciarlatano o alla prima società di consulenza solo perché suggerita dall’amico dell’amico del collega del CISO tal dei tali (che magari non ha mai realmente seguito un corso né di (Cyber)Security by Design, né di Secure Coding né di Zero Trust Security), poiché prima o poi potrebbe ricapitare ciò che è già successo…e cadresti, come tanti altri/e, nel medesimo (o|e)rrore strutturale provocato dall’approccio ingenuo di chi ti ha evidentemente venduto incompetenza spacciata per Professionalità.