TL;DR
- Smart Bluetooth männliche keuschheit schloss, entwickelt für benutzer zu geben fernbedienung zu einem trusted 3rd party mit mobile app/API
- Mehrere API mängel bedeutete jemand könnte aus der ferne schloss alle geräte und verhindern benutzer von freigabe selbst
- Entfernung dann erfordert eine winkel grinder oder ähnliche, verwendet in unmittelbarer nähe zu heiklen und sensiblen bereichen
- Präzise benutzer lage daten auch durchgesickert durch API, einschließlich persönliche informationen und private chats
- Vendor zunächst reagieren, dann verpasst drei behebung fristen sie set selbst über einen 6 Monat zeitraum
- Weigerte sich dann schließlich, weiter zu interagieren, obwohl die meisten Probleme bei der Migration zur v2-API behoben wurden, API v1 jedoch unentschuldbar verfügbar blieb
- Dieser Beitrag wurde in Abstimmung mit Internet of Dongs veröffentlicht
- 27 / 01 / 2021 Sie geben an, dass die Probleme mit Mobilgeräten und APIs nun behoben wurden.
Intelligentes Spielzeug für Erwachsene und wir
Wir haben lange nicht mehr über intelligentes Spielzeug für Erwachsene geschrieben, aber der Qiui Cellmate Keuschheitskäfig war einfach zu interessant, um daran vorbeizukommen. Wir wurden über das Keuschheitsgürtel für Erwachsene informiert, entworfen, um das Anhängsel des Trägers einzusperren.
Es gibt andere männliche Keuschheitsvorrichtungen, aber dies ist ein Bluetooth (BLE) -fähiger Verschluss- und Klemmmechanismus mit einer begleitenden mobilen App. Die Idee ist, dass der Träger die Kontrolle über das Schloss an jemand anderen weitergeben kann.
Wir sind nicht im Geschäft des Kink Shaming. Menschen sollten in der Lage sein, diese Geräte sicher und geschützt zu verwenden, ohne dass das Risiko besteht, dass sensible persönliche Daten durchgesickert sind.
Die Sicherheit des teledildonics Feldes ist in seinem eigenen Recht interessant. Es ist erwähnenswert, dass der Verkauf von intelligentem Spielzeug für Erwachsene während der jüngsten Sperrung erheblich gestiegen ist.
Was ist das Risiko für Benutzer?
Wir haben festgestellt, dass entfernte Angreifer das Öffnen der Bluetooth-Sperre verhindern und den Benutzer dauerhaft im Gerät sperren können. Es gibt keine physische Entsperrung. Die Röhre ist an einem Ring befestigt, der um die Basis der Genitalien getragen wird, Dinge unzugänglich machen. Ein Winkelschleifer oder ein anderes geeignetes schweres Werkzeug wäre erforderlich, um den Träger freizuschneiden.
Standort, Klartext-Passwort und andere persönliche Daten wurden auch ohne Authentifizierung durch die API durchgesickert.
Wir hatten besondere Probleme während des Offenlegungsprozesses, da wir den Anbieter normalerweise aufforderten, eine undichte API zu entfernen, während die Behebung implementiert wurde. Jeder, der das Gerät derzeit verwendet, wenn die API offline geschaltet wurde, wird jedoch auch dauerhaft gesperrt!Wie Sie in der Offenlegungszeitleiste am Ende dieses Beitrags sehen werden, wurden einige Probleme behoben, andere jedoch nicht, und der Anbieter hat einfach aufgehört, uns, Journalisten und Einzelhändlern zu antworten. Angesichts der Trivialität, einige dieser Probleme zu finden, und dass das Unternehmen an einem anderen Gerät arbeitet, das einen noch größeren potenziellen physischen Schaden darstellt (ein „internes“ Keuschheitsgürtel), haben wir uns gezwungen gefühlt, diese Ergebnisse an dieser Stelle zu veröffentlichen.
Die Probleme
Wir haben hier wichtige Details redigiert.
Mobile App
Bei der mobilen App haben wir sehr schnell eine schwerwiegende Sicherheitslücke im Datenschutz gefunden: Alle API-Endpunkte wurden nur mit einem langen „memberCode“ authentifiziert, um Anfragen zu stellen. Der memberCode selbst ist etwas deterministisch und basiert auf dem Datum, an dem sich ein Benutzer für den Dienst angemeldet hat, Wir haben jedoch einen noch einfacheren Weg gefunden, indem wir einen kürzeren „Freundescode“ verwendet haben.
Eine Anfrage mit diesem sechsstelligen „Freund“ -Code gab eine riesige Menge an Informationen über diesen Benutzer zurück, einschließlich sehr sensibler Informationen wie Name, Telefonnummer, Geburtstag, die genauen Koordinaten, an denen die App geöffnet wurde, ihr längerer „memberCode“ -Wert und das Klartext-Passwort des Benutzers (nicht, dass wir es brauchen).
Ein Angreifer würde nicht länger als ein paar Tage brauchen, um die gesamte Benutzerdatenbank zu exfiltrieren und für Erpressung oder Phishing zu verwenden.
Nummern und durchgesickerte Standortdaten
Wir konnten einige IDs nach dem Zufallsprinzip testen und die Standorte der Benutzer zum Zeitpunkt der App-Registrierung anzeigen. Beachten Sie, dass dies nur eine kleine Teilmenge der Benutzer aus den verfügbaren Daten ist. Wir haben alle persönlichen Informationen sofort weggeworfen.
memberCode data = DoS für den Benutzer
Jetzt haben wir den längeren memberCode, mit dem wir alle Geräte abrufen können, die dieser Person zugeordnet sind:
GET /list?memberCode=20200409xxxxxxxx HTTP/1.1Host: qiuitoy.comConnection: close "deviceId": 0, "deviceCode": "201909xxxxxxxxxx", "deviceName": "Cellmatexxxx", "deviceNick": "Cellmatexxxx", "deviceNumber": "QIUIxxxxxxxxx", "deviceType": 2, "deviceBlue": null, "deviceBlueAddr": "F9:34:02:XX:XX:XX", "isEncrypt": 1,
Und sobald wir das haben, können wir herausfinden, welche Berechtigungen diese Person über dieses Schloss hat (also können sie es selbst entsperren oder müssen jemand anderen fragen):
GET /wear?memberCode=20200409xxxxxxx&deviceCode=20191204xxxxxx HTTP/1.1Host: qiuitoy.com
Und wenn sie können, können wir das umdrehen, so dass sie jetzt aus dem Gerät gesperrt sind:
POST /binding HTTP/1.1Host: qiuitoy.comConnection: closememberName=Pwned&memberCode=20200409xxxxxx&deviceCode=20191204xxxxxx
Und wir können das mit jedem machen, sehr schnell, indem wir jeden einsperren oder aussperren. Es gibt auch keine Notfall-Override-Funktion, wenn Sie also eingesperrt sind, gibt es keinen Ausweg. Dies kann oder kann nicht als Feature betrachtet werden!
BLE-Probleme
Die BLE-Implementierung selbst erfordert eine API-Anforderung, um einen Entsperrbefehl basierend auf einem zuvor in die Sperre geschriebenen Token zu generieren. Es ist möglich, dass wir die Anfragen und Antworten analysieren, um den richtigen Schlüssel zu generieren, oder die Schlosshardware selbst zurückentwickeln …
Das Obige stammt aus der dekompilierten Android-App und wenn wir es mit Frida verbinden, können wir die Benachrichtigungen (36f6) und Schreibvorgänge (36f5) sehen, die mit der überprüfung der batterie ebene erste und dann die entsperren (die dritte schreiben):
BluetoothGattCallback constructor called from com.apicloud.uzble.AndroidBle$2 UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x56f3430769ddd6e1603xxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0xe01012b3074d111c98bxxx UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x25f8a92325fd9cfc7ea79xxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0x2717dd996ab4a017a6ceexxx UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x9ee90373a2d3f156b3557xxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0xbcdaea06fa1cb94f3f1c2596xxx UUID: 000036f5-0000-1000-8000-00805f9b34fb data: 0x9ee90373a2d3f156b3557d52xxxx UUID: 000036f6-0000-1000-8000-00805f9b34fb data: 0xc04dab04c54c818d808a78c79adef839
Aber warte, das Hex aus der Android-App, und die BLE-Eigenschaften sehen schrecklich vertraut aus. Es ist genau die gleiche Implementierung wie das Nokelock, das wir uns angesehen haben, außer dass der beworbene Gerätename „OKGSS101“ ist.
Der per Lock AES-Verschlüsselungsschlüssel wird im API-Aufruf zurückgegeben, der die zuvor erstellten Geräte auflistet. Massenfreischaltung über BLE jemand?
Eingesperrt? Hier ist eine Problemumgehung
Wenn Sie sich eingesperrt befinden, fragen Sie sich wahrscheinlich, wie Sie ohne schweres Werkzeug oder einen Besuch in der Notaufnahme herauskommen können …
Das Design des Verriegelungsstifts verwendet einen Motor, um ihn zurückzuziehen, und ist leider nicht eisenhaltig, so dass weder Magnete einfach verwendet werden können, noch „stoßen“ Sie ihn auf (wie Sie ihn tragen werden). Ich hatte ein wenig Erfolg mit einer Unterlegscheibe aus einer zerschnittenen Dose, aber die Idee von scharfem, spitzem Metall in der Nähe von etwas Wichtigem ist nicht ideal.
Die „bessere“ Alternative besteht darin, den Leiterplattenbereich zu öffnen, in dem sich der vordere Knopf und das Licht befinden:
Es ist eingeklebt, kam aber ohne großen Aufwand oder Schaden heraus. 3 volt (zwei AA batterien) angewendet, um die weiß und gelb drähte ist genug zu stick die entsperren motor direkt (weiß = negative, gelb = positive), eine technik bekannt als „spiking“.Ihre örtliche Notaufnahme wird wahrscheinlich die richtigen Werkzeuge haben, um das Metall sicher zu schneiden, und wäre Ihre bessere erste Anlaufstelle!
Fazit
Für eine realistische Bedrohung scheint das Risiko des Verlusts personenbezogener Daten eher ausgenutzt zu werden und einen Angreifer zu belohnen.Eine Reihe von Ländern haben repressive Gesetze, die Benutzer dieser Art von Geräten ungerechtfertigten Interessen von Strafverfolgungsbehörden und Bigotten aussetzen können.
Außerdem möchten Benutzer wahrscheinlich ihr Privatleben privat halten. Sie sollten standardmäßig Datenschutz und Sicherheit durch Design erwarten. Wenn man sehr private Informationen teilen möchte, sollte dies durch explizite Absicht des Benutzers geschehen.
Viele Anbieter von Spielzeug für Erwachsene haben in den letzten Jahren fast völlige Missachtung von Datenschutz und Sicherheit gezeigt. Glücklicherweise haben Projekte wie das Internet der Dongs dazu beigetragen, viele zu einer verbesserten Sicherheit zu führen. Offensichtlich hatte Qiui die Nachricht nicht bekommen.
Zeitplan für die Offenlegung
Die Offenlegung verlief nicht so nahtlos, wie wir ursprünglich gehofft hatten:
20. April 2020: Wir haben sie gefragt, an wen wir das Problem melden sollen. Sie antworteten sehr schnell. Cool!
Kein Problem, also haben wir es erneut ohne PGP versucht:
Also haben wir ihnen die Details geschickt. Stille herrschte.
26. Mai 2020: Wir haben etwas mehr Druck ausgeübt, sie haben geantwortet und erklärt, dass sie das bis zum 6. Juni beheben würden.
06.11.2020: Eine aktualisierte Version wurde in den Play Stores der App & bereitgestellt. Dadurch wurden hauptsächlich Probleme behoben, bei denen Anforderungen jetzt zur Authentifizierung gezwungen wurden. Ältere API-Endpunkte wurden jedoch belassen, und neue APIs gaben immer noch genaue Benutzerspeicherorte zurück.
17.Juni 2020: Wir haben eine Nachricht mit den verbleibenden Problemen gesendet, ohne Antwort.
25. Juni 2020: Wir haben uns erneut über einen Journalisten an Qiui gewandt und gesagt, dass sie nichts reparieren wollten (oder konnten), da sie „nur“ 50.000 Dollar hatten.
30. Juni 2020: Wir haben eine Follow-up-E-Mail (und Twitter-DM) mit möglichen Korrekturen für die verbleibenden Probleme gesendet (und sie für alle Fälle ins Chinesische übersetzen lassen), ohne Antwort.
10.Juli 2020: wir haben zwei britische Einzelhändler des Geräts kontaktiert, um sie auf die Probleme aufmerksam zu machen. Einer zog es aus dem Verkauf zurück und nahm Kontakt zu den in der EU ansässigen Großhändlern auf. Qiui antwortete den Einzelhändlern, dass die verbleibenden Probleme „im August“ behoben würden.
11.September 2020: Auch RenderMan von @InternetOfDongs meldete sich bei uns: Er hatte mit Qiui einem anderen Forscher durch den Enthüllungsprozess geholfen. @MikeTsenatek hatte unabhängig ein Problem beim Zurücksetzen des Passworts festgestellt und hatte auch Schwierigkeiten, vom Anbieter gehört zu werden. Zufällig bemerkte er vor einiger Zeit einen Tweet von mir, dachte, dass wir uns dieses Gerät ansehen könnten und streckte die Hand aus.
Wir hatten einen tollen Anruf zusammen, wo wir bemerkenswert ähnliche Erfahrungen von Interaktionen mit Qiui ausgetauscht haben! Sein Write-up ist hier verfügbar.
Dies bestärkte unsere Entscheidung zu veröffentlichen: Offensichtlich waren andere wahrscheinlich, diese Probleme unabhängig von uns zu finden, so dass der Fall des öffentlichen Interesses in unseren Köpfen gemacht wurde.
RenderMan verdient definitiv ein Lob für seine fortgesetzten Bemühungen, Gespräche zwischen Forschern und Anbietern in der Spielzeugarena für Erwachsene zu vermitteln. Einige Anbieter haben erhebliche Verbesserungen ihrer Produktsicherheit und Privatsphäre als Ergebnis ihrer harten Arbeit gemacht.
4. Oktober 2020: Wir wurden von einem dritten Forscher mit ähnlichen Bedenken kontaktiert.
6. Oktober 2020: Wir haben in Abstimmung mit den anderen Parteien veröffentlicht.
Update 27/01/2021
Der europäische Distributor von Qiui hat uns gebeten, diesen Blog angesichts der Entwicklungen zu aktualisieren. Sie kontaktierten uns am 28.Dezember, zu erklären, dass das Problem mit der mobilen App war. Dies war nicht unser Verständnis, da die oben genannten Sicherheitsprobleme in der API enthalten sind.
Wie auch immer, wir baten um Beweise dafür und erhielten von einer 3rd-Partei einen Stifttestbericht aus der mobilen App .
Der Bericht war eindeutig von der mobilen App und hatte eine Reihe von Empfehlungen abgegeben.
Wir gingen zurück zum Distributor und baten um eine Kopie eines Pen-Testberichts der API.
Das war am 19.Januar. Eine Reihe anderer Probleme wurde festgestellt, ein Ergebnis eines vollständig autorisierten Pen-Tests, zu dem wir während unserer ursprünglichen Forschung keine Erlaubnis hatten.
Sie geben an, dass die mobilen und API-Probleme nun behoben wurden.