Realizzare PKI con sw open-source

Acronimo di Enterprise JavaBeans Certificate Authority, EJBCA è un interessante software open-source per mettere in piedi un’infrastruttura a chiave pubblica (PKI) in grado di avvalersi di crittografia PQC (Post Quantum Cryptography) per emettere e proteggere i certificati digitali dei propri utenti e dispositivi.
Gestito e sponsorizzato dalla società svedese PrimeKey Solutions AB, il pacchetto software EJBCA può essere utilizzato per installare un’autorità di certificazione (una CA), un’autorità di convalida e un’autorità di registrazione gestibili privatamente.
Ormai giunto alla versione 9.4.2 nel momento in cui sto scrivendo, il software EJBCA è utilizzato per gestire autorità di certificazione (CA) in diversi contesti, tra cui e-Government, endpoint management, sistemi IoT, energia, telecomunicazioni, eIDAS, networking e perfino nell’ambito delle PMI.

Una Certification authority EJBCA sotto forma di appliance

Ma perché adottare una CA privata quando sono già disponibili quelle pubbliche? Il caso della compromissione della CA DigiNotar, nel 2011, rappresenta probabilmente uno degli esempi più emblematici dei rischi associati all’adozione di autorità di certificazione (CA) pubbliche. In un’infrastruttura PKI (Public Key Infrastructure), una Certification Authority (CA) è responsabile dell’emissione e della firma digitale dei certificati che attestano l’associazione tra una chiave pubblica e l’identità di un dominio o di un’entità. Nel modello delle CA pubbliche, tali certificati sono implicitamente considerati affidabili dai browser e dai sistemi operativi poiché inclusi nei trust store globali. Nel caso di DigiNotar, un attacker riuscì a compromettere l’infrastruttura della CA e a generare certificati fraudolenti per domini di alto profilo, tra cui servizi di Google. Poiché i certificati risultavano firmati da una CA pubblica riconosciuta, i browser li accettavano automaticamente come validi. Questo rese possibile l’esecuzione di attacchi MiTM (man-in-the-middle) su larga scala, intercettando comunicazioni HTTPS apparentemente sicure. L’incidente dimostrò come la compromissione di una singola CA pubblica possa avere conseguenze sistemiche sull’intero ecosistema di fiducia del web.

Una CA privata, al contrario, opera in un contesto di fiducia limitato (private trust domain). I certificati emessi non sono riconosciuti universalmente, ma solo dai sistemi configurati esplicitamente per fidarsi di quella specifica root CA. Questo riduce significativamente la superficie di attacco e l’impatto di un’eventuale compromissione: un certificato fraudolento sarebbe accettato solo all’interno dell’infrastruttura organizzativa e non dall’intera Internet.

Dal punto di vista della sicurezza operativa, inoltre, una CA privata consente un controllo più rigoroso delle policy di emissione, dei processi di autenticazione delle entità richiedenti nonché della protezione delle chiavi critiche (ad esempio tramite HSM e segmentazione della rete). In sintesi, mentre le CA pubbliche offrono scalabilità e interoperabilità globale, le CA private riducono il rischio sistemico limitando l’ambito di fiducia e migliorando il controllo amministrativo dell’infrastruttura crittografica 🔐

Link di approfondimento:
Link1
Link2
Link3

Analisti S.O.C. oppure insider?

Due analisti di sicurezza informatica (S.O.C.) di recente si sono dichiarati colpevoli di attacchi ransomware.

Ryan Goldberg era un manager che si occupava di DFIR (Digital Forensics Incident Response) per la società Sygnia. Viceversa, Kevin Martin ricopriva il ruolo di negoziatore di ransomware presso DigitalMint.

Il loro lavoro era proteggere le aziende da cyber gang e attacchi informatici.
E invece, sono diventati degli hacker…della peggior specie: degli insider.

Tra maggio e novembre 2023 hanno attaccato cinque aziende statunitensi usando il ransomware BlackCat, tra cui:
– un’azienda di dispositivi medici in Florida
– un’azienda farmaceutica nel Maryland
– un produttore di droni in Virginia

Ad una sola vittima hanno estorto ben 1,3 milioni di dollari in bitcoin.

I pubblici ministeri hanno affermato che hanno “abusato di una posizione di fiducia pubblica o privata” e hanno utilizzato “speciali competenze” per commettere i loro crimini.

Sapevano esattamente come le aziende reagiscono agli attacchi ransomware. Conoscevano i loro punti deboli.
E soprattutto, sapevano cosa induce le vittime a pagare per poter avere indietro i loro dati e ottenere il ripristino tempestivo dei loro sistemi.

E hanno usato questa conoscenza per diventare dei moderni predoni. Ma gli è andata male: entrambi ora rischiano fino a 20 anni di carcere federale.

Ogni team di sicurezza informatica dovrebbe basarsi sulla fiducia: la fiducia che le persone che hai ingaggiato o con cui collabori per difendere l’organizzazione in cui lavori o le aziende clienti non siano mai e poi mai quelle da temere ma quelle su cui poter contare, che siano persone non dico sante, ma verosimilmente persone oneste e affidabili.
Prima di poter iniziare la loro professione, gli aspiranti medici si impegnano a prestare fedeltà al “giuramento di Ippocrate” per il resto della loro vita professionale, perché gli analisti S.O.C. non hanno qualcosa di equivalente?

Fonti e letture di approfondimento:
Link1
Link2
Link3

OpenSSL e crittografia post-quantum

Manca poco (8 aprile 2025) al rilascio di un innovativo software gratuito per applicare crittografia moderna: OpenSSL 3.5.

Per la prima volta un’intera gamma di applicazioni, inclusi i web server, saranno in grado di utilizzare PQC (Post Quantum Cryptography) e quindi di migliorare la Cybersecurity del settore nonché dei servizi erogati. OpenSSL è la libreria globalmente più utilizzata per cifrare file e stream, e appunto dalla versione 3.5 supporterà la sostituzione del protocollo crittografico ECDH con ML-KEM nonché degli algoritmi RSA ed ECDSA con ML-DSA.

L’integrazione più interessante per lo scambio di chiavi sarà quella di poter utilizzare un metodo ibrido, come ML-KEM-X25519, il quale utilizza sia X25519 (con curve ellittiche) che ML-KEM per creare la chiave. Dalla versione 3.5 in avanti ci sarà anche la possibilità di applicare metodi di firma digitale ibridi, come ML-DSA-Ed25519.

Ulteriori informazioni disponibili su:
Link1
Link2
Link3

Malware analysis con CAPA

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

Malware: rimanere aggiornati con Zhussupov

Più che interessante lettura estiva…direi doverosa per tutti coloro interessati alla malware analysis.

Sono rimasto affascinato da questo libro di Zhassulan Zhussupov: seguo l’autore da un po’ su Twitter, e onestamente posso dire che questo volume non solo ha soddisfatto, ma che ha superato le mie aspettative con la sua ricchezza di contenuti nonché di applicazioni pratiche.

Testo fondamentale per qualsiasi professionista operativo nel mondo della Cybersecurity e che desideri approfondire la propria comprensione degli attuali malware, in esso l’autore discute e mostra tecniche avanzate di persistenza (APT) ed evasione dei malware in modo chiaro e dettagliato, integrando esempi pratici di codice di facile lettura (a patto che si abbia un minimo di basi di programmazione a basso livello tramite Python e C/C++) che trasforma la teoria complessa in un apprendimento accessibile e coinvolgente.

I capitoli dedicati agli APT, alle tecniche anti debugging e agli algoritmi matematici per cifrare i payload dei malware sono tra i miei preferiti, poiché offrono approfondimenti dettagliati difficili da trovare in altre pubblicazioni. Interessante il collegamento tra APT e cybercrime, che fornisce considerazioni e spunti di riflessione tali da evidenziare la complessità e le sinergie operative tra i malware e le moderne minacce informatiche in un modo che altri testi (almeno tra quelli da me studiati fino ad oggi) non fanno.

L’autore discute più di 100 esempi di malware, del resto è tra coloro che alimentano il noto portale Malpedia.

Firme digitali falsificabili in Putty

Le versioni del noto software PuTTY dalla 0.68 alla 0.80 (inclusa) presentano una vulnerabilità critica nella parte di codice che genera firme dalle chiavi private ECDSA che utilizzano la curva NIST P521 (PuTTY, o Pageant, genera una firma digitale da una chiave quando la usi per autenticarti su di un server SSH).

A questa vulnerabilità è stato assegnato il CVE-2024-31497. La vulnerabilità è stata scoperta da Fabian Bäumer e Marcus Brinkmann, dell’Università della Ruhr di Bochum (è disponibile un loro articolo sulla mailing list oss-security), in Germania.

L’effetto della vulnerabilità è quello di consentire la compromissione della chiave privata. Un attacker o un utente malintenzionato in possesso di alcune dozzine di messaggi firmati (e della chiave pubblica) ha informazioni sufficienti per recuperare la chiave privata e quindi falsificare le firme come se provenissero da te, consentendogli (ad esempio) di accedere a qualsiasi server in cui utilizzi quella chiave per autenticarti. Per ottenere queste firme, l’attacker deve solo compromettere brevemente un qualsiasi server su cui si utilizza la chiave per autenticarsi, oppure ottenere momentaneamente l’accesso a una copia di Pageant che detiene la chiave (tuttavia, queste firme non sono esposte agli sniffer passivi delle connessioni SSH…).

Pertanto, se disponi di una chiave di questo tipo, i crittoanalisti consigliano di revocarla immediatamente: rimuovi la vecchia chiave pubblica da tutti i file Authorized_keys di OpenSSH e l’equivalente negli altri server SSH, in modo che una firma della chiave compromessa non abbia più valore. Genera quindi una nuova coppia di chiavi per sostituirla.
(il problema non riguarda il modo in cui la chiave è stata generata; non importa se proviene da PuTTYgen o da qualche altra parte: ciò che conta è se è stata mai utilizzata con PuTTY o Pageant).

La buona notizia: l’unico tipo di chiave crittografica inficiata da CVE-2024-31497 è l’ECDSA a 521 bit. Cioè una chiave che in Windows PuTTYgen si presenta come ecdsa-sha2-nistp521 all’inizio della casella “Impronta digitale chiave”, oppure come NIST p521 quando viene caricata in Windows Pageant, oppure ha un ID che inizia con ecdsa-sha2- nistp521 nel protocollo SSH o nel file della chiave. Altre dimensioni dell’ECDSA e altri algoritmi chiave non sono coinvolti dalla vulnerabilità, in particolare, non è coinvolto lo schema di firma Ed25519.

Link di approfondimento:
Link1
Link2
Link3

Un simpatico congegno IoT…

…che permette, in maniera estremamente compatta e ad un prezzo interessante, di:
✅️ monitorare il traffico di rete
✅️ esfiltrare dati
✅️ stabilire connessioni VPN
✅️ avviare reverse shell
✅️ sniffare pacchetti
✅️ effettuare spoofing DNS
✅️ accedere alla shell tramite root

Dispone di un interruttore con 4 posizioni: ognuna di esse rappresenta una modalità operativa configurabile attraverso uno specifico script.
È conoscendo anche strumenti come questo che possiamo migliorare la nostra Cybersecurity Posture (nostra e quella dei nostri clienti): come al solito, restiamo vigili e teniamo gli occhi aperti.

Ransomfeed, la dashboard per monitorare le vittime dei ransomware

Grazie a una dashboard aggiornata periodicamente, con la piattaforma RansomFeed è possibile farsi un’idea delle rivendicazioni effettuate dalle cybergang che sfruttano attacchi informatici basati su ransomware. È possibile filtrare per paese e per altri parametri, venendo quindi a conoscenza anche dei nominativi delle aziende ed organizzazioni (anche italiane!) che ne sono rimaste vittime.

Esplorando la piattaforma, è possibile notare anche nomi di prestigiosi gruppi bancari…
Ransomfeed mette a disposizione gratuitamente un canale RSS con cui è possibile rimanere aggiornati sulle rivendicazioni pubbliche.

P.S.: A discapito di quanto pubblicizzano i media, ovviamente la piattaforma non elenca assolutamente tutte le vittime colpite, né storicamente né al presente… anche perché le vittime in essere potrebbero optare (come troppo spesso accade) di cedere al ricatto della cybergang di turno, pagando alla chetichella in Bitcoin pur di ottenere la chiave privata che occorre per il ripristino dei loro dati e sistemi (così da non finire né sulle pagine dei quotidiani, né appunto su portali come lo stesso RansomFeed, ma soprattutto per riprendere velocemente la loro operatività).