最近這幾天總是看到有帖子講抓包,無非是Fiddler、Charles、HttpCanary之類的。
操作起來也無非是安裝抓包軟體安裝證書(手機/模擬器)設置dai--li啟動app抓包。
著名的fiddler
聽起來簡單,操作起來也不算複雜,讓讀者容易有種錯覺:只要安裝上會抓包,我就無所不能了。然而現實殘酷的很。
俗話說道高一尺魔高一丈,現在直播app也不傻,很多都加上了抓包檢測,即你手機設置了dai--li,那麼抱歉網絡錯誤,老子不運行了(比如小奶貓)。
所以今天就要祭出一個神器——Wireshark!
1,簡介。
Wireshark(前稱Ethereal)是一個網絡封包分析軟體。
網絡封包分析軟體的功能是擷取網絡封包,並儘可能顯示出最為詳細的網絡封包資料。
Wireshark使用WinPCAP作為接口,直接與網卡進行數據報文交換。
劃重點:
直接與網卡通信,不用設置dai--li,打開即用!
2,安裝。
用正經搜尋引擎搜這個名字,第一條應該都是官網吧。
直接打開下載即可。
3,使用。
打開軟體,界面也不算複雜。
一、首先選擇需要抓包的網卡,如果不知道選哪個,就打開之後等一會兒,看看哪個選項後面有流量波動。
二、雙擊進入要抓包的網卡,就會進入到詳情界面。
這時候要做好心理準備,會有海量的數據撲面而來。
你電腦上所有的網絡連接都會展現出來,先別頭疼,點擊停止按鈕,先歇歇。
三、打開模擬器,運行要抓包的app。
四、回到wireshark,重新開始抓包。
五、在app裡隨便點擊幾個房間,看到直播畫面之後就退出來,然後去wireshark點擊停止。
六、接下來就是分析直播伺服器地址和直播流地址了。
一般情況下直播流會有flv、rtmp、m3u8等形式,我們就在抓到的數據裡搜索關鍵字即可。最後找到我們的目標app的直播用的是rtmp。
rtmp的直播地址格式大概是「伺服器/id?sign」的樣子,我們在抓到的結果裡輕鬆可以找到。
之後就是在這個id出現之前,找伺服器配置。
最後得到的地址應該是這個格式:
rtmp://pull.ln2e.com/live/1/s1971500585_c3e1914088?txSecret=a8f381e8459d78d8206e80b9d99163ec&txTime=5ef0ab73
wireshark過濾器裡面的「rtmpt」是用來過濾rtmp協議的,所以我們選中這個過濾條件,再加上特徵字符串「play」,顯示出來的就是與直播流相關的內容了。
(規則:rtmpt contains "play")
過濾之後顯示的就清楚多了吧!
之後再打開直播房間,回到抓包軟體直接複製id即可。
七、錄製。
找到流地址,錄製保存到本地就易如反掌了。
下面介紹3種方法。
1,vlc播放器:
打開打開網絡串流粘貼地址播放點擊錄製
2,ffmpeg:
ffmpeg -i 流地址 out.mp4
3,obs:
添加源開始錄製。