作者: javacomhk 時間: 2022-3-23 09:56 標題: [教學] Raspberry Pi Zero W 如何 headless 安裝 Kali Linux
本帖最後由 javacomhk 於 2022-4-7 13:02 編輯
(1) Kali Linux 有套 "Pi-Tail" 版,是已經 patch 好 Raspberry Pi Zero W 嘅 kernel 可以 monitor wifi signal及已加上 headless 的安裝方法,下載網址為 https://www.kali.org/get-kali/#kali-arm。headless 安裝是指 Pi Zero W 不用接駁鍵盤及顯示器就可以預先安裝好系統及相關網絡設定在 SD Card 上及首次開機後可使用其他電腦或手機經網絡連接後登入及控制。
最新 Kali Linux "Pi-Tail" 版下載點
Pi Zero W
https://kali.download/arm-images/kali-2022.1/kali-linux-2022.1-raspberry-pi-zero-w-pitail-armel.img.xz
https://kali.download/arm-images/kali-2022.1/kali-linux-2022.1-raspberry-pi-zero-2-w-pitail-armhf.img.xz
大家注意 Raspberry Pi Zero 2 W (kernel 5.10) 係唔支持個 kernel patch,即係用唔到個 wifi monitor。
參考 https://gitlab.com/kalilinux/build-scripts/kali-arm/-/issues/267
(2) 如果是用 Windows 版 balenaEtcher 已經可以使用 Fetch from URL 功能,在打入下載點後程式會直接下載及解壓後再 Flash 落 SD Card。建議安裝此 "Pi-Tail" 版是要使用 32GB 或以上的 SD Card,因為本身個解壓後嘅 image 檔案有齊 everything 要成 12GB,另外會自動 create 一個 1G 嘅 swap partition。
(3) 根據 Pi-Tail 的 HOW-TO,此 "Pi-Tail" 版是支持插落電腦 USB 當 Ethernet Gadget Mode,進行 ethernet 連接及控制,注意是Raspberry Pi Zero W 的 USB port 是在底板靠中間那個,底板靠外邊那個只是供電位,雖然插 USB port 也可供電。但這個方法 Windows 10/11 的 USB Gadget Mode driver 已經沒有更新,亦未必現在可以用到。插落Android 手機的USB都可能得,但現在的 Android 手機 USB 已經是 USB-C 了,而 Raspberry Pi Zero W 的是 micro USB,所以我沒 好嘅 OTG data cable (好多 microUSB 都只係充電cable,插落去係認唔到)或轉插去試,而且用 USB 連接手機個壞處就係會用快咗手機的電,手機唔可以一邊充一邊用。除了 wifi 及 USB 連接網絡外,用藍芽連接網絡都可以,但如果藍芽及 wifi 一起用就會更加食電及不穩定,所以我亦沒有試用藍芽連接。
(4) 除了用 USB 或藍芽連接外 "Pi-Tail" 版是可以用 wifi 將個 Pi Zero W 連接上網絡,而且不影響 Kali Linux 的 wifi monitor 功能,只要將 Flash 好的 SD Card,從 USB slot 取出後再插入,以便要在 SD Card 重新 mount 好後改寫有關 network 及上 wifi 的設定檔案。由於 Pi Zero W 不支持 5GHz wifi, 所以要填寫連接 2.4GHz 的 wifi 設定。
(5) 在 Windows mount 好 SD Card 後用 Notepad 打開 SD Card 上 wpa_supplicant.conf 檔案的 "home" 設定修改為你屋企的 wifi,原本這部份是
- network={
- ssid="homenet"
- psk=68002fbdacc8812f89c06a2fb6542b2b1126853983a59e0076e5f56df9c5543b
- id_str="home"
- priority=2
- }
- network={
- ssid="MyHomeWifi"
- psk=6ac0d834a918dfdb09c7d4581a1665f5f1969ef3967e25cd932eab7c75075d54
- id_str="home"
- priority=2
- }
- wpa_passphrase "MyHomeWifi" "MyPassword"
- iface home inet dhcp
- iface home inet static
- address 192.168.1.79
- netmask 255.255.255.0
- gateway 192.168.1.1
(6) 如果是需要將 Pi Zero W 使用手機的 HotSpot 流動熱點上網
用 Notepad 打開 SD Card 上 wpa_supplicant.conf 檔案的 "mobile-1" 設定為你手機的 HotSpot 流動熱點設定,原本這部份是
- # reading passphrase from stdin
- network={
- ssid="mobile-1"
- psk=2b975ade78236c65480641296127688b223b1270e7ce175e7317b5bf6ca4795a
- id_str="mobile-1"
- priority=4
- }
- network={
- ssid="Samsung S22"
- psk=6136bd9f2dced6eced7ec23dc4abed6d8dcff707a148d150ab97905facb6ca33
- id_str="mobile-1"
- priority=4
- }
- wpa_passphrase "Samsung S22" "mysecretwords"
- iface mobile-1 inet static
- address 192.168.43.254
- netmask 255.255.255.0
- gateway 192.168.43.1
- iface mobile-1 inet dhcp
(7) 儲存相關修改,接著就可以將 SD Card 插入 Pi Zero W 後就可以連接電源開機了,由於 Pi Zero W 很省電,一般使用流動電源(俗稱尿袋)都可以供電及使用很耐。
(8) 第一次開機後,要稍等一會初次自動設定後才會用 wifi 連接網絡。 待 Pi Zero W 連接網絡後,才用電腦 Terminal 的 ssh 去連接控制, Kali Linux ssh 的 username 是 kali ,password 是 kali,Pi-Tail HOW-TO 提供個 root password 用 wifi 係 login 唔到。
例如在屋企 wifi 下的 wsl Ubuntu Terminal 連接控制時要打指令
- ssh kali@192.168.1.79

如要將 Raspberry Pi Zero W 的 "Pi-Tail" 版在街外流動使用,就要用手機網絡連接及流動電源的這個組合。
當手機顯示 pi-tail 已連接手機的流動熱點後,用 Android 手機的 Terminal App 例如 "Termux" App 或 "ConnectBot" App 連接控制時,例如打指令
- ssh kali@192.168.99.121
如果手機沒有顯示連接裝置的 IP 地址,可以在首次用屋企 Wifi 成功登入,查詢一下個 Pi Zero W 個 hostname,有需要就改,然後開啟 mDNS(請看下面第10點內容如何開啟服務),以後就可在使用同一 wifi network segment 時用它的 hostname + ".local" 例如 pi-tail.local 代替 IP 地址。例如打指令
- # 可以用 [hostname].local 去 connect,例如
- ssh kali@pi-tail.local
(10) 根據 Pi-Tail 的 HOW-TO,此 Kali Linux 是可以使用 VNC 連接控制的,但 Pi Zero W 行 VNC 開機用 GUI 會佔用很多資源控制會很慢。成功用 ssh 連接控制後就可以作進一步的設定及測試功能。
ssh 連接後首次 terminal 設定及測試例如
- sudo apt update
- # configure timezone and locales for terminal access.
- sudo dpkg-reconfigure tzdata
- sudo dpkg-reconfigure locales
- # use raspi-config to change the boot option to console mode so as to save memory usage to avoid GUI on boot up.
- # and change hostname as required
- sudo raspi-config
- # start mDNS so that you can use hostname + ".local" instead of IP address
- sudo systemctl enable avahi-daemon.service
- sudo systemctl start avahi-daemon.service
- # find hostname
- hostname
- # mon0up will create and start up a monitoring interface "mon0" for wlan0
- sudo mon0up
- # show 2 interfaces, wlan0 and mon0
- sudo airmon-ng
- # dump the mon0 wifi signals
- sudo airodump-ng mon0
- #change root password
- sudo passwd
- #login root
- su
- #test again without using sudo under su
- mon0down
- airmon-ng
- mon0up
- airmon-ng
- airodump-ng mon0

作者: javacomhk 時間: 2022-3-23 10:32
留位

作者: fakeman 時間: 2022-3-23 13:53
家陣想買 2W 都買唔到......
作者: javacomhk 時間: 2022-3-23 14:06
本帖最後由 javacomhk 於 2022-3-23 14:19 編輯
淘寶一定有 2W,但依家疫情直運來香港起碼要一星期。其實唔使買 2W,2W 可能行 VNC 會快的。呢個 setup 行 ssh wifi connect ,我試過第一代W做 dump 或 cap 都掂,因為後期的 hashcat 係要用 GPU 機去做,2W幾快都唔掂。
作者: fakeman 時間: 2022-3-23 14:45
TB 買 2W 唔使食炒價?
作者: javacomhk 時間: 2022-3-23 15:26
本帖最後由 javacomhk 於 2022-3-23 15:30 編輯
幾舊水野炒極咪貴幾草野,呢的機一定比 Pi 4 平啦。再唔係咪買番第一代囉。
作者: fakeman 時間: 2022-3-23 15:32
貴幾草就好,老美 Amazon USD 15->90 都見過
作者: javacomhk 時間: 2022-4-7 12:54
本帖最後由 javacomhk 於 2022-4-7 13:02 編輯
大家注意 Raspberry Pi Zero 2 W (kernel 5.10) 係唔支持個 kernel patch,即係用唔到個 wifi monitor。
https://gitlab.com/kalilinux/build-scripts/kali-arm/-/issues/267
作者: litter7sky 時間: 2022-7-10 23:21
你都咪話,pi zero 正價五蚊美金,即係四十幾港紙,正話見 rs-online 個 starter kit (加牛,sdcard,usb cable)叫價三佰四十幾


