Benutzer-Werkzeuge

Webseiten-Werkzeuge


raspberry-pi-monitor-mode

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
raspberry-pi-monitor-mode [2018/11/10 10:47] bennyraspberry-pi-monitor-mode [2024/06/09 10:29] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 ====== Raspberry Pi 3 B+ mit Wireless Monitor Mode Unterstützung aufsetzen ====== ====== Raspberry Pi 3 B+ mit Wireless Monitor Mode Unterstützung aufsetzen ======
  
-In diesem Artikel wird beschrieben wie ein Raspberry Pi 3 B+ mit einem speziellen Wireless-USB-Stick verwendet wird um Aufzeichnungen von 80 MHz breiten Kanälen aufzuzeichnen. Dies ist offensichtlich mit anderen Lösungen entweder sehr kostspielig (kommerzielle Lösung) oder äußert umständlich. Generell würde das hier beschriebene Verfahren auch mit älteren Raspberry Pis funktionieren, da die Onboard 11ac Schnittstelle nicht zum gewünschten Erfolg führte.+In diesem Artikel wird beschrieben wie ein Raspberry Pi 3 B+ mit einem speziellen Wireless-USB-Stick verwendet wird um 80 MHz breite Kanäle aufzuzeichnen zu können. Dies ist mit anderen Lösungen entweder sehr kostspielig (kommerzielle Lösung) oder äußert umständlich. Generell würde das hier beschriebene Verfahren auch mit älteren Raspberry Pis funktionieren, da die Onboard 11ac Schnittstelle nicht zum vollständigen Erfolg führte (siehe unten). 
 + 
 +Der Großteil dieses Artikels basiert auf der Verwendung von diesem Wireless-LAN Adapter (für den es passende Treiber für Linux gibt, mit Monitoring Mode Unterstützung): https://www.amazon.de/Alfa-AWUS036ACH-Dual-Adapter-AC1200/dp/B00VEEBOPG/
  
 ===== MicroSD Karte vorbereiten ===== ===== MicroSD Karte vorbereiten =====
Zeile 151: Zeile 153:
 ==== Weitere Pakete installieren ==== ==== Weitere Pakete installieren ====
  
-Nun installieren wir zusätzliche Pakete, um dann einene eigenen Treiber (der den Monitor Mode unterstützt) bauen zu können.+Nun installieren wir zusätzliche Pakete, um dann einen eigenen Treiber (der den Monitor Mode unterstützt) bauen zu können.
  
 <code> <code>
Zeile 170: Zeile 172:
 After this operation, 173 MB of additional disk space will be used. After this operation, 173 MB of additional disk space will be used.
 </code> </code>
 +
 +<WRAP center round tip 60%>
 +An dieser Stelle empfehle ich den Raspberry Pi mit **sudo reboot** neuzustarten! In den folgenden Schritten werden wir Treiber kompilieren und dafür ist es gut wenn der aktualisierte Kernel läuft (und damit zum Quelltext passt den wir dafür ebenfalls heruntergeladen haben).
 +</WRAP>
 +
  
 ==== VIM und die Mausunterstützung ==== ==== VIM und die Mausunterstützung ====
Zeile 175: Zeile 182:
  
 <code> <code>
-pi@raspberrypi:~ $ vi .vimrc+pi@raspberrypi:~ $ sudo vi /etc/vim/vimrc.local
 set mouse= set mouse=
 +set ttymouse=
  
 (mit :wq abspeichern und beenden) (mit :wq abspeichern und beenden)
 </code> </code>
  
 +==== Quellcode für Treiber herunterladen und kompilieren ====
  
 +<WRAP center round tip 60%>
 +Vielen Dank an das **aircrack-ng** Team die dies möglich machen! Weitere Details sind hier zu finden: https://github.com/aircrack-ng/rtl8812au
 +</WRAP>
  
 <code> <code>
-TODO: +pi@raspberrypi:~ $ git clone https://github.com/aircrack-ng/rtl8812au 
-udev Rules für wlan1/wlan2 +Cloning into 'rtl8812au'... 
-- DHCP & Co für die wlan1/wlan2 Interfaces vermeiden +remote: Enumerating objects: 118, done. 
-- VIM Visual ausmachen +remote: Counting objects: 100% (118/118), done. 
--  +remote: Compressing objects: 100% (86/86), done. 
-</code>+remote: Total 5924 (delta 49), reused 70 (delta 32), pack-reused 5806 
 +Receiving objects: 100% (5924/5924), 12.50 MiB | 1.57 MiB/s, done. 
 +Resolving deltas: 100% (4047/4047), done.
  
-#### Alles ab hier ist outdated und wurde oberhalb überarbeitet ####+pi@raspberrypi:~ $ cd rtl8812au/ 
 +pi@raspberrypi:~/rtl8812au $ vi Makefile 
  
 +CONFIG_PLATFORM_I386_PC suchen und auf "n" setzen
 +CONFIG_PLATFORM_ARM_RPI suchen und auf "y" setzen
  
-<WRAP center round tip 60%> +(vim mit :wq beenden und die obige Änderung speichern!) 
-An diesem Artikel wird noch gearbeitet und aktuell sind Erfahrungen mit BRCM on-board und TP-Link "Archer" T2UH veröffentlicht. Die Erfahrungen mit dem Alfa Stick folgen. +</code>
-</WRAP>+
  
 +==== rtl8812au Treiber mit DKMS kompilieren ====
  
-===== Image auf MicroSD Karte schreiben =====+Den Treiber über diese DKMS-Funktion zu erstellen hat den Vorteil dass beim nächsten Kernel-Update der Treiber einfach neu gebaut werden kann ohne dass man dies manuell tun müsste.
  
-rdisk4 wg. dem Macbook, die Nummer weicht auf anderen Systemen ab - also bitte darauf achten dass man nicht versehentlich eine falsche Platte/Karte überschreibt. 
 <code> <code>
-BennyE$ sudo dd if=2018-06-27-raspbian-stretch-lite.img of=/dev/rdisk4 bs=1024k +pi@raspberrypi:~/rtl8812au $ sudo ./dkms-install.sh  
-Password+About to run dkms install steps... 
-1776+0 records in +Error! DKMS tree already containsrtl8812au-5.1.5 
-1776+0 records out +You cannot add the same module/version combo more than once.
-</code>+
  
-===== Raspberry Pi einrichten =====+Kernel preparation unnecessary for this kernel.  Skipping...
  
-<WRAP center round alert 60%> +Building module: 
-Kein rpi-update durchführen! Dadurch fehlen einige Dateien für den Kernel (Stichwort: /build Verzeichnis) und wir können keine eigene Firmware bauen! +cleaning build area... 
-</WRAP>+'make' KVER=4.14.71-v7+ && 'make' RTL8814=1 KVER=4.14.71-v7+......................................................................................................................................................................................... 
 +cleaning build area... 
 + 
 +DKMS: build completed.
  
 +8812au:
 +Running module version sanity check.
 + - Original module
 +   - No original module exists within this kernel
 + - Installation
 +   - Installing to /lib/modules/4.14.71-v7+/updates/
 +
 +8814au.ko:
 +Running module version sanity check.
 + - Original module
 +   - No original module exists within this kernel
 + - Installation
 +   - Installing to /lib/modules/4.14.71-v7+/updates/
 +
 +depmod....
 +
 +DKMS: install completed.
 +Finished running dkms install steps.
 +</code>
 +
 +==== Optional: Fehlerbehebung ====
 +Wer diese Fehlermeldung sieht, hat meinen Hinweis mit dem Reboot nicht beachtet. Bitte den Raspberry Pi neustarten und es dann erneut versuchen.
 <code> <code>
-sudo raspi-config +pi@raspberrypi:~/rtl8812au $ sudo ./dkms-install.sh  
--> Keyboard einstellen +About to run dkms install steps...
--> Interfacing -> SSH einschalten +
--> Land für die Wireless Schnittstelle festlegen (z.BDE)+
  
-sudo apt-get update && sudo apt-get upgrade+Creating symlink /var/lib/dkms/rtl8812au/5.1.5/source -
 +                 /usr/src/rtl8812au-5.1.5
  
-root@raspberrypi:/home/pi# apt-get remove wpasupplicant+DKMSadd completed. 
 +Error! echo 
 +Your kernel headers for kernel 4.14.50-v7+ cannot be found at 
 +/lib/modules/4.14.50-v7+/build or /lib/modules/4.14.50-v7+/source. 
 +Error! echo 
 +Your kernel headers for kernel 4.14.50-v7+ cannot be found at 
 +/lib/modules/4.14.50-v7+/build or /lib/modules/4.14.50-v7+/source. 
 +Finished running dkms install steps. 
 +</code>
  
-root@raspberrypi:/home/pi# sudo apt-get install tcpdump +==== udev Regel zur Bezeichnungs der Schnittstellen ==== 
-root@raspberrypi:/home/pi# sudo apt-get install aircrack-ng+Mit dieser Regel ändern wir die Bezeichnung der Karten in der von uns festgelegten Form bei jedem Start des Raspberry Pi bzw. immer dann wenn die USB-Sticks verbunden werden. 
 +<code> 
 +pi@raspberrypi:~ $ sudo vi /etc/udev/rules.d/10-wlan.rules  
 +SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:c0:ca:a5:AA:BB", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan1" 
 +SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:c0:ca:a5:CC:DD", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan2" 
 +</code>
  
-TODO: wlan* in denyinterfaces von dhcpcd.conf eintragen, sonst zieht das die Interfaces hoch (ohne dass man dies möchte)+==== DHCP auf den Interfaces wlan1 & wlan2 deaktivieren ====
  
-pi@raspberrypi:~ $ sudo raspi-config +<code> 
--> Eigenes Passwort festlegen! (Tastatur vorher auf korrektes Layout prüfen!)+pi@raspberrypi:~ $ sudo vi /etc/dhcpcd.conf 
  
-sudo reboot+denyinterfaces wlan1 wlan2
 </code> </code>
  
-===== Zusammenfassung: Was funktioniert und was nicht? =====+==== Die wlan1 & wlan2 Schnittstellen auf 80 MHz breite Kanäle einstellen ==== 
 +Nehmen wir mal an dass Kanal 100 und 112 in 80 MHz mitgeschnitten werden sollen... 
 +airmon-ng bietet uns an Prozesse aus dem Weg zu räumen die uns bei der Aufzeichnung stören könnten, daher machen wir das bevor wir die Schnittstellen zu Monitor-Interfaces machen.
  
-Es gibt verschiedene Wahlmöglichkeiten für die Wireless-Schnittstelle, die unterschiedlich gut (oder schlecht) funktionieren. Optimal wäre der Aufbau wohl mit einem externen USB-Wireless-Stick (mit Monitor Mode), einem PiJuice (für Stromversorgung auch ohne Netzteil), einem AP auf der on-board Karte damit der Pi während der Analyse von einem separaten Laptop gesteuert werden kann.+<code> 
 +pi@raspberrypi:~ $ sudo airmon-ng check
  
-====  Broadcom BCM43455 (onboard Raspberry Pi 3 B+) ==== +Found 4 processes that could cause trouble. 
-Mit "nexmon" Firmware-Patch funktioniert der "monitor mode"allerdings sind keine DATA Pakete sichtbar sondern nur Beacons und Multicast. (Es ist möglich dass zukünftige Korrekturen/Erweiterungen die Funktion doch noch nachrüsten.)+If airodump-ngaireplay-ng or airtun-ng stops working after 
 +a short period of time, you may want to run 'airmon-ng check kill'
  
-Status: :-\+  PID Name 
 +  319 avahi-daemon 
 +  348 avahi-daemon 
 +  401 wpa_supplicant 
 +  516 dhcpcd
  
-====  TP-Link Archer T2UH (v1/v2) ==== +pi@raspberrypi:~ $ sudo airmon-ng check kill
-Ein schreckliches Stück Hardwaregeschichte das es nicht wert ist gekauft zu werden. Die Treiberunterstützung vom Hersteller ist traurig schlecht. In 2018 offiziell einen Treiber bis Kernel v3.16 anzubieten ist schon wirklich dreist (und sich dafür mit Linux-Unterstützung zu rühmen). +
-Es gibt modifizierte Treiber z.B. im GitHub Repository von [[https://github.com/ulli-kroll/mt7610u|Ulli Kroll]], die zumindest auf v4.14 kompilieren, aber auch nicht für den "monitor mode" funktionieren. Der Versuch den Stick mit airmon-ng zu initialisieren führt dazu dass sich der Kernel weghängt. Sowohl HW v1.0 als auch v2.0 funktionieren nicht für den Monitor Mode (habe beide Varianten getestet).+
  
-Statusm(+Killing these processes:
  
-====  Alfa AWUS036ACH Dual Band USB Adapter AC1200  ==== +  PID Name 
-https://www.amazon.de/Alfa-AWUS036ACH-Dual-Adapter-AC1200/dp/B00VEEBOPG/ +  401 wpa_supplicant 
 +  516 dhcpcd
  
-<wrap hi>Erfahrungen folgen, wenn der Stick da ist ... sieht zumindest beeindruckend aus! :D </wrap>+pi@raspberrypi:~ $ sudo airmon-ng check
  
-<code> +pi@raspberrypi:~ $ sudo iw dev wlan1 set type monitor 
-root@raspberrypi:/home/pi# lsusb +pi@raspberrypi:~ $ sudo iw dev wlan2 set type monitor 
-Bus 001 Device 006: ID 0bda:8812 Realtek Semiconductor Corp. RTL8812AU 802.11a/b/g/n/ac 2T2R DB WLAN Adapter +
-Bus 001 Device 005: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory +
-Bus 001 Device 004: ID 0424:7800 Standard Microsystems Corp.  +
-Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub +
-Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub +
-Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub+
  
-dmesg +pi@raspberrypi:sudo ip link set wlan1 up 
-... +pi@raspberrypi:~ $ sudo ip link set wlan2 up
-[ 1337.625879] usb 1-1.3new high-speed USB device number 6 using dwc_otg +
-[ 1337.756767] usb 1-1.3: New USB device found, idVendor=0bda, idProduct=8812 +
-[ 1337.756780] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 +
-[ 1337.756788] usb 1-1.3: Product: 802.11n NIC +
-[ 1337.756797] usb 1-1.3: Manufacturer: Realtek +
-[ 1337.756806] usb 1-1.3: SerialNumber: 123456+
  
 +pi@raspberrypi:~ $ sudo iw wlan1 set freq 5500 80 5530
 +pi@raspberrypi:~ $ sudo iw wlan2 set freq 5560 80 5550
 +
 +pi@raspberrypi:~ $ sudo iw wlan1 info
 +Interface wlan1
 + ifindex 4
 + wdev 0x100000001
 + addr 00:c0:ca:a5:77:83
 + type monitor
 + wiphy 1
 + channel 100 (5500 MHz), width: 80 MHz, center1: 5470 MHz
 + txpower 18.00 dBm
 +pi@raspberrypi:~ $ sudo iw wlan2 info
 +Interface wlan2
 + ifindex 5
 + wdev 0x200000001
 + addr 00:c0:ca:a5:79:12
 + type monitor
 + wiphy 2
 + channel 112 (5560 MHz), width: 80 MHz, center1: 5530 MHz
 + txpower 18.00 dBm
 </code> </code>
  
-Dieser Treiber führt **nicht** zum Erfolggit clone https://github.com/gnab/rtl8812au +==== OptionalEigenes "iw" bauen ==== 
-Dieser Treiber könnte evtlder richtige sein: git clone -b v5.3.4 https://github.com/aircrack-ng/rtl8812au.git+Im obigen Fenster ist es vielleicht aufgefallen, dass die Wahl der Kanäle nun nicht unbedingt selbsterklärend warZum Glück wird das Werkzeug "iw" weiterhin gut gepflegt und im nächsten Debian (und voraussichtlich auch Raspbian) wird dann die aktualisierte Variante in Version 4.14 dabei sein. Bis dahin kann man sich dies natürlich selbst bauen, wie dies geht zeige ich hier. :)
  
 <code> <code>
-pi@raspberrypi:~ $ sudo apt-get install build-essential bc git dkms aircrack-ng tcpdump -y +pi@raspberrypi:~ $ iw --version 
-pi@raspberrypi:~ $ git clone https://github.com/aircrack-ng/rtl8812au +iw version 4.9 
-Cloning into 'rtl8812au'... +pi@raspberrypi:~ $ wget https://git.kernel.org/pub/scm/linux/kernel/git/jberg/iw.git/snapshot/iw-4.14.tar.gz 
-remoteEnumerating objects113, done+--2018-11-10 15:43:31--  https://git.kernel.org/pub/scm/linux/kernel/git/jberg/iw.git/snapshot/iw-4.14.tar.gz 
-remote: Counting objects: 100% (113/113), done. +Resolving git.kernel.org (git.kernel.org)... 2604:1380:4090:1700::1147.75.44.153 
-remoteCompressing objects100% (82/82)done+Connecting to git.kernel.org (git.kernel.org)|2604:1380:4090:1700::1|:443... connected. 
-remote: Total 5919 (delta 46), reused 67 (delta 31), pack-reused 5806 +HTTP request sentawaiting response... 200 OK 
-Receiving objects100% (5919/5919), 12.50 MiB | 6.16 MiB/s, done+Lengthunspecified [application/x-gzip] 
-Resolving deltas100% (4044/4044), done+Saving to: ‘iw-4.14.tar.gz’ 
-pi@raspberrypi:~ $ cd rtl8812au/ + 
-pi@raspberrypi:~/rtl8812au $  +iw-4.14.tar.gz                         [ <=>                                                           ] 141.60K  --.-KB/s    in 0.09s    
-pi@raspberrypi:~/rtl8812au $  + 
-pi@raspberrypi:~/rtl8812au grep RPI * +2018-11-10 15:43:46 (1.51 MB/s- ‘iw-4.14.tar.gz’ saved [144999] 
-grepcore: Is a directory + 
-grephal: Is a directory +pi@raspberrypi:~ $  
-grepinclude: Is a directory +pi@raspberrypi:~ $  
-Makefile:CONFIG_PLATFORM_ARM_RPI = n +pi@raspberrypi:~ $ ls 
-Makefile:ifeq ($(CONFIG_PLATFORM_ARM_RPI), y) +iw-4.14.tar.gz  rtl8812au 
-grepos_dep: Is a directory +pi@raspberrypi:~ $ file iw-4.14.tar.gz  
-grep: platform: Is a directory +iw-4.14.tar.gzgzip compressed data, from Unix 
-README.md:For Raspberry (RPI+pi@raspberrypi:~ $  
-pi@raspberrypi:~/rtl8812au $ sudo apt install vim+pi@raspberrypi:~ $  
 +pi@raspberrypi:~ $ tar xzvf iw-4.14.tar.gz  
 +iw-4.14/ 
 +iw-4.14/.gitignore 
 +iw-4.14/Android.mk 
 +iw-4.14/CONTRIBUTING 
 +iw-4.14/COPYING 
 +iw-4.14/Makefile 
 +iw-4.14/README 
 +iw-4.14/ap.c 
 +iw-4.14/bitrate.c 
 +iw-4.14/coalesce.c 
 +iw-4.14/connect.c 
 +iw-4.14/cqm.c 
 +iw-4.14/event.c 
 +iw-4.14/genl.c 
 +iw-4.14/hwsim.c 
 +iw-4.14/ibss.c 
 +iw-4.14/ieee80211.h 
 +iw-4.14/info.c 
 +iw-4.14/interface.c 
 +iw-4.14/iw.8 
 +iw-4.14/iw.c 
 +iw-4.14/iw.h 
 +iw-4.14/link.c 
 +iw-4.14/mesh.c 
 +iw-4.14/mgmt.c 
 +iw-4.14/mpath.c 
 +iw-4.14/mpp.c 
 +iw-4.14/nl80211.h 
 +iw-4.14/ocb.c 
 +iw-4.14/offch.c 
 +iw-4.14/p2p.c 
 +iw-4.14/phy.c 
 +iw-4.14/ps.c 
 +iw-4.14/reason.c 
 +iw-4.14/reg.c 
 +iw-4.14/roc.c 
 +iw-4.14/scan.c 
 +iw-4.14/sections.c 
 +iw-4.14/station.c 
 +iw-4.14/status.c 
 +iw-4.14/survey.c 
 +iw-4.14/util.c 
 +iw-4.14/vendor.c 
 +iw-4.14/version.sh 
 +iw-4.14/wowlan.c 
 +pi@raspberrypi:cd iw-4.14/ 
 +pi@raspberrypi:~/iw-4.14 $ ls 
 +Android.mk  connect.c     event.c  ieee80211.h  iw.c      mesh.c   nl80211.h  phy.c     reg.c       station.c  vendor.c 
 +ap.c        CONTRIBUTING  genl.c   info.c       iw.h      mgmt.c   ocb.c      ps.c      roc.c       status.c   version.sh 
 +bitrate.c   COPYING       hwsim.c  interface.c  link.c    mpath.c  offch.c    README    scan.c      survey.c   wowlan.c 
 +coalesce.c  cqm.c         ibss.c   iw.8         Makefile  mpp.c    p2p.c      reason.c  sections.c  util.c 
 + 
 +(Damit iw-4.14 erfolgreich baut, brauchen wir libnl1 bzw. auch -dev.) 
 + 
 +pi@raspberrypi:~/iw-4.14 $ sudo apt-get install libnl-dev
 Reading package lists... Done Reading package lists... Done
 Building dependency tree        Building dependency tree       
 Reading state information... Done Reading state information... Done
 The following additional packages will be installed: The following additional packages will be installed:
-  libgpm2 vim-runtime+  libnl1
 Suggested packages: Suggested packages:
-  gpm ctags vim-doc vim-scripts+  libnl-doc
 The following NEW packages will be installed: The following NEW packages will be installed:
-  libgpm2 vim vim-runtime +  libnl-dev libnl1 
-0 upgraded, newly installed, 0 to remove and 0 not upgraded. +0 upgraded, newly installed, 0 to remove and 0 not upgraded. 
-Need to get 6,231 kB of archives. +Need to get 156 kB of archives. 
-After this operation, 30.2 MB of additional disk space will be used.+After this operation, 409 kB of additional disk space will be used.
 Do you want to continue? [Y/n]  Do you want to continue? [Y/n] 
-Get:1 http://mirror.netcologne.de/raspbian/raspbian stretch/main armhf libgpm2 armhf 1.20.4-6.2 [33.0 kB] +Get:1 http://mirror.de.leaseweb.net/raspbian/raspbian stretch/main armhf libnl1 armhf 1.1-[122 kB] 
-Get:2 http://mirror.netcologne.de/raspbian/raspbian stretch/main armhf vim-runtime all 2:8.0.0197-4+deb9u1 [5,407 kB] +Get:2 http://ftp.halifax.rwth-aachen.de/raspbian/raspbian stretch/main armhf libnl-dev armhf 1.1-[33.8 kB] 
-Get:3 http://mirror.netcologne.de/raspbian/raspbian stretch/main armhf vim armhf 2:8.0.0197-4+deb9u1 [790 kB] +Fetched 156 kB in 0s (254 kB/s)                                         
-Fetched 6,231 kB in 0s (6,757 kB/s) +Selecting previously unselected package libnl1:armhf. 
-Selecting previously unselected package libgpm2:armhf. +(Reading database ... 69642 files and directories currently installed.) 
-(Reading database ... 67904 files and directories currently installed.) +Preparing to unpack .../libnl1_1.1-8_armhf.deb ... 
-Preparing to unpack .../libgpm2_1.20.4-6.2_armhf.deb ... +Unpacking libnl1:armhf (1.1-8) ... 
-Unpacking libgpm2:armhf (1.20.4-6.2) ... +Selecting previously unselected package libnl-dev
-Selecting previously unselected package vim-runtime+Preparing to unpack .../libnl-dev_1.1-8_armhf.deb ... 
-Preparing to unpack .../vim-runtime_2%3a8.0.0197-4+deb9u1_all.deb ... +Unpacking libnl-dev (1.1-8) ... 
-Adding 'diversion of /usr/share/vim/vim80/doc/help.txt to /usr/share/vim/vim80/doc/help.txt.vim-tiny by vim-runtime' +Setting up libnl1:armhf (1.1-8) ... 
-Adding 'diversion of /usr/share/vim/vim80/doc/tags to /usr/share/vim/vim80/doc/tags.vim-tiny by vim-runtime' +Setting up libnl-dev (1.1-8) ...
-Unpacking vim-runtime (2:8.0.0197-4+deb9u1) ... +
-Selecting previously unselected package vim. +
-Preparing to unpack .../vim_2%3a8.0.0197-4+deb9u1_armhf.deb ... +
-Unpacking vim (2:8.0.0197-4+deb9u1) ... +
-Setting up libgpm2:armhf (1.20.4-6.2) ... +
-Processing triggers for libc-bin (2.24-11+deb9u3) ... +
-Processing triggers for man-db (2.7.6.1-2) ... +
-Setting up vim-runtime (2:8.0.0197-4+deb9u1) ... +
-Setting up vim (2:8.0.0197-4+deb9u1) ... +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/vim (vim) in auto mode +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/vimdiff (vimdiff) in auto mode +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/rvim (rvim) in auto mode +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/rview (rview) in auto mode +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/vi (vi) in auto mode +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/view (view) in auto mode +
-update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/ex (ex) in auto mode +
-pi@raspberrypi:~/rtl8812au $ vi Makefile  +
-CONFIG_PLATFORM_I386_PC = y durch CONFIG_PLATFORM_I386_PC ersetzen +
-CONFIG_PLATFORM_ARM_RPI = n durch CONFIG_PLATFORM_ARM_RPI = +
  
-pi@raspberrypi:~/rtl8812au $  +pi@raspberrypi:~/iw-4.14 make 
-pi@raspberrypi:~/rtl8812au $  + CC   iw.o 
-pi@raspberrypi:~/rtl8812au $ make+ CC   genl.o 
 + CC   event.o 
 + CC   info.o 
 + CC   phy.o 
 + CC   interface.o 
 + CC   ibss.o 
 + CC   station.o 
 + CC   survey.o 
 + CC   util.o 
 + CC   ocb.o 
 + CC   mesh.o 
 + CC   mpath.o 
 + CC   mpp.o 
 + CC   scan.o 
 + CC   reg.o 
 + GEN  version.c 
 + CC   version.o 
 + CC   reason.o 
 + CC   status.o 
 + CC   connect.o 
 + CC   link.o 
 + CC   offch.o 
 + CC   ps.o 
 + CC   cqm.o 
 + CC   bitrate.o 
 + CC   wowlan.o 
 + CC   coalesce.o 
 + CC   roc.o 
 + CC   p2p.o 
 + CC   vendor.o 
 + CC   mgmt.o 
 + CC   ap.o 
 + CC   sections.o 
 + CC   iw
  
 +Es ist nun wirklich einfach die Kanäle zu setzen.
 +
 +pi@raspberrypi:~/iw-4.14 $ sudo ./iw wlan1 set channel 52 80MHz
 +pi@raspberrypi:~/iw-4.14 $ sudo ./iw wlan2 set channel 100 80MHz
 +
 +pi@raspberrypi:~/iw-4.14 $ ./iw wlan1 info
 +Interface wlan1
 + ifindex 4
 + wdev 0x100000001
 + addr 00:c0:ca:a5:77:83
 + type monitor
 + wiphy 1
 + channel 52 (5260 MHz), width: 80 MHz, center1: 5230 MHz
 + txpower 18.00 dBm
 +
 +pi@raspberrypi:~/iw-4.14 $ ./iw wlan2 info
 +Interface wlan2
 + ifindex 5
 + wdev 0x200000001
 + addr 00:c0:ca:a5:79:12
 + type monitor
 + wiphy 2
 + channel 100 (5500 MHz), width: 80 MHz, center1: 5470 MHz
 + txpower 18.00 dBm
 </code> </code>
  
-Status: :?: FIXME+==== Wireshark installieren ==== 
 +Mit der Installation von Wireshark ist der Raspberry Pi wieder einen Moment beschäftigt. Die Frage ob Benutzer in der Lage sein sollen die Daten mitzuschneiden, sollte mit "Ja" beantwortet werden. Nach Abschluss der Installation muss der Benutzer **pi** noch in die Gruppe wireshark aufgenommen werden. Danach sollte man sich einmal abmelden und wieder anmelden, um diese Änderung wirksam zu machen.
  
 +<code>
 +pi@raspberrypi:~ $ sudo apt-get install wireshark
 +(dies dauert erstmal wieder)
  
 +pi@raspberrypi:~ $ sudo adduser pi wireshark
 +Adding user `pi' to group `wireshark' ...
 +Adding user pi to group wireshark
 +Done.
 +</code>
  
-===== Broadcom BCM43455 (onboard Raspberry Pi 3 B+) für Wireless Monitor Mode vorbereiten =====+==== Zugriff aus der Ferne (z.B. von einem Laptop) ==== 
 +Mein Plan von meinem Firmen Laptop per MobaXterm über SSH mit X-Forwarding auf Wireshark zuzugreifen wurde von ziemlichen Verzögerungen geplagt. Daher nun ein Versuch mit VNC ... 
 + 
 +<code> 
 +pi@raspberrypi:~ $ sudo apt-get install tightvncserver fluxbox xterm 
 +(Das dauert jetzt wieder etwas) 
 + 
 +Erstmal ein VNC-Passwort festlegen (maximal acht Zeichen, nichts wertvolles) 
 +pi@raspberrypi:~ $ vncpasswd 
 +Using password file /home/pi/.vnc/passwd 
 +Password:  
 +Verify:    
 +Would you like to enter a view-only password (y/n)? n 
 + 
 +pi@raspberrypi:~ $ vi .vnc/xstartup  
 +(Dort in die letzte Zeile folgendes eintragen) 
 +fluxbox & 
 + 
 +pi@raspberrypi:~/.vnc $ vncserver 
 + 
 +</code> 
 + 
 +Bessere Alternative könnte wohl sein RealVNC zu verwenden. Das wird direkt über "sudo raspi-config" aktiviert. 
 +<code> 
 +sudo systemctl enable vncserver-virtuald.service 
 +sudo systemctl enable vncserver-x11-serviced.service 
 +</code> 
 + 
 +<WRAP center round tip 60%> 
 +Bis hier bin ich bisher gekommen, wirklich hübsch sieht dieser Wireshark jetzt noch nicht aus - aber ein Anfang :) 
 +</WRAP> 
 + 
 + 
 + 
 +===== Erfahrungen mit anderen Wireless-Adaptern ===== 
 + 
 +==== Erfahrungen/Ergebnis mit Broadcom BCM43455 (onboard Raspberry Pi 3 B+) ==== 
 +Mit "nexmon" Firmware-Patch funktioniert der "monitor mode", allerdings sind keine DATA Pakete sichtbar sondern nur Beacons und Multicast. (Es ist möglich dass zukünftige Korrekturen/Erweiterungen die Funktion doch noch nachrüsten.) 
 + 
 +Status: Wer mit dem Pi 3 B+ nur Beacons mitschneiden will, ist hiermit schon gut aufgehoben - aber für erweiterte Analyse ist es mir bisher nicht gut genug. 
 + 
 +==== Erfahrungen/Ergebnis mit TP-Link Archer T2UH (v1/v2) ==== 
 +Ein schreckliches Stück Hardwaregeschichte das es nicht wert ist gekauft zu werden. Die Treiberunterstützung vom Hersteller ist traurig schlecht. In 2018 offiziell einen Treiber bis Kernel v3.16 anzubieten ist schon wirklich dreist (und sich dafür mit Linux-Unterstützung zu rühmen). 
 +Es gibt modifizierte Treiber z.B. im GitHub Repository von [[https://github.com/ulli-kroll/mt7610u|Ulli Kroll]], die zumindest auf v4.14 kompilieren, aber auch nicht für den "monitor mode" funktionieren. Der Versuch den Stick mit airmon-ng zu initialisieren führt dazu dass sich der Kernel weghängt. Sowohl HW v1.0 als auch v2.0 funktionieren nicht für den Monitor Mode (habe beide Varianten getestet). 
 + 
 +Status: m( 
 + 
 +===== Anleitung: Broadcom BCM43455 (onboard Raspberry Pi 3 B+) für Wireless Monitor Mode vorbereiten =====
  
 <WRAP center round important 60%> <WRAP center round important 60%>
Zeile 364: Zeile 582:
  
 <code> <code>
- 
 pi@raspberrypi:~ $ sudo su pi@raspberrypi:~ $ sudo su
 root@raspberrypi:/home/pi# sudo apt-get install raspberrypi-kernel-headers git libgmp3-dev gawk qpdf bison flex make root@raspberrypi:/home/pi# sudo apt-get install raspberrypi-kernel-headers git libgmp3-dev gawk qpdf bison flex make
raspberry-pi-monitor-mode.1541846824.txt.gz · Zuletzt geändert: 2024/06/09 10:29 (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki