Alexa Fernsteuern: Das Cookie Problem gelöst? (Automatisierte Anmeldung und Fernsteuerung)

Hier geht es um grundlegende Diskussionen bezüglich des Alexa Voice Service.
Antworten
Benutzeravatar

Themenstarter
radza
Beiträge: 43
Registriert: Fr 16. Dez 2016, 02:42
Vorhandene Echos: 3
Vorhandene Echo Dots: 2
Vorhandene Echo Shows: 1

Do 5. Okt 2017, 11:17

Moin,

ich wende mich hier an diejenigen unter euch, die sich mit Alexa Automatisierung beschäftigen und vor dem Problem der ablaufenden Cookies / Sessions stehen und wie ich an einer Lösung arbeiten.

z.B. in diesen Threads:
Alexa automatisiert "Fernsteuern"
[LÖSUNG] Endlich mit Musik geweckt werden

Ich benötige eure Hilfe um eine These zu verifizieren, da ich vermute das Problem gelöst zu haben, mir aber nicht 100% sicher dabei bin.

1. Ich habe auf meiner Linux Kiste Burpsuite installiert (ein Security Debugger Tool für Webapplikationen) und einen lokalen Proxy erstellt, der sämtliche http UND https Anfragen abfängt und einem die Möglichkeit bietet den http-Verkehr Step-by-Step zu analysieren.

2. Durch Vertrauen meines selfsigned Certificate ist es mir nun möglich in verschlüsselte https Pakete reinzuschauen. Ich habe https somit "gebrochen" und damit Einblick in die Kommunikation erlangt.

3. Browser auf lokalen Proxy konfiguriert

4. Anmeldung auf https://alexa.amazon.com mit meinen Zugangsdaten durchgeführt

5. in der Burpsuite http-History das Anmeldepaket als CURL Befehl kopiert und in der Kommandozeile ausgeführt (Das Anmeldepaket enthält meine Zugangsdaten und andere sensitive Informationen im Klartext. Daher werde ich es hier nicht posten, auch nicht zensiert. Ihr habt aber die Möglichkeit es selbst nachzustellen)

6. Curl Befehl auf Kommandozeile ausgeführt und in ein "grep session" gepiped ... (curl ... bla ... | grep session) Nach jeder Ausführung antwortete der Amazon Server mit einer neuen Session/Cookie-ID.

Response der ersten Anmeldung
cookie1.jpg
cookie1.jpg (8.03 KiB) 10050 mal betrachtet
Response der zweiten Anmeldung usw..
cookie2.jpg
cookie2.jpg (10.11 KiB) 10050 mal betrachtet
Ich vermute somit das Problem durch, nennen wir es mal "Reverse-Engineering" ,gelöst zu haben. Mithilfe dieses Curl Befehls kann vor jedem "Fernsteuerbefehl" ein neuer Cookie generiert werden. Da ich aber kein Webdeveloper bin, benötige ich das Fachwissen der Community um meine Annahme zu bestätigen.

Bin gespannt auf eure Antworten.


Edit: Auf Anfrage habe ich mal einen zensierten Screenshot für euch zum Nachvollziehen des CURL Befehls hochgeladen.
curl.jpg
Zuletzt geändert von radza am Di 10. Okt 2017, 10:59, insgesamt 5-mal geändert.
0 x
Benutzeravatar

Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Do 5. Okt 2017, 11:39

radza hat geschrieben: Do 5. Okt 2017, 11:17 Ich vermute somit das Problem durch, nennen wir es mal "Reverse-Engineering" ,gelöst zu haben. Mithilfe dieses Curl Befehls kann vor jedem "Fernsteuerbefehl" ein neuer Cookie generiert werden. Da ich aber kein Webdeveloper bin, benötige ich das Fachwissen der Community um meine Annahme zu bestätigen.
Du gehst also davon aus das man über einen Curl Befehl mit den eigenen Amazon Nutzer Daten (Username/Passwort) jeweils eine Session/Cookie-ID abholt und diese dann für den eigentlichen Fernsteuerungsbefehl nutzten kann? Da der Cookie ja an sich mehrere Tage hält wäre es ja dann ausreichend einmal am Tag sich eine Session/Cookie-ID abzuholen und diese in eine Variable abzulegen. Dann könnte man dann in Folge ohne die Session/Cookie-ID von Hand zu hinterlegen einen Befehl absetzten.

Hast Du mal was wie der Curl Befehl aussieht auf den Du einen grep machst, damit man das mal ausprobieren kann?
0 x
Benutzeravatar

Themenstarter
radza
Beiträge: 43
Registriert: Fr 16. Dez 2016, 02:42
Vorhandene Echos: 3
Vorhandene Echo Dots: 2
Vorhandene Echo Shows: 1

Do 5. Okt 2017, 11:47

Fonzo hat geschrieben: Do 5. Okt 2017, 11:39
radza hat geschrieben: Do 5. Okt 2017, 11:17 Ich vermute somit das Problem durch, nennen wir es mal "Reverse-Engineering" ,gelöst zu haben. Mithilfe dieses Curl Befehls kann vor jedem "Fernsteuerbefehl" ein neuer Cookie generiert werden. Da ich aber kein Webdeveloper bin, benötige ich das Fachwissen der Community um meine Annahme zu bestätigen.
Du gehst also davon aus das man über einen Curl Befehl mit den eigenen Amazon Nutzer Daten (Username/Passwort) jeweils eine Session/Cookie-ID abholt und diese dann für den eigentlichen Fernsteuerungsbefehl nutzten kann? Da der Cookie ja an sich mehrere Tage hält wäre es ja dann ausreichend einmal am Tag sich eine Session/Cookie-ID abzuholen und diese in eine Variable abzulegen. Dann könnte man dann in Folge ohne die Session/Cookie-ID von Hand zu hinterlegen einen Befehl absetzten.

Hast Du mal was wie der Curl Befehl aussieht auf den Du einen grep machst, damit man das mal ausprobieren kann?

Korrekt das ist meine Annahme. Hätte ich vielleicht noch einmal so formulieren sollen. Mit einer Ergänzung: Die abgeholte Session ID könnte man zwischen speichern und für den eigentlichen Fernsteuerungsbefehl verwenden. Sie müsste dort mit eingetragen werden.

Den Curl Befehl kann sich leider nur jeder selbst generieren =/ Der ist locker 50 Zeilen lang. Und da dort wie gesagt sensible Informationen drin stehen wollte ich den nun eigentlich nicht hier veröffentlichen. Wenn Interesse besteht kann ich bei Zeiten noch eine detaillierte Burpsuite Anleitung veröffentlichen. Das wäre allerdings ein enormer Aufwand. Das Programm ist sehr umfangreich. Wird von Sicherheitsanalysten und Penetrationstestern verwendet um Webapplikationen auf Schwachstellen zu testen. Aber ja, wenn die Community meine Annahme bestätigt würde ich dies dann tun.
Zuletzt geändert von radza am Do 5. Okt 2017, 11:57, insgesamt 2-mal geändert.
0 x
Benutzeravatar

Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Do 5. Okt 2017, 11:56

radza hat geschrieben: Do 5. Okt 2017, 11:47 Den Curl Befehl kann sich leider nur jeder selbst generieren =/ Der ist locker 50 Zeilen lang. Und da dort wie gesagt sensible Informationen drin stehen wollte ich den nun eigentlich nicht hier veröffentlichen.
Den Befehl als solches musst Du ja auch nicht posten, will ja keiner Dein Echo demnächst fernsteuern können ;) . Wichtig wäre eben nur zu verstehen aus welchen Teilen der gesamte Curl String aufgebaut ist um diesen dann in welcher Form auch immer zusammensetzten zu können. Burpsuite werde ich mir zumindest mal anschauen kann man sicher sonst auch noch gut gebrauchen, reicht da die Free Edition zum antesten?
0 x
Benutzeravatar

Themenstarter
radza
Beiträge: 43
Registriert: Fr 16. Dez 2016, 02:42
Vorhandene Echos: 3
Vorhandene Echo Dots: 2
Vorhandene Echo Shows: 1

Do 5. Okt 2017, 12:02

Fonzo hat geschrieben: Do 5. Okt 2017, 11:56
radza hat geschrieben: Do 5. Okt 2017, 11:47 Den Curl Befehl kann sich leider nur jeder selbst generieren =/ Der ist locker 50 Zeilen lang. Und da dort wie gesagt sensible Informationen drin stehen wollte ich den nun eigentlich nicht hier veröffentlichen.
Den Befehl als solches musst Du ja auch nicht posten, will ja keiner Dein Echo demnächst fernsteuern können ;) . Wichtig wäre eben nur zu verstehen aus welchen Teilen der gesamte Curl String aufgebaut ist um diesen dann in welcher Form auch immer zusammensetzten zu können. Burpsuite werde ich mir zumindest mal anschauen kann man sicher sonst auch noch gut gebrauchen, reicht da die Free Edition zum antesten?
Ja die Free Edition von Burpsuite ist sehr umfangreich. Reicht vollkommen für die meisten Tätigkeiten.

Na gut, du hast recht. Ich habe mal den Zensurstift angesetzt. Was der Befehl tut, kann man trotzdem gut erkennen.
curl.jpg
Zuletzt geändert von radza am Do 5. Okt 2017, 12:11, insgesamt 1-mal geändert.
0 x
Benutzeravatar

Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Do 5. Okt 2017, 12:15

radza hat geschrieben: Do 5. Okt 2017, 12:02 Na gut, du hast recht. Ich habe mal den Zensurstift angesetzt. Was der Befehl tut, kann man trotzdem gut erkennen.
Die SignIn URL ist fest oder

Code: Alles auswählen

https://www.amazon.de/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Falexa.amazon.de&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee_de&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&
Username und Passwort ist bekannt wo bekommt man jetzt die restlichen Parameter her die noch mit übergeben werden?
0 x
Benutzeravatar

Themenstarter
radza
Beiträge: 43
Registriert: Fr 16. Dez 2016, 02:42
Vorhandene Echos: 3
Vorhandene Echo Dots: 2
Vorhandene Echo Shows: 1

Do 5. Okt 2017, 12:22

Fonzo hat geschrieben: Do 5. Okt 2017, 12:15
Die SignIn URL ist fest oder

Code: Alles auswählen

https://www.amazon.de/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Falexa.amazon.de&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee_de&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&
Username und Passwort ist bekannt wo bekommt man jetzt die restlichen Parameter her die noch mit übergeben werden?
Korrekt.

Code: Alles auswählen

Deine Signin URL
https://www.amazon.de/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Falexa.amazon.de&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee_de&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&

meine Signin URL
https://www.amazon.de/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Flayla.amazon.de&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee_de&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&

identisch
Für die restlichen Parameter fehlt mir das Fachwissen eines Webentwicklers. Mit denen kann ich noch nicht all zu viel anfangen. Gerade die großen Metadata Blöcke. Diese habe ich zensiert, weil ich keine Ahnung habe was sich dahinter verbirgt ;-)
Ich schätze, dass tatsächlich jeder, mit Burpsuite seinen eigenen Curl Befehl generieren muss, da hier zu viele variable Parameter enthalten sind.
Zuletzt geändert von radza am Do 5. Okt 2017, 12:25, insgesamt 4-mal geändert.
0 x
Benutzeravatar

Themenstarter
radza
Beiträge: 43
Registriert: Fr 16. Dez 2016, 02:42
Vorhandene Echos: 3
Vorhandene Echo Dots: 2
Vorhandene Echo Shows: 1

Di 10. Okt 2017, 10:57

Fonzo hat geschrieben: Do 5. Okt 2017, 12:15
radza hat geschrieben: Do 5. Okt 2017, 12:02 Na gut, du hast recht. Ich habe mal den Zensurstift angesetzt. Was der Befehl tut, kann man trotzdem gut erkennen.
Die SignIn URL ist fest oder

Code: Alles auswählen

https://www.amazon.de/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Falexa.amazon.de&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee_de&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&
Username und Passwort ist bekannt wo bekommt man jetzt die restlichen Parameter her die noch mit übergeben werden?
Hast du inzwischen Zeit gehabt dich mit dem Thema weiter zu beschäftigen?
0 x
Benutzeravatar

Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Di 10. Okt 2017, 11:14

radza hat geschrieben: Di 10. Okt 2017, 10:57 Hast du inzwischen Zeit gehabt dich mit dem Thema weiter zu beschäftigen?
Nein noch nicht, ich schau mal ob ich die Woche dazu komme.
0 x
Benutzeravatar

Themenstarter
radza
Beiträge: 43
Registriert: Fr 16. Dez 2016, 02:42
Vorhandene Echos: 3
Vorhandene Echo Dots: 2
Vorhandene Echo Shows: 1

Di 14. Nov 2017, 15:21

Mein Weg war der richtige :)
Unabhängig von mir und meinem Thread hat ein findiger Programmierer das Ganze in ein Shellskript verpackt und auf seinem Blog veröffentlicht. Funktioniert bestens!

http://blog.loetzimmer.de/2017/10/amazo ... -echo.html

Thread kann geschlossen werden.
0 x
Antworten

Zurück zu „Alexa Allgemein“

  • Information