Categorie
Sicurezza Informatica

Nuova vulnerabilità macOS, “Migraine”, potrebbe eludere la Protezione dell’Integrità del Sistema

Tempo di lettura: 3 minuti. Una nuova vulnerabilità, denominata “Migraine”, potrebbe permettere a un attaccante con accesso root di eludere la Protezione dell’Integrità del Sistema (SIP) su macOS e eseguire operazioni arbitrarie su un dispositivo.

Tempo di lettura: 3 minuti.

Una nuova vulnerabilità, che abbiamo denominato “Migraine” per il suo coinvolgimento con la migrazione di macOS, potrebbe permettere a un attaccante con accesso root di eludere automaticamente la Protezione dell’Integrità del Sistema (SIP) su macOS e eseguire operazioni arbitrarie su un dispositivo. Abbiamo condiviso queste scoperte con Apple attraverso la Coordinated Vulnerability Disclosure (CVD) tramite Microsoft Security Vulnerability Research (MSVR). Una correzione per questa vulnerabilità, ora identificata come CVE-2023-32369, è stata inclusa negli aggiornamenti di sicurezza rilasciati da Apple il 18 maggio 2023.

Protezione dell’Integrità del Sistema (SIP) e autorizzazioni

La SIP è una tecnologia di sicurezza in macOS che limita un utente root dall’eseguire operazioni che potrebbero compromettere l’integrità del sistema. Eludere la SIP potrebbe portare a gravi conseguenze, come aumentare il potenziale per gli attaccanti e gli autori di malware di installare con successo rootkit, creare malware persistente e ampliare la superficie di attacco per ulteriori tecniche e exploit. La tecnica scoperta in questo post del blog è stata scoperta durante la routine di caccia al malware ed è simile a quella utilizzata nella vulnerabilità Shrootless (CVE-2021-30892) che abbiamo pubblicato nel 2021. Concentrandoci sui processi di sistema firmati da Apple e dotati dell’autorizzazione com.apple.rootless.install.heritable, abbiamo trovato due processi figli che potevano essere manomessi per ottenere l’esecuzione di codice arbitrario in un contesto di sicurezza che elude i controlli SIP.

Scoperta di un bypass SIP per progettazione

Il nostro team di ricerca cerca regolarmente malware e attività sospette. Durante una routine di caccia al malware, abbiamo scoperto l’esecuzione di un binario chiamato drop_sip utilizzando la seguente query di ricerca avanzata in Microsoft 365 Defender:

DeviceProcessEvents | where FileName =~ “drop_sip” | project InitiatingProcessFileName, ProcessCommandLine, SHA256

Pensando di aver trovato un exploit nel wild, abbiamo scoperto che si tratta di un binario firmato da Apple che risiede nativamente sotto il percorso /System/Library/PrivateFrameworks/SystemMigrationUtils.framework/Resources/Tools/drop_sip.

Sviluppo di “Migraine”

Dopo aver scoperto il processo genitore di drop_sip, ci siamo chiesti se ci fossero altri processi figli di systemmigrationd. Come prima, abbiamo utilizzato la seguente query di ricerca avanzatain Microsoft 365 Defender:

DeviceProcessEvents | where InitiatingProcessFileName =~ “systemmigrationd” | summarize Hits=count(), Cmdline=any(ProcessCommandLine) by FileName

Abbiamo trovato due processi figli interessanti di systemmigrationd: bash e perl. Entrambi sono interessanti perché sono entrambi interpreti. In modo simile a come abbiamo manomesso il flusso di codice di zsh nel 2021, abbiamo trovato modi simili per manomettere il flusso di codice di bash e perl.

(Sottotitolo H2) Approccio all’exploit Innanzitutto, un attaccante deve prima ottenere le capacità di esecuzione del codice come root, impostare le variabili di ambiente che influenzano systemmigrationd e i suoi processi figli è semplice utilizzando l’utilità launchctl. Ad esempio, per far eseguire a perl il nostro codice arbitrario che risiede sotto /private/tmp/migraine.sh, usiamo:

launchctl setenv PERL5OPT ‘-Mwarnings;system(“/private/tmp/migraine.sh”)’

E infatti, dopo aver attivato systemmigrationd per eseguire perl, siamo stati in grado di eludere la SIP.

Implicazioni di bypass SIP arbitrari

Le implicazioni di bypass SIP arbitrari sono gravi, poiché il potenziale per gli autori di malware è significativo. Il codice che elude maliziosamente la SIP potrebbe avere conseguenze considerevoli, come:

  • Creare malware indelebile: l’implicazione più diretta di un bypass SIP è che, assegnando ai file l’attributo esteso com.apple.rootless (o sovrascrivendo quelli esistenti), un attaccante può creare file che sono protetti dalla SIP e quindi indelebili con mezzi ordinari.
  • Espandere la superficie di attacco per le tecniche di attacco dell’utente e del kernel: come sottolineato nel post sul blog di Mickey Jin su un diverso bypass SIP, è possibile per gli attaccanti ottenere l’esecuzione arbitraria del codice del kernel.
  • Manomettere l’integrità del sistema, abilitando effettivamente i rootkit: questa è una derivazione dell’esecuzione arbitraria del codice del kernel, una volta stabilita l’esecuzione del codice del kernel da parte di un attaccante, sono possibili certe tecniche di rootkit, come nascondere processi o file da tutti gli strumenti di monitoraggio.

Fonte

Pronto a supportare l'informazione libera?

Iscriviti alla nostra newsletter // Seguici gratuitamente su Google News
Exit mobile version