Apfeltube.de

Apple News und Gerüchte

Siri Protokoll geknackt!

Die französische Firma Applidium entwickelt eigentlich Apps wie z. B. Analytic oder Falldown 3D entwickelt.

Nichtsdestotrotz haben sie sich sofort nach der Veröffentlichung Siris am 14. Oktober 2011 an die Arbeit gemacht, das Protokoll zu knacken und Siri zu verstehen.
Genau das ist jetzt passiert. Sie haben es geschafft.
Hier die ganze Geschichte:

Zuerst muss man wissen: Siri nimmt die Sprache des Users auf, komprimiert sie und schickt die komprimierte Datei an Apple’s Server. Diese analysieren die Soundwellen und schicken sie in Textform zurück.

Applidium hat jetzt an dem Router, über den Siri mit dem Internet verbunden ist, gesehen, dass die Daten an einen Server mit der IP https://17.174.4.4 gehen.
Wenn man mit einem PC diese IP aufruft, gelangt man auf einen Server namens guzzoni.apple.com

Wenn man jetzt wissen will, was Siri an diesen Server schickt, muss man dafür sorgen, dass Siri denkt, die Daten würden an den Server geschickt, sie aber auf einem fake server im Netzwerk landen.

Apple war aber nicht dumm und hat dafür gesorgt, dass die Daten mit https:// gesendet werden. http:// ist die Übertragungsart, die normale Webseiten benutzen. Das ‘s’ in ‘https’ steht für ‘secure’ also ‘sicher’.
Normalen http-Datenverkehr kann man mit einem sogenannten Sniffer-Programm ausspähen.
Das geht bei https-Verkehr nicht. Dort wird ein sogenanntes X-Ace Sicherheitszertifikat verlangt, was auf dem Gerät und dem Server übereinstimmen kann und man nicht faken kann.

Was man aber machen kann, ist, das vorgegebene Zertifikat auf dem iPhone zu verändern.
Genau das haben sie gemacht, und haben somit das Protokoll bekommen, das Siri an den falschen Server gesendet hat.

In diesem Protokoll ist eine Überschrift, die u. A. den X-Ace Code angibt und ungefähr so aussieht:
ACE /ace HTTP/1.0
Host: guzzoni.apple.com
User-Agent: Assistant(iPhone/iPhone4,1; iPhone OS/5.0/9A334) Ace/1.0
Content-Length: 2000000000
X-Ace-Host: 4620a9aa-88f4-4ac1-a49d-e2012910921

und der Body-Teil besteht aus reinem Binärcode, den Applidium sich mit einem Hex-Edito angeguckt hat und somit Codes wie diesen bekam:
0x0200002234

Ganz oben an diesen Codes war dieser:
0xAACCEE
Sozusagen als eine Art Überschrift.

Einige Teile des Binärcodes sind auch Text. Ein Fetzen hat die Aufmerksamkeit der Leute von Applidium besonders auf sich gezogen:
bplist00
Dabei steht das ‘b’ für ‘Binär’ und die beiden Nullen dafür, dass es die erste ihrer Art ist.
Die erste Preferences List. Strike.
Also doch ein bisschen Hoffnung in dem ganzen Code-Gewirr.
In den plists fanden sie dann Code Schnipsel dieser Art:

1.: 0x020000xxxx
2.: 0x030000xxxx
3.: 0x040000xxxx

Codes mit der ersten Methode sind plist Daten, also Informationen.
Codes mit der zweiten Methode sind ping Daten, die das in an die Server schickt um die Verbindung aufrecht zu erhalten. Sie enthalten keine Informationen.
Codes mit der dritten Methode sind pong Daten. Die sendet der Server um auf die ping Anfragen zu antworten.

Es ist also nach einer bestimmten Vorbereitung möglich die Strukturierung von Siris Anfragen zu verstehen und zu verwenden. Dazu muss man noch wissen, dass der Sound mit ‘Speex‘, einer spezialisierten Soundkomprimierungsmethode, kodiert wurde.
Die Tools, die Applidium verwendet hat haben sie auf dieser Website zur Verfügung gestellt.
Mac-User haben zusätzlich noch die Möglichkeit mit einem Systemtool namens ‘plutil’ die Binärplists einfach zu dekodieren.

Rein theoretisch müsste man also einfach die VoiceOver Funktion einschalten, eine Application basteln, die den empfangenen kodierten Text dekodiert und ihn als Text darstellt und dafür sorgen, dass das benutzte Smartphone (z. B. iPhone 4, Galaxy S2) einen X-Ace spendiert bekommt, den ein echtes iPhone 4s verwendet (von z. B. einem Freund).
Letzteres sollte man aber nicht zu oft machen, da Apple die X-Ace sonst sperren könnte.

Vielleicht wird es ja demnächst Applikationen auf dem Jailbreakmarkt geben, die Siri verwenden, wer weiß?!

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: