Dies ist ein Reverse-Engineering-Versuch des Apple Content Caching-Systems.
Das Ziel dieses Projekts ist es, mich selbst in einem ernsthaften Reverse-Engineering-Versuch herauszufordern und gleichzeitig etwas zu schaffen, das ich machen möchte: einen Apple Content Cache, der auf Linux-Servern funktioniert.
HINWEIS : Das Asset-Cache-Tool ist eine Fortsetzung einiger dieser Arbeiten.
Lieber Apple,
Ich bin in gutem Glauben und glaube nicht, dass dies aufgrund der Gestaltung des Caches Schaden anrichten sollte. Sollten Sie etwas anderes in Betracht ziehen, kontaktieren Sie mich über meine E-Mail: [email protected]
Danke, Alex
Bitte missbrauchen Sie die hier angezeigten Inhalte nicht. Ich versuche dies in gutem Glauben zu tun und dulde keine böswillige Nutzung des Apple Content Cache-Systems, was auch immer das sein mag.
Inhaltscaching ist im Abschnitt „Freigabe“ der Systemeinstellungen verfügbar. Es wird verwendet, um Inhalte in Ihrem lokalen Netzwerk für öffentliche Apple-Inhalte oder iCloud-Inhalte zwischenzuspeichern. /usr/libexec/AssetCache/AssetCache
ist für einen Großteil der Arbeit verantwortlich. Es verfügt über einen HTTP-Server mit einer API, die das Abrufen und Hochladen von Inhalten vom Server ermöglicht.
Darüber hinaus werden im captures
Verzeichnis Paketerfassungen bereitgestellt.
Die Arbeit hier wurde von Charles Proxy und Frida durchgeführt.
Die Datei tools/frida-ssl-pin.js
ist ein Frida-Skript, das an jeden macOS-Prozess angehängt werden kann und die gesamte SSL-Überprüfung und das Anheften von SSL-Zertifikaten deaktiviert. Dies hat es mir ermöglicht, die Anfragen, die an die Server von Apple gehen, eingehend zu untersuchen. Dieses Skript ist wahrscheinlich für viele andere Anwendungsfälle nützlich. Wenn jemand anderes es verwendet, würde ich gerne hören, wie es verwendet wurde (ich bin ein riesiger Nerd und interessiere mich sehr für Reverse Engineering). Beachten Sie, dass SIP deaktiviert werden muss, um es ordnungsgemäß verwenden zu können.
Ich habe auch ein modifiziertes Frida-Python-Skript, das launchd
abzielt, um das SSL-Pinning- und Verifizierungsdeaktivierungsskript einzufügen. Da AssetCache
von launchd erzeugt wird, können Sie Frida an launchd anhängen und warten, bis AssetCache
über den Dienst erzeugt wird. Das Skript befindet sich unter: tools/frida-ssl-pin-target.py
. Führen Sie einfach pip3 install frida frida-tools
und führen Sie das Skript aus.