Xiaomi Mi WIFI Extender 2

Oh .. wo fangen wir bei der Sache am besten an ? Vielleicht der Historie folgen .. na.. ah.. ok, ist wohl das beste.

Das war letzte Woche …

„Zssszzzzzzzzzzzs…“ machte die Tello über mir, aber mein Handy sagte „Nein. Hier fliegt keine Tello rum.“ Öh. Der Überkopfflug meiner neusten Anschaffung machte ein Verbindungsabbruch je zu nichte. Die Drohne hing in 10m über dem Abflugrasen fest in der Lust. Vermutlich würde sie von alleine runterkommen, wenn der Strom zu Neige ginge. Der Akku der Ryze DJI Tello hält aber locker 12 Minuten durch. Was machen ?

Der dezente Hinweis, man möge doch einfach näher an die Drohne ran gehen, konnte mich nicht begeistern. Vor zwei Jahren hatte ich mal ganz übel eine nicht vorhandene Stufe betreten wollen und die anschließende Luftnummer war gar nicht angenehm gewesen. 10m bis zur Drohne rauf ? Keine Chance zu Fuß.  Dronatello stand dagegen wie eine Eins in der Luft und wollte dort offenkundig nicht so schnell weg.

Ein beherztes „Hände hoch, Du bist umzingelt“, samt Handy versteht sich, brachte eine Verkürzung auf 8m Luftlinie und damit einen Reconnect des WLANs, über das die Tello Drohne gesteuert wird. Damit konnte die Drohne dann wieder überredet werden näher zu kommen. Faszinierend an der Sache ist, daß die Drohne horizontal 150m weit kommen kann ( ohne andere WLANs die stören ) aber nach 10m Steigflug hart vom Radar verschwindet.

Eine physikalische Erklärung  als erfahrener Funkamateur, der mit selbstgebauten Antennen bis zum Mittelmeer gekommen ist, kann ich dazu nicht abgeben. Das 2.4 GHZ WLAN der Drohne ist nicht gerichtet, also müßte es ohne zu murren 10m senkrecht reichen. Das Handy scheidet auch aus,  denn die Antenne kann man nach Belieben drehen, also auch kein Faktor. Es könnte höchstens sein, daß die Elektronik so blöde im Boden der Drohne angebracht ist, daß diese das WLAN Signal 90 Grad nach unten abschirmt.  Das bisschen Plastikgehäuse, daß die Motoren am Platz hält, scheidet als Störfaktor jedenfalls aus 🙂

Jetzt kann die Tello nur 10m hoch fliegen, weil die Firmware das als Hardlimit drin hat, aber die 150m theoretischen Meter sind jetzt auch nicht der Brüller, zumal die Liveübertragung der Kamera zum Handy stark entfernungsabhängig ist und einfach öfter bei 50m aussetzt. (Ja, bei den vielen WLANs hier, kein Wunder.)  Was tun ?

Na gut, Schritt 0 war die Drohne zu hacken und die 10m Begrenzung zu entfernen, aber darum solls nicht gehen 😀

Xiaomi Mi WIFI Extender 2

Ein Video auf Youtube später hatte ich einen Xiaomi Mi WIFI Extender 2 für rund 13 € bestellt. Das hätte ich mal lieber nicht getan. Was mich das Teil an Nerven gekostet hat, wo es doch „nur“ mal das WLAN der Drohne erweitern sollte, könnt Ihr kaum glauben. Heute war es soweit, der DHL Mitarbeiter unseres Vertrauens brachte das „gute“ Stück.

Ausgepackt & Eingesteckt waren eine Bewegung. Mist, der USB Port ist nicht breit genug.. anderen Port nehmen.

Schritt 1 – Konfigurieren

Ok, der ist an. Jetzt Konfigurieren, aber wie ?  Verbinden wir uns doch mal in das neue WLAN, da wird man schon einen Webdienst haben, der das erledigt und uns auch gleich noch das neue WLAN konfigurieren läßt.

Ja, sooooooo einfach hätte es sein können. War es aber nicht 🙁

Schritt 2 – Handy App installieren

Der  Connect ins WLAN war zwar möglich, aber außer einem TELNET Port ohne Zugangsdaten, war NICHTS da.  Also mußte eine HANDY App her, die ALLE und noch ein paar MEHR Android Rechte einforderte! Wirklich ALLE! Wenn ich ALLE sagen, meine ALLE, sogar welche, die es offiziell gar nicht gibt!

Wer mein Blog liest, der weiß, daß ich das nicht zulassen würde. Habe ich auch nicht. Dafür gibt es APPGUARD von SRT. Man installiert erstmal die fragliche App, dann sagt man AppGuard, daß die APP überwachen soll, der baut die neuzusammen, löscht das Original und installiert die geänderte App wieder ins System. Dann kann man die Rechte des Programms so downgraden wie man es für nötig hält.

In meinem Fall war das „Alles – ( WLAN & GPS )“ . Nun startete die App zwar, aber das Handy hing durch, was den Installationsprozess der Sache mal locker auf 10 Minuten verlängert hat, pro Versuch versteht sich 😉

Schritt 3 – App starten

Natürlich wollte diese chinesische Spionage App, deren Name hier nicht genannt werden soll, nicht einfach den Router suchen, nönö, die wollten auch noch das drittgeborene Kind, die Seele meiner Frau und alles was die Datenschutzbestimmung der EU explizit verbietet, also einen Cloud-Login. Ächts.. Na gut, Fake Adresse erzeugt, Weiterleitung auf echte Email angelegt, registriert. Lustigerweise wollte nie jemand wissen, wem der Account denn gehört. In China reicht wohl eine Nummer, oder dieser mysteriöse Telnetport auf dem Device aus.

Schritt 4 – Router suchen

und suchen und suchen und wenn ich nicht gestorben bin, sucht die App noch heute..

Was war der Fehler ? Die App hatte gefragt, wo ich bin, also sagte ich Europa. Ich hätte CHINA sagen sollen, denn Mikrosekunden nach der Umstellung auf die Location China Mainland, war der Extender gefunden 😀

Schritt 5 – Konfigurieren

Ja, das war dann die nächste Pleite. Der Extender wurde zwar gefunden, ich konnte dem auch noch sagen, welches Netz er klonen soll, aber das wars dann auch schon. Der Klonkrieg wurde nie erfolgreich beendet.

4 Stunden sind seit dem DHL Paketabwurf vergangen, Hürden wurden gemeistert, Apprechte gebrochen, Privatssphären sind für immer im Digitalen Dickicht verschütt gegangen, aber der Repeater repeatete nicht. Oder doch?

Ma guggen.. Hey, da ist ja son komisches neues Netz das .. TELLO_PLUS .. ob das … vielleicht.. Drohne an, App an, altes Tello Netz gelöscht, neues Tello Netz verbunden.. Scheisse.. ein BILD!! ich habe ein BILD.. und weg 😀  WTF.. Dronatello hatte sich abgeschaltet, dem wars zu blöd geworden, wie affig lange der Extender braucht um zu connecten.

3 Versuche später, ohne LAPTOP, das zu Debuggzwecken und Telnethacks mitlief, gings dann irgendwann doch.

Fazit

TUT ES EUCH NICHT AN. Nehmt ein Laptop, benutzt das als REPEATER, das hält auch länger und spioniert Euch nicht aus! ganz ehrlich, die 13 € war das NICHT WERT!

Ob es das 10m Problem löst, weiß ich bis heute noch nicht 😀

Linux – ISO Image brennen

Aus gegebenem Anlass heute das Thema, wie man eine ISO Datei auf einen USB Stick „brennt“.

Die einfache Antwort lautet natürlich: Genau so wie auf eine DVD, aber das ist natürlich nicht hilfreich, daher folgt eine bebilderte Anleitung.

Methode 1

Schritt 1 : Das Laufwerke Tool starten ( aka. Gnome-Disks )

Schritt 2 : Den USB Stick reinstecken und auswählen

Laufwerketool

Schritt 3 : Im Menu ( oben in der Fensterleiste ) „Laufwerksabbild wiederherstellen“ auswählen ( kommt der Kontext oben im Bild )

Schritt 4 : mit dem Dateirequester das ISO Image auswählen

Schritt 5 : Wiederherstellen anklicken

Wirklich brennen?

Schritt 6 : Die Rückfrage beantwortet und abwarten bis der Vorgang beendet ist.

Methode 2

  1. Im Nemo/Nautilus die ISO Datei rechts anklicken.

2. Öffnen mit „Schreiber von Laufwerksabbildern“ ( ganz unten )

Alternative Methode

3. Als Ziel den USB Stick auswählen

4. Wiederherstellung starten und bestätigen

5. Abwarten und Tee trinken gehen!

Fedora 24: Wenn Automount nicht mehr geht

Wenn man einen USB-Stick in seinen Rechner steckt, erwartet man eigentlich, daß er als Laufwerk auftaucht. Seitdem Update auf Fedora 24 passierte das bei mir nicht mehr.

Schuld dürfte das unterbrochene Upgrade von F23 auf F24 sein, aber wer weiß.  Erstmal die Lage feststellen…

Werden die Drives gefunden ?

Als erstens schauen wir ins .. ups.. das gibt bei Euch nicht ja gar nicht mehr… /var/log/messages (Pech, ich habs noch 🙂 ) Wenn Ihr /v/l/m nicht mehr habt, dann könnt Ihr z.B. „dmesg“ befragen.

Steckt man einen USB Stick rein, muß sowas im Log erscheinen:

Nov  2 15:51:07 eve kernel: usb-storage 3-2:1.0: USB Mass Storage device detected
Nov  2 15:51:07 eve kernel: scsi host4: usb-storage 3-2:1.0
Nov  2 15:51:08 eve kernel: scsi 4:0:0:0: Direct-Access     Intenso  Rainbow Line     8.07 PQ: 0 ANSI: 4
Nov  2 15:51:08 eve kernel: sd 4:0:0:0: Attached scsi generic sg4 type 0
Nov  2 15:51:08 eve kernel: sd 4:0:0:0: [sdd] 7907328 512-byte logical blocks: (4.05 GB/3.77 GiB)
Nov  2 15:51:08 eve kernel: sd 4:0:0:0: [sdd] Write Protect is off
Nov  2 15:51:08 eve kernel: sd 4:0:0:0: [sdd] Write cache: disabled, read cache: enabled, doesn’t support DPO or FUA
Nov  2 15:51:08 eve kernel: sdd: sdd1
Nov  2 15:51:08 eve kernel: sd 4:0:0:0: [sdd] Attached SCSI removable disk

Merkt GVFS, daß ein Gerät angeschlossen wurde ?

In einer Bash als normaler User führt Ihr mal „gvfs-mount -o -i“ aus:

Da müßte dann sowas stehen :

Drive changed:      'Intenso Rainbow Line'
  Drive(0): Intenso Rainbow Line
    Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
    ids:
     unix-device: '/dev/sdd'
    themed icons:  [drive-removable-media-usb]  [drive-removable-media]  [drive-removable]  [drive]
    symbolic themed icons:  [drive-removable-media-usb-symbolic]  [drive-removable-media-symbolic]  [drive-removable-symbolic]  [drive-symbolic]  [drive-removable-media-usb]  [drive-removable-media]  [drive-removable]  [drive]
    is_media_removable=1
    has_media=1
    is_media_check_automatic=1
    can_poll_for_media=0
    can_eject=1
    can_start=0
    can_stop=0
    start_stop_type=shutdown
    sort_key=01hotplug/1478096885644198

Volume added:       'Daten'
  Volume(0): Daten
    Type: GProxyVolume (GProxyVolumeMonitorUDisks2)
    ids:
     class: 'device'
     unix-device: '/dev/sdd1'
     uuid: '227C9F0E7E06FAF9'
     label: 'Daten'
    themed icons:  [drive-removable-media-usb]  [drive-removable-media]  [drive-removable]  [drive]
    symbolic themed icons:  [drive-removable-media-usb-symbolic]  [drive-removable-media-symbolic]  [drive-removable-symbolic]  [drive-symbolic]  [drive-removable-media-usb]  [drive-removable-media]  [drive-removable]  [drive]
    can_mount=1
    can_eject=1
    should_automount=1
    sort_key=gvfs.time_detected_usec.1478096885851240

d.b. das GVFS Kenntnis von dem neuen Gerät hat und nun an den Filemanager melden kann, daß DER es einhängen soll.

Wieso werden die dann nicht gemountet ?

Um das zu beantworten muß man etwas über Prozesskommunikation wissen. Die im OS dafür zuständige Komponente heißt D-BUS . Über den D-BUS kann Anwendung A Informationen an Anwendung B senden. Damit das auch bei Desktopanwendungen funktioniert, braucht es eine Spezialversion D-BUS X11 .

Die hatte es wohl bei meinem unterbrochenen Upgrade nicht sauber installiert, also holen wir das nach:

dnf reinstall dbus-x11

Reinstall simuliert das Entfernen und erneute Installieren in einem Rutsch. Danach noch Nautilus oder Nemo neu starten:

killall nautilus; nautilus --force-desktop

und schon tauchen die Laufwerke auch wieder auf dem Desktop und im Nautilus auf.

So leicht das hier auch klingt, in Realität hat es Stunden gedauert, bis ich das gefunden hatte.

WinSec: Zugangsdatenhash in unter 2 Sekunden geklaut

Der Rechnerarbeitsplatz ist verwaist, der Screensaver mit Passworteingabe saved so vor sich in, und doch sind die Logindaten jetzt bei jemand anderem?

Was nach Magie klingt, ist lediglich das Ausnutzen von aktuellen Mechanismen unter Windows, MacOs und vielleicht auch Linux. Der Angreifer ist dabei ein kleiner USB Stick, der sich als Netzwerkkarte ausgibt und eine schnellere und bessere Netzwerkanbindung verspricht, als die Netzwerkkarte zu bieten hat. Akzeptiert das Betriebssystem die neue Netzwerkkarte als besser, trennt es die bisherigen Netzwerkverbindungen auf und erstellt über den neuen Link sofort neue Verbindungen.  (DHCP ist da nicht ganz schuldlos dran.)

Was kann dabei schon schief gehen, ist doch alles verschlüsselt !

Ja, was kann da schon schief gehen, wenn man sich als SMB Client, Unixern besser bekannt als Samba, als ein Netzwerklaufwerk neu an einem Netzwerkgerät anmeldet ? Na, das Passwort wird erneut übertragen, was im Fall von Samba ein Passwordhash ist und der ist bei Nativem Windows, wer hätte es erraten, nicht sicher. Deswegen Blocken Router Samba auch per Default, damit es keine Passwörter und Usernamen verrät. Ja, der Username wird in Klartext übermittelt 😀

Der Gag am Rande, SMB schickt den Usernamen und Hash unaufgefordert zum Netzwerkgerät, selbst wenn man da noch nie angemeldet war, weil es könnte ja einen User mit dem Passwort dort geben und dann soll der verdammt nochmal auch gleich das Laufwerk benutzen können.

SMB Entwickler: Laßt Euch von der Marketingabteilung nicht immer alles  gefallen, Ihr Weicheier ! Steht auch mal für ein „Nein, ist uns zu unsicher.“ ein !

Wer wars, was benutzte er dazu ?

Hacker Mubix beschreibt in seinem Beitrag wie er mit einer 50 US$ Hardware den Angriff in 15 Sekunden durchführt. Dazu läuft auf dem USB Stick ein Minicomputer mit Linux der einen Sambashare simuliert und einfach alle IPs bedient.

Besser verständlich ist allerdings ein Video von Hak5 über einen anderen Angriff, der die gleiche Lücke von SMB ausnutzt, aber nur funktioniert, wenn der User eingeloggt ist. Dafür braucht er nur 1,5 Sekunden dafür, und dafür reicht schon ein simples Ablenkungsmanöver.

Gegenmaßnahmen

So leid es mir tut, dies zu sagen, aber außer Ausschalten hilft da nichts, weil aus einem Standby könnte der Angreifer den Rechner rausholen, die Netzwerkkarte zu deaktivieren und damit das Netz lahmlegen nutzt auch nichts, weil das USB Gerät ist ja eine Netzwerkkarte und genau die will das OS haben.  Man müßte schon in Windows das automatische akzeptieren von USB Geräten abschalten. Lustigerweise wird das für Storage-Sticks auch gemacht, aber eine USB-Ethernetkarte ist halt kein Storage-Stick 😀  Mal sehen ob M$ ein Einsehen hat und einen Patch rausbringt, daß wenn der Screensafer läuft, keine Automatismen greifen.

Mit LUKS einen USB Stick verschlüsseln

Was alles so passiert, wenn man sich langweilt… da kommt man auf die komischsten Ideen, z.b. einen USB-Stick mit LUKS zu verschlüsseln und davon ein „Tutorial“ zu schreiben.

Als erstes brauchen wir das bei Fedora schon beiliegende Laufwerke Tool. Wir suchen uns den USB Stick aus und formatieren diesen über das obere Menü am Fensterrand!

Crypto-1Damit das für das Tutorial schneller geht, denn der USB Port ist nicht der schnellste, habe ich QUICK Format ausgewählt. Das ist insofern ein Problem, als das dies einen Angriff auf die Verschlüsselung zuläßt, wenn man nicht gleich große Datenmengen darauf spielt. Da dies Tutorial nur die Basis für einen anderen Artikel ist, kann ich davon ausgehen, daß gleich große Datenmengen auf den Stick kommen. SIE zuhause werden die Methode „Langsam“ auswählen.

Crypto-1Ist der Stick frisch formatiert, richten wir eine LUKS Partition ein. Dazu drücken wir auf das Zahnrädericon unter der Partitionsanzeige und legen eine neue Partition an :

Crypto-2Offensichtlich habe ich mich bei den Namen der Partition vertan, aber macht nichts, das wird im nachfolgenden Artikel der Serie ohnehin überschrieben. Der Name hier ist für die automatisch erstellte Ext4 Formatierung der (später) entschlüsselten Partition wichtig und die wird in Teil 2 der Serie gleich wieder vernichtet. Passphrasen sollten min. 20 Zeichen lang sein, Groß- und Kleinbuchstaben und natürlich Zahlen beinhalten. Ich hoffe, daß niemand auf die Idee kommt, dieses Passwort ernsthaft zu benutzen 😉

Wenn das Laufwerketool mit der Partitionierung fertig ist, sieht das so aus:

Crypto-3und was wir danach mit dem Stick machen, gibt es morgen zu lesen in … Die Rachel von Kryptistan – Eine Saga um Bits und Bytes.