Zum Inhalt springen
Aback Tools Logo

Mach-O-Binäranalysator

Analysieren Sie Mach-O-Header, FAT-Universalbinärdateien, CPU-Architekturen, Load Commands, Segmente, Abschnitte und Symboltabellen - alles in Ihrem Browser. Unterstützt 32-Bit-, 64-Bit- und FAT-(Universal-)Mach-O-Formate für macOS, iOS und alle Binärdateien von Apple-Plattformen. Kostenlos, privat und ohne Anmeldung.

Mach-O Binary Analyzer
Parse and analyze Mach-O binary headers including FAT (universal) binaries, 32-bit and 64-bit formats. Inspect CPU architectures, load commands, segments, sections, and symbol tables — all in your browser.
Load Example:
Or paste raw hex bytes or load an example above

Warum unseren Mach-O-Binäranalysator verwenden?

  • Vollständige Unterstützung des Mach-O-Formats: Analysiert alle Mach-O-Varianten, darunter 32-Bit (MH_MAGIC), 64-Bit (MH_MAGIC_64) und FAT-Universalbinärdateien (FAT_MAGIC). Erkennt die Byte-Reihenfolge (Little/Big Endian) automatisch und verarbeitet sowohl einfache als auch multiarchitekturale Binärdateien.
  • Erkennung der CPU-Architektur: Identifiziert alle wichtigen Apple-CPU-Architekturen, darunter arm64 (Apple Silicon), x86_64 (Intel 64-Bit), i386 (Intel 32-Bit), ARM und PowerPC. Zeigt CPU-Typ, Subtyp und architekturspezifische Details mit formatierten Beschreibungen.
  • Load-Command- und Segmentinspektor: Dekodiert alle Load Commands (LC_SEGMENT, LC_SYMTAB, LC_UUID, LC_BUILD_VERSION, LC_MAIN und über 40 weitere). Zeigt jedes Segment mit seinen Abschnitten, virtuellen Adressen, Dateioffsets, Schutzflags und Relokationseinträgen in sortierbaren Tabellen.
  • 100 % privat - kein Upload erforderlich: Die gesamte Mach-O-Analyse erfolgt vollständig in Ihrem Browser. Laden Sie eine Binärdatei hoch oder fügen Sie Hex-Daten ein - nichts wird an einen Server gesendet. Kein Konto, keine Anmeldung, kein Tracking. Exportieren Sie Ergebnisse per Kopie oder Download.

Typische Anwendungsfälle des Mach-O-Analysators

  • Malware-Analyse und Reverse Engineering: Sicherheitsanalysten nutzen den Mach-O-Analysator, um verdächtige macOS- und iOS-Binärdateien zu prüfen. Erkennen Sie, ob eine Binärdatei eine FAT-Universaldatei mit mehreren Architekturen verbirgt, prüfen Sie Load Commands auf ungewöhnliche dylib-Abhängigkeiten und untersuchen Sie Abschnittsflags auf verdächtige Berechtigungen wie beschreibbare und ausführbare Speicherbereiche.
  • Verifikation und Integritätsprüfung von Binärdateien: Prüfen Sie, ob eine Mach-O-Binärdatei die erwartete CPU-Architektur hat, kontrollieren Sie das PIE-Flag (positionsunabhängige ausführbare Datei), untersuchen Sie das Vorhandensein einer Codesignatur und validieren Sie die UUID-Übereinstimmung. Unverzichtbar für die Prüfung von Build-Pipelines und die Sicherstellung der korrekten Architektur.
  • Analyse von Debug-Symbolen und Stripping: Analysieren Sie, ob eine Binärdatei gestrippt wurde, indem Sie die Größe der Symboltabelle und die Load Commands prüfen. Erkennen Sie zugehörige dSYM-Bundles, prüfen Sie nlist-Einträge auf verbleibende Symbole und stellen Sie fest, ob die Binärdatei signiert und notarisiert ist.
  • Erkennung von Obfuskation und Schutz: Identifizieren Sie obfuskierte oder geschützte Mach-O-Binärdateien durch Erkennung verschlüsselter Abschnitte (LC_ENCRYPTION_INFO), Prüfung von FairPlay-/DRM-Indikatoren, Untersuchung ungewöhnlicher Abschnittsattribute und Analyse von Symboltabellen-Anomalien, die für geschützte Binärdateien typisch sind.
  • Validierung von Apps für den macOS-/iOS-App-Store: Validieren Sie iOS- und macOS-App-Binärdateien vor der Einreichung im App Store. Prüfen Sie erforderliche Architekturen (arm64 für iOS, arm64 + x86_64 für macOS-Universalbinärdateien), kontrollieren Sie den korrekten CPU-Subtyp und untersuchen Sie die Mindestanforderungen an die OS-Version über alle Mach-O-Slices hinweg.
  • Ausbildung und Forschung zum Mach-O-Format: Studierende und Forschende können das Mach-O-Dateiformat interaktiv erkunden. Laden Sie Beispielbinärdateien, um zu sehen, wie die Mach-O-Header-Struktur funktioniert, Load-Command-Ketten zu verstehen, Segment-/Abschnittsbeziehungen zu erkunden und nlist-Symboltabelleneinträge kennenzulernen.

Was ist eine Mach-O-Binärdatei?

Mach-O (Mach Object) ist das native ausführbare Format von macOS, iOS, iPadOS, watchOS und tvOS. Es ersetzte das ältere a.out-Format und ist das Standard-Binärformat aller Apple-Betriebssysteme. Jede App, jedes Framework, jede Bibliothek und jedes Kommandozeilen-Tool auf Apple-Plattformen ist als Mach-O-Binärdatei verpackt. Das Format unterstützt mehrere CPU-Architekturen in einer Datei über das FAT-(Universal-)Format mit der Magic Number 0xCAFEBABE. Mach-O-Dateien enthalten einen Header, eine Kette von Load Commands zur Beschreibung der Struktur und die eigentlichen Segmentdaten (Code, Daten, Symboltabellen usw.).

So funktioniert der Mach-O-Analysator

  1. Eingabeerkennung: Der Analysator liest die ersten 4 Bytes (Magic Number), um das Format zu bestimmen - 32-Bit (0xFEEDFACE), 64-Bit (0xFEEDFACF) oder FAT-Universal (0xCAFEBABE) - und erkennt die Byte-Reihenfolge (Little Endian für Apple Silicon/Intel, Big Endian für PowerPC).
  2. Header-Analyse: Der Mach-O-Header wird analysiert, um CPU-Typ, CPU-Subtyp, Dateityp (Executable, dylib, Bundle, Objekt usw.), Anzahl der Load Commands und Binärflags (PIE, NOUNDEFS, TWOLEVEL usw.) zu extrahieren.
  3. Durchlauf der Load Commands: Der Analysator durchläuft die Load-Command-Kette und analysiert jeden Befehl nach seinem Typ. Segmentbefehle (LC_SEGMENT/LC_SEGMENT_64) enthalten Untertabellen mit Abschnittsinformationen. Andere Befehle liefern UUID, Mindestversionen, Symboltabellenverweise, Codesignatur-Offsets und mehr.
  4. Extraktion der Symboltabelle: Wenn die Binärdatei einen LC_SYMTAB-Befehl enthält, liest der Analysator nlist-Einträge (struct nlist_64 für 64-Bit) und löst Symbolnamen aus der Stringtabelle auf. Die ersten 50 Symbole werden mit Typ, Abschnittsnummer, Beschreibungsflags und Adresswerten angezeigt.

Schlüsselkonzepte in Mach-O

  • FAT-Binärdatei (Universal): beginnt mit der Magic 0xCAFEBABE und enthält mehrere Mach-O-Slices für verschiedene Architekturen. Jeder Slice hat eigenen CPU-Typ, Offset, Größe und Ausrichtung. iOS-Apps haben typischerweise arm64-Slices; macOS-Universalbinärdateien haben x86_64 + arm64 für Intel und Apple Silicon.
  • Load Commands: folgen direkt auf den Mach-O-Header und beschreiben das Layout der Binärdatei. LC_SEGMENT definiert aus der Datei gemappte Speicherbereiche; LC_SYMTAB verweist auf die Symboltabelle; LC_UUID liefert eine eindeutige Kennung; LC_BUILD_VERSION gibt Zielplattform und SDK-Version an.
  • Segmente und Abschnitte: Segmente (__TEXT, __DATA, __LINKEDIT) entsprechen direkt Speicherbereichen. Abschnitte innerhalb der Segmente (__text, __cstring, __objc_methlist) enthalten bestimmte Inhaltstypen. Abschnittstyp-Flags zeigen an, ob ein Abschnitt Code, String-Literale, Symbolzeiger oder Initialisierer enthält.
  • nlist-Symboleinträge: Jedes Symbol in der Symboltabelle hat einen Namen (über die Stringtabelle aufgelöst), einen Typ (undefiniert, absolut, abschnittsdefiniert oder indirekt), eine Abschnittsnummer, Beschreibungsflags und einen Wert/eine Adresse. Externe Symbole werden mit N_EXT für die dynamische Linkauflösung markiert.

Datenschutz und technische Einschränkungen

Der Mach-O-Analysator verarbeitet alle Binärdaten vollständig in Ihrem Browser mit JavaScript. Es werden niemals Daten auf einen Server hochgeladen. Der Analysator liest Header, Load Commands, Segment-/Abschnittsstrukturen und Symboltabelle - disassembliert jedoch keinen ausführbaren Code, entpackt keine geschützten Binärdateien und entschlüsselt keine verschlüsselten Mach-O-Dateien. Binärdateien mit FairPlay-DRM (App-Store-verschlüsselt) zeigen die Verschlüsselungsinformationen, ihre Codeabschnitte können jedoch nicht gelesen werden. Bei sehr großen Binärdateien (über 500 MB) kann die Analyse durch den Browserspeicher begrenzt sein. Der Analysator ist für Bildungszwecke, Reverse-Engineering-Forschung und Sicherheitsanalysen von Dateien gedacht, für deren Prüfung Sie eine rechtliche Berechtigung haben.

Häufig gestellte Fragen

Mach-O (Mach Object) ist das native ausführbare Format der Apple-Betriebssysteme (macOS, iOS, watchOS, tvOS). Es verwendet die Magic Numbers 0xFEEDFACE (32-Bit), 0xFEEDFACF (64-Bit) und 0xCAFEBABE (FAT-Universalbinärdatei). Anders als ELF (Linux/Android) und PE (Windows) unterstützt Mach-O FAT-Binärdateien mit mehreren Architekturen in einer Datei und beschreibt das Layout über eine Kette von Load Commands.

Prüfen Sie die ersten vier Bytes (Magic Number): 0xFEEDFACE für 32-Bit, 0xFEEDFACF für 64-Bit und 0xCAFEBABE für FAT-Universalbinärdateien. Übliche Dateiendungen sind .o (Objekt), .dylib (dynamische Bibliothek) und .bundle (ladbares Bundle). Unser Analysator erkennt und meldet das Format automatisch beim Upload.

Eine FAT-Binärdatei enthält mehrere Mach-O-Programme für verschiedene CPU-Architekturen in einer Datei. Der FAT-Header listet jede Architektur mit CPU-Typ, Offset, Größe und Ausrichtung auf. Beim Laden wählt das Betriebssystem automatisch die passende Architektur aus. So kann eine einzige Binärdatei verteilt werden, die nativ auf Intel- (x86_64) und Apple-Silicon-Macs (arm64) läuft.

Load Commands beschreiben das Layout der Binärdatei: LC_SEGMENT definiert Speicherbereiche, LC_SYMTAB verweist auf die Symboltabelle, LC_UUID liefert eine eindeutige Kennung, LC_BUILD_VERSION gibt Zielplattform und SDK an, LC_MAIN legt den Einstiegspunkt fest, LC_ENCRYPTION_INFO zeigt den FairPlay-DRM-Status und LC_CODE_SIGNATURE verweist auf Codesignaturdaten.

Ja. Er erkennt verschlüsselte Abschnitte über LC_ENCRYPTION_INFO (cryptid != 0), identifiziert gestrippte Binärdateien anhand kleiner Symboltabellen, markiert verdächtige Berechtigungen (beschreibbare und ausführbare Segmente) und erkennt ungewöhnliche Abschnittsnamen oder -flags. Außerdem meldet er den PIE-Status, FairPlay-DRM und das Vorhandensein einer Codesignatur.

Absolut. Die gesamte Verarbeitung erfolgt lokal in Ihrem Browser. Ihre Binärdaten verlassen niemals Ihr Gerät, werden nie an einen Server gesendet und nie gespeichert. Kein Konto erforderlich. Sie können proprietäre, vertrauliche oder sensible Mach-O-Binärdateien sicher analysieren.

Der Analysator liest Header, Load Commands, Segment-/Abschnittslayouts und Symboltabellen. Er disassembliert keinen Code, extrahiert keine eingebetteten Ressourcen und dekompiliert die Binärdatei nicht. Er erkennt jedoch das Vorhandensein von Objective-C- und Swift-Laufzeitmetadaten sowie cstring-Abschnitten.

Der Analysator unterstützt alle Apple-Architekturen: arm64 (Apple Silicon), x86_64 (Intel 64-Bit), i386 (Intel 32-Bit), ARM (32-Bit), PowerPC und PowerPC 64-Bit. FAT-Binärdateien mit beliebigen Kombinationen dieser Architekturen werden vollständig unterstützt.

Ja — 100 % kostenlos, ohne Anmeldung, ohne Konto, ohne Nutzungsgrenzen und ohne Premium-Tarife. Alle Funktionen einschließlich Datei-Upload, Hex-Eingabe, FAT-Analyse, Load-Command-Analyse, Segmentinspektion und Extraktion der Symboltabelle sind ohne Einschränkungen verfügbar.