Howto: Installation Xiaomi Mi Router 4A (R4AC) 100m - International Edition

Ich habe zwei dieser Router, die Anfang 2021 hergestellt wurden. Sie haben zwei LAN-Anschlüsse und einen WAN-Anschluss. Zusätzlich gibt es einen Reset-Knopf, vier Antennen und zwei LEDs. Die eine LED zeigt den Status des Gerätes, in verschiedenen Farben an. -die andere den Status des WAN-Anschlusses und dessen Aktivität.

Die Installation aus dem Administrationsbereich der Herstellerfirma ist aktuell noch nicht möglich. Hierfür ist OpenWRTInvasion nötig. Das ist ein Root shell exploit für verschiedene Xiaomi Router.

Zur Installation habe ich ein Debian 11 Linux verwendet.

Bitte sei vorsichtig und ausgeschlafen! Der Vorgang kann Deinen Router zerstören.

Andere deutschsprachige Anleitungen:
https://wiki.freifunk-franken.de/w/Firmwareinstallation/Xiaomi_Mi_Router_4A#Xiaomi_Mi_4A_.28100m.29

Kurz gehaltene Anleitungen in englischer Sprache gibt es unter:


Schritt für Schritt zur Freifunk Firmware auf dem mi 4A 100m

OpenWRTInvasion installieren

In der Konsole Deiner Wahl:

apt install git
apt install python3-venv
git clone https://github.com/acecilia/OpenWRTInvasion.git
cd OpenWRTInvasion/

python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt

Router flashen

Router anschließen, ans Internet hängen über den WAN Anschluss. Computer über den LAN-Anschluss anschließen und Ersteinrichtung, ohne ein Firmwareupdate machen.

In Deiner Konsole Befehl ausführen:

python3 remote_command_execution_vulnerability.py

Falls nicht automatisch erkannt, die Router IP eingeben.
Bei mir war es die 192.168.31.1

Wenn der Router eingerichtet ist und Du auf der Statusseite des Routers bist, kannst Du aus der URL den STOK-Parameter sehen und kopieren. Wenn die STOK-ID nicht automatisch ausgelesen werden kann, kopiere diese in Deine Konsole.

Die URL sieht etwa so aus:

http://192.168.31.1/cgi-bin/luci/;stok=1235547899521212212

Im Optimalfall macht das Skript nun seine Magie und gibt aus, dass Du Dich nun zum Beispiel per Telnet, SSH oder FTP verbinden kannst.

telnet < IPv4-Adresse des Routers >

Wenn die Verbindung abgelehnt wird, kann es helfen, das Skript nochmals auszuführen.

python3 remote_command_execution_vulnerability.py

Alternativ den Router neu starten und noch einmal probieren.

Benutzer und Passwort: root
Nun solltest Du vom Router begrüßt werden:

Verbindung mit dem Router per Telnet: https://github.com/acecilia/OpenWRTInvasion/raw/master/readme/exploit-002.gif

Checks

Modell und Firmwareversion anzeigen:

uname -a

bei mir: Linux XiaoQiang 3.10.14 #1 MiWiFi-R4AC-3.0.12 Tue Dec 22 12:21:29 UTC 2020 mips GNU/Linux

Prüfen, ob das Partitionslayout zur Firmware passt:

cat /proc/mtd

Beim Punkt mtd6 muss der Wert: mtd6: 00200000 00010000 “overlay” stehen.
Steht dort etwas anderes, bitte abbrechen und Unterstützung im Forum suchen.

Firmware auf den Router laden

Nun musst du dir die korrekte URL des sysupgrade Images besorgen. Für den FFRN gibt es die Firmware unter fw.ffrn.de. Den korrekten Wert findest du in der *.manifest Datei im Ordner wo die Datei liegt.

cd /tmp # Verzeichnis wechseln
curl http://fw.gluon.ffrn.de/gluon-ffrn-1.9.x-20220803-xiaomi-mi-router-4a-100m-international-edition-sysupgrade.bin --output firmware.bin # Hier muss die korrekte Adresse der Freifunk Firmware hin.

./busybox sha256sum firmware.bin # Hash prüfen. Wenn er sich unterscheidet von der Originaldatei Vorsicht! Es Deinen Router zerstören. 

mtd -e OS1 -r write firmware.bin OS1 # Firmware installieren 

Die Ausgabe könnte so aussehen:

root@XiaoQiang:/tmp#  mtd -e OS1 -r write firmware.bin OS1 
Unlocking OS1 ...
Erasing OS1 ...

Writing from firmware.bin to OS1 ...     
Rebooting ...
Connection closed by foreign host.
(venv) xxx@x260:~/OpenWRTInvasion$ 

Nun noch etwa 10 Minuten warten.
Nach dem Neustart des Routers kannst Du Dich über die IP-Adresse 192.168.1.1 mit dem Browser verbinden und den Freifunk Router konfigurieren.

1 „Gefällt mir“

@TomH ich kann den Beitrag nicht mehr bearbeiten. Der Stift ist weg.
https://wiki.freifunk-franken.de/w/Firmwareinstallation/Xiaomi_Mi_Router_4A#Xiaomi_Mi_4A_.28100m.29

@hdvalentin probiere es jetzt nochmal

1 „Gefällt mir“

geht, danke.