Gli attacchi alla supply chain open source di nuova generazione sono aumentati del 400% nei primi mesi del 2021.
Gli hackers sono sempre più creativi e stanno ricorrendo ad attacchi alla supply-chain di nuova generazione per trasformare i progetti open source in canali di distribuzione di malware.
Perché invadere l'ecosistema open source? La ragione è che i componenti compromessi possono essere immediatamente sfruttati una volta scaricati.
Adottare un approccio secure by design è al momento l'unica arma di difesa. Ne parliamo in questo webinar, in compagnia di Riccardo Bernasconi e Gabriele Gianoglio
5. Fino a ieri…
• L’occhio degli hackers osservava le
vulnerabilità rese pubbliche e le riusava
• Andava a caccia di bersagli facili (applicazioni
prive di patch indicizzate su motori di ricerca
Shodan/IoT)
• Equifax 2017 data breach:
Portale Web dei reclami dei consumatori con
falla Apache Struts2 RCE flaw (CVE-2017-5638)
• 2020: FortiNet circa 50,000 VPNs vulnerabili
con bug vecchi di 2 anni (CVE-2018-13379),
passwords esposte alle banche, VPNs della PA
6. I 3 punti di attacco alla software
supply chain
• Issues all’interno delle
dipendenze più diffuse
• Replica delle issues nei
mirrors
• Utilizzate dagli sviluppatori nelle loro applicazioni - spesso è sufficiente scaricarle
• Influenzano gli strumenti DevOps che utilizzano queste dipendenze
• Influenzano le applicazioni che integrano le dipendenze compromesse
• Le applicazioni vengono così violate, compromettendo i client
UPSTREAM
MIDSTREAM / IN YOUR SDLC DOWNSTREAM
• Sfruttano i problemi noti
• Introducono
comportamenti dannosi
influenzando il
comportamento dei
client
7. Inject code in open-source components
350k packages
>100k
>133k
Maven Central
5.4 million JARs
>235k
Projects published
to…
100 million
repositories
● Ogni componente
distribuito su diversi
repository
● Il quale viene
ulteriormente
distribuito ai mirror
● Utilizzato dagli
sviluppatori nelle
loro applicazioni
● Le applicazioni
vengono
compromesse,
raggiungendo i
client
8. Picture here
Perché attaccare l’ecosistema open-source?
● "fiducia" implicitamente
stabilita nella comunità OSS
● Disponibile a tutti
● Crescita esponenziale
nell’adozione, Microsoft
acquisisce GitHub per $ 7,5
miliardi.
● E molto più facile distribuire
librerie compromesse -
trasmettere codice dannoso nel
"downstream" (forking,
dipendenze, ...)
● La fiducia nei repository open
source incoraggia gli attacchi
alla supply chain del software
10. Esempi recenti: Gitpaste-12
• Il malware Gitpaste-12 era in GitHub
• Worm + botnet
• Contiene 12 vulnerabilità, incluse componenti
open-source
• Reverse shells, spreads itself, dynamic C2 on
Pastebin
• La seconda versione ritorna un mese dopo con 30+
attacchi
MID-STREAM
11. Typosquatting & brandjacking malware
Rendere gli attacchi alla software supply chain open-source
efficaci e facili
12. twilio-npm malicious npm component
• Pacchetto Npm che prende il nome dal popolare provider di comunicazioni cloud, Twilio
• Non appena installato ha lanciato la reverse shell
• Scoperto da Sonatype, riportato immediatamente, npm takes è stato rimosso
• Il pacchetto “twilio” ha ottenuto oltre 40 milioni di downloads.
https://blog.sonatype.com/twilio-npm-is-brandjacking-malware-in-disguise
UPSTREAM
13. Discord.dll, discord.app malware
• Componenti dannosi npm che hanno compromesso lo sviluppo dell’app Discord
• Codice Offuscato furto di token Discord, file del browser, info giocatori
• Successore di “fallguys” brandjacking malware che si era impossessato
delle API del gioco Fall Guys: Ultimate Knockout"
• Prende il nome dal pacchetto “discord.js” che ha avuto oltre 280K downloads settimanali.
• L’app induce a installare questo componente dannoso
• Scoperto da Sonatype, riportato immediatamente, npm eliminato
https://blog.sonatype.com/discord.dll-successor-to-npm-fallguys-
UPSTREAM
15. Jul 2020
Il sistema di rilevamento
automatico del malware di
Sonatype contrassegna i
pacchetti di "ricerca sulla
sicurezza" pubblicati da Alex
Birsan.
Sonatype li aggiunge ai dati
che alimentano i prodotti
Nexus Intelligence di nuova
generazione.
Jul 2020 – Feb 2021
Birsan continua a pubblicare i
pacchetti di ricerca, ma il sistema
di rilevamento automatico del
malware di Sonatype continua a
segnalarli nel tentativo di
proteggere i clienti da qualsiasi
comportamento illecito.
Feb 9, 2021
Alex Birsan pubblica il suo blog di ricerca intitolato
"Dependency Confusion: How I Hacked Into Apple,
Microsoft and dozzens of Other Companies"
Dettagli rilasciati su 35 aziende che hanno utilizzato
uno o più dei pacchetti OSS di "ricerca".
Anche Sonatype e Microsoft hanno pubblicato i
resoconti lo stesso giorno.
Feb 12, 2021
72 hours in 300+ copycats
emerge
Feb 16, 2021
Il rilevamento dei pacchetti copycat
raggiunge il 7000% al di sopra della
linea di base della settimana
precedente.
8 months 1 Week
Dependency confusion timeline
4 Weeks
Feb 22, 2021
La notizia è ampiamente diffusa con 10 citazioni
delle principali pubblicazioni tecnologiche.
575 pacchetti copycat identificati al 22 Feb
Mar 2, 2021
750+ pacchetti copycat sono stati
identificati come codice Malicious noto
Mar 3, 2021
PyPI, npm inondato con
5,000 copycats
Mar 9, 2021
8,000+ Copycats
Mar 15, 2021
10,000+
Copycats
18. Sviluppatori Java che usano Maven e Jenkins
presi di mira
• Sonatype arresta gli attacchi alla software supply chain utilizzata dagli sviluppatori Java
• Librerie che prendono il nome da componenti legittimi del compilatore Apache Maven,
Jenkins mail-watcher-plugin, e servlet-api pubblicati da Apache, Eclipse Jetty, Tomcat,
etc.
• Librerie Java (JARs) pubblicate con un namespace diverso com.github.codingandcoding
• Librerie legittime scaricate 23 milioni di volte.
• Librerie Malicious rimosse da Sonatype prima dei <900 downloads
https://blog.sonatype.com/malware-removed-from-maven-central
UPSTREAM /
MID-STREAM
19. Picture here
Tools DevOps mal
configurati, come
Jenkins
• Developer tools presi di mira
• Moltissime organizzazioni
fanno girare le loro CICD in
chiaro per convenienza
• Istanze Jenkins vulnerabili o
mal configurate
20. Gli attacchi alla supply-chain colpiscono
sistemi “open and closed source”
21. 2021: Gli attacchi alla supply-chain di SITA violano i programmi Frequent Flier
Numerose compagnie aeree colpite
22. Violazione di oltre 18,000 utenti tramite aggiornamenti contraffatti
• Distribuito a oltre 18,000 clienti incluse agenzie governative mission-critical, e
società di cybersecurity
• Sono stati distribuiti ceppi multipli di malware prima e durante l’attaccco a
Sunburst (Solorigate), Teardrop, Sunspot, …
23. Lezione di DevOps: violazione alle Nazioni
Unite, esposti oltre 100k documenti dello staff
• I ricercatori* hanno trovato cartelle .git
esposte con le credenziali dei DB e file
.git-credentials
• Accesso a 100k UNEP staff records
• Clonati interi repositories con le Git creds
• Potrebbe essere stato un attacco alla software
supply chain
*I membri del gruppo di hacking etico Sakura Samurai includono il fondatore di
Anonymous, Aubrey "Kirtaner" Cottle
24. Il caso Codecov
• Codecov aveva rivelato un attacco della
supply chain
• Viene sfruttato il Bash Uploader di Codecov
per pubblicare dati sensibili attraverso le
variabili di Environment
25. Vietnam govt complex software supply chain attack
• Threat actors inject malware in an app
offered by a CA: Vietnam Government
Certification Authority
• Operation SignSight
• Legitimate MSI binary included
PhantomNet backdoor that communicated
over HTTPS with C2
https://www.zdnet.com/article/vietnam-targeted-in-complex-supply-chain-attack/
This Photo licensed under CC BY-NC-ND
26. Operation SignSight: breaching Vietnam Gov’s CA
ESET researchers’ report: https://www.welivesecurity.com/2020/12/17/operation-signsight-supply-chain-attack-southeast-asia/
27. LA SFIDA: gray area nei repos open-source
• Ricerca sulla sicurezza, raccolta di
esempi o un altro Alex Birsan?
• GitHub e altri repository spesso
hanno esempi di malware e codice
caricato a scopo di ricerca
• È attivo un penetration-test?
• Distinguere queste attività da quelle
dannose
This Photo licensed under CC BY-NC
28. LA SFIDA: difficile valutare l’impatto degli
attacchi alla software supply chain open-source
• Difficile tenere traccia dei download
totali
• I download possono essere falsificati
• Il codice può essere stato copiato
(mirrors, forks, …)
• Octopus Scanner: 26 progetti OSS?
• Lo stesso vale per il malware OSS
individuato da Sonatype
29. Come prevenire gli attacchi alla software
supply chain?
• SBOM: devi sapere cosa integra il tuo codice
• Applicare gli ultimi aggiornamenti e patch?
Non sempre
• Verifica l'integrità del codice
• Non puoi monitorare manualmente le
dipendenze
• Una sorta di analisi binaria approfondita
automatizzata che individui il codice dannoso
nelle prime fasi
30. Come prevenire gli attacchi alla software
supply chain?
• Gli strumenti devono essere in grado di
scandagliare il codice offuscato
• Tecniche sofisticate come la steganografia
(codice nascosto all'interno di immagini /
audio, metadati) potrebbero richiedere
l'intervento manuale
• ... il tutto in aggiunta ai controlli
perimetrali di base, IDS / IPS, e al
monitoraggio costante della rete che
individua il traffico dannoso
31. Automation, proactive action
• Automated vulnerability detection - the volume is just too large
• Next-gen Nexus Intelligence, proactive malware detection bots based on over
5 dozen signals (“red flags”)
• Identified malicious components repeatedly
• The human factor: Solid Security Research team analyzes complex malware,
vulnerabilities
32. SUPPLY CHAIN A PIENO SPETTRO
Firewall
Blocca automaticamente
l'accesso al rischio nel tuo
SDLC
Nexus Lifecycle
Identifica continuamente i rischi,
applica le policy e rimedia alle vuln
in ogni fase del tuo SDLC
MUSE
Analisi del codice sorgente developer-friendly per
individuare problemi di sicurezza e affidabilità
Nexus Container
Proteggi i container dallo sviluppo al
runtime
33. Servizio dati open source di altissimo livello,
continuamente perfezionato da AI, machine learning e
65 ricercatori in tutto il mondo
● 97% proprietary
● 10M Unique
vulns
● 1.4M Sonatype
IDs
● 12 hour fast
tracks
100% powered by Nexus Intelligence.
● 8B files
● 67M components
● 2M projects
● 41 ecosystems