Mach-O
Qu'est-ce que Mach-O ?
Mach-OMach-O est le format natif d'executables, d'objets et de bibliotheques partagees utilise par macOS, iOS, watchOS et tvOS pour les binaires produits par la chaine d'outils Apple.
Mach-O (Mach Object) est le format binaire utilise par les systemes Apple, notamment macOS, iOS, watchOS et tvOS. Un fichier Mach-O contient une entete, une liste de load commands decrivant les segments, des informations sur l'edition de liens dynamique, des tables de symboles et des blocs de signature de code. Les binaires universels (fat) regroupent des tranches pour plusieurs architectures comme x86_64 et arm64. Cote securite, Mach-O porte les exigences de code signing imposees par AMFI et Gatekeeper, les entitlements du hardened runtime et les metadonnees de notarisation ; les analystes de malware examinent les load commands, le LC_CODE_SIGNATURE integre et le comportement de dyld pour reperer les injections, le dylib hijacking et les alterations.
● Exemples
- 01
Inspecter un bundle .app malveillant avec otool -l et codesign --display pour detecter un LC_CODE_SIGNATURE altere.
- 02
Un attaquant utilisant DYLD_INSERT_LIBRARIES sur un Mach-O non signe pour charger une dylib malveillante.
● Questions fréquentes
Qu'est-ce que Mach-O ?
Mach-O est le format natif d'executables, d'objets et de bibliotheques partagees utilise par macOS, iOS, watchOS et tvOS pour les binaires produits par la chaine d'outils Apple. Cette notion relève de la catégorie Sécurité applicative en cybersécurité.
Que signifie Mach-O ?
Mach-O est le format natif d'executables, d'objets et de bibliotheques partagees utilise par macOS, iOS, watchOS et tvOS pour les binaires produits par la chaine d'outils Apple.
Comment fonctionne Mach-O ?
Mach-O (Mach Object) est le format binaire utilise par les systemes Apple, notamment macOS, iOS, watchOS et tvOS. Un fichier Mach-O contient une entete, une liste de load commands decrivant les segments, des informations sur l'edition de liens dynamique, des tables de symboles et des blocs de signature de code. Les binaires universels (fat) regroupent des tranches pour plusieurs architectures comme x86_64 et arm64. Cote securite, Mach-O porte les exigences de code signing imposees par AMFI et Gatekeeper, les entitlements du hardened runtime et les metadonnees de notarisation ; les analystes de malware examinent les load commands, le LC_CODE_SIGNATURE integre et le comportement de dyld pour reperer les injections, le dylib hijacking et les alterations.
Comment se défendre contre Mach-O ?
Les défenses contre Mach-O combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Mach-O ?
Noms alternatifs courants : Mach Object, Binaire Mach-O.
● Termes liés
- appsec№ 373
Format binaire ELF
Executable and Linkable Format, le conteneur binaire standard pour les executables, fichiers objets et bibliotheques partagees sur Linux, BSD et la plupart des derives de System V Unix.
- appsec№ 809
Format executable PE
Portable Executable, le format binaire Windows utilise pour les fichiers .exe, .dll, .sys et .ocx, derive de l'ancien format objet COFF.
- attacks№ 331
Détournement de DLL
Attaque qui abuse de l'ordre de recherche des DLL de Windows pour qu'un programme légitime charge une bibliothèque contrôlée par l'attaquant au lieu de la bibliothèque attendue.
- forensics-ir№ 650
Analyse de maliciel
Étude structurée d'un échantillon malveillant pour comprendre son fonctionnement, son origine, ses indicateurs de compromission et son impact sur les systèmes touchés.
- forensics-ir№ 926
Rétro-ingénierie
Processus de désassemblage et d'analyse d'un logiciel compilé, d'un firmware ou d'un matériel pour reconstituer sa conception, son comportement et son fonctionnement interne.