0x00 背景#
在兩個月前,對網絡進行測速時發現不論是有線連接還是無線連接,測速結果總會是在 940Mbps 徘徊。而眾所周知,運營商在進行帶寬限速模板的制定時總會給出額外的 20% 帶寬作為冗餘。隨著 WiFi 協議的不斷增進,現階段 WiFi6 160Mhz 2x2 即可有著 2400Mbps 的速率,跑滿這 20% 冗餘帶寬綽綽有餘,於是有了更換光貓的念頭。若想充分利用這部分冗餘帶寬,不僅需要 2.5G 及以上的上行光口,也要確保有 2.5G 的電口保證下行設備的速率。為了節省一個 2.5G 路由器的成本,最終選購的光貓便是中興的 G7615 V1。
在某二手交易平台購入了一個 G7615 v1,並讓賣家在發貨前提前刷好相應地區相應運營商的固件,同時打開 telnet。經過了漫長的等待後,終於是在一周後收到了快遞。當天便將原光貓的內容進行抄錄備份,如 Internet 接口的 VLAN ID、光貓註冊用的 LOID、原光貓的序列號與 MAC 地址、寬帶撥號的帳號與密碼等,隨後更換並通過 telnet 在新光貓的 shell 中進行配置與註冊,最後更換成功,也解鎖了 940Mbps 的速率限制。
隨著有了 shell 的權限,便開始在光貓中翻找一些有趣的內容。此處一大部分的略過,但最後在執行了一句恐怖的mount -o rw,remount auto /
命令後,G7615 變一蹶不振,無法再次啟動。在某論壇查到了相關的內容,了解到只要對根目錄進行 rw 的 remount 操作後就會無法啟動,遂決定拆機從 TTL 開始救磚。全家掃蕩似的也沒找到 USB-TTL,於是從某電商平台以¥11.8 的價格購入了三個 CH340G 模塊,開始 G7615 的救贖之路。
0x01 救磚前的準備#
在救磚前您需要準備的內容是:
查閱資料後得知,左上角四個觸點的含義分別是 VCC、TX、RX、GND,TTL 用 1.8V 或 3.3V 均可,VCC 不可以接入,故最終接線為:空、TTL 的 RX、TTL 的 TX、TTL 的 GND。
連接了 CH340 到電腦後,請確保在設備管理器的端口中可以看到 CH340 字樣
記錄 COM 口的數字,並雙擊打開,在新的對話框中選擇端口設置,設置為如下狀態
在接線完成後,打開電腦上的串口監視器軟件,Serial Port 選擇新接入的 CH340 串口,波特率選擇 115200,同時啟用 MobaXterm 的 TFTP 服務,並將需要刷寫的固件(kernel.bin、framework.bin)放入到 TFTP 服務的目錄中。在準備完畢後,便可以開始監聽串口,並在啟動光貓的時候狂敲空格確保進入交互終端中。
在顯示了⇒
字樣後,代表已成功中斷了正常的引導,進入了 UBOOT 模式,此時便可以選擇刷機。
0x02 開始刷機救磚#
通過網線將電腦的網口與光貓的 LAN 口相連,並在電腦設置為靜態 IP:192.168.1.100/24,默認網關項留空。
先輸入nand bad
,檢查是否有壞塊。若返回結果為 Device 0 bad blocks,便可執行下列操作進行刷機,否則需要先進行壞塊清理。
需要執行的代碼有:
- 設置本機的 IP 與光貓的 IP
setenv ipaddr 192.168.1.1
setenv serverip 192.168.1.100
saveenv
- 下載所需要刷機的固件
tftp 0x88000000 G7615P2T2.bin
- 進行寫入操作並重啟
nand erase 0x1700000 0x3000000
nand erase 0x4700000 0x3000000
nand write 0x88000000 0x1700000 0x3000000
nand write 0x88000000 0x4700000 0x3000000
reset
不出意外的話,光貓在重啟後已經能夠成功引導,剩下的只需要進行初始化配置與註冊 LOID 等內容了。
餘下的配置部分,可參考網絡上大量的配置流程,具體過程則因地區而異,此處不再詳細描述。
0x03 補全 shell 與探索新功能#
不難發現,G7615 的配置是很有誠意的。處理器為 ZX279132,四核 A53,頻率為 1.1G,同時有著 512M 的內存與 256M 的閃存,這個配置可以說在硬路由上也頗為高端,僅僅作為撥號上網設備看來有些許的暴殄天物了,故打算在其上補上個 busybox,順便跑一些有用的插件。
事情太多了,剩下的內容想起來再更,先咕了
此文由 Mix Space 同步更新至 xLog 原始鏈接為 https://blog.allieqian.com/posts/tech/3gUpK83mTBPJk