王集成
【摘要】用Fiddler抓取瀏覽器與網(wǎng)絡(luò)攝像頭之間HTTP協(xié)議會話包,通過分析會話包信息,實現(xiàn)攝像頭控制,為探索網(wǎng)絡(luò)攝像頭控制提供一種實用方法。
【關(guān)鍵詞】網(wǎng)絡(luò)攝像頭? HTTP協(xié)議? 抓包軟件? Base64編碼
1、引言
海康威視的網(wǎng)絡(luò)攝像頭內(nèi)嵌Web服務(wù)器,提供Web網(wǎng)頁管控功能,用戶在瀏覽器地址欄輸入網(wǎng)絡(luò)攝像頭IP地址,經(jīng)登錄認證后,能方便管控攝像頭,因此能通過Fiddler軟件抓取瀏覽器與網(wǎng)絡(luò)攝像頭之間HTTP協(xié)議會話包,分析提取網(wǎng)絡(luò)攝像頭管控命令。
2、探索步驟和過程
本文選用??低旸S-2DE5174-A型號網(wǎng)絡(luò)攝像頭。首先確保網(wǎng)絡(luò)攝像頭與抓包電腦處于同一IP網(wǎng)段內(nèi)。其次將Fiddler Web Debugger V2.2.2.0(中文版)安裝到抓包電腦。
2.1 Fiddler軟件設(shè)置
首先選擇“過濾器”功能選項頁,勾選“使用過濾器”,在主機標簽欄下輸入網(wǎng)絡(luò)攝像頭IP地址。其次選擇 “嗅探”功能選項,該頁分為上、下兩個區(qū)域欄,分別顯示HTTP協(xié)議請求包(HTTP Request)和回復(fù)包(HTTP Response),在區(qū)域欄分別選擇Raw項,能顯示HTTP協(xié)議包原始信息,方便研究數(shù)據(jù)。
2.2 ActiveX插件安裝和攝像頭控制操作
在IE瀏覽器地址欄輸入網(wǎng)絡(luò)攝像頭IP地址,經(jīng)安全認證登錄,進入網(wǎng)絡(luò)攝像頭的管控界面,會實時顯示攝像頭捕捉視頻畫面(首次登錄,系統(tǒng)提示下載安裝ActiveX插件WebComponents.exe),點擊視頻畫面右上角的“云臺”圖標? ? ? ? ? ,右側(cè)出現(xiàn)云臺控制界面,依次點擊上? ? ?、下? ? 、左? ? ?、右? ? ? 方向控制以及鏡頭變焦的近? ? ? ? 與遠? ? ? ? 圖標操作攝像頭。
2.3 抓取HTTP協(xié)議包內(nèi)容
Fiddler抓取云臺控制攝像頭上下、左右和遠近操作的HTTP協(xié)議包,本文僅摘取控制攝像頭向上運動HTTP協(xié)議包中的關(guān)鍵信息如下:
PUT? /ISAPI/PTZCtrl/channels/1/continuous? HTTP/1.1
Host: 10.28.38.48? ? ?注:網(wǎng)絡(luò)攝像頭IP地址
Authorization: Digest username="admin",realm="DS-2DE5174-A",nonce="4d6a6846
4e446b77524455364e6a526a443d",uri="/ISAPI/PTZCtrl/channels/1/continuous",cnonce="86101b61f18bd3368dda8e8aba",nc=00000001,response="838e6df0830db805fc6cb351",qop="auth"? ? ? ? ? ? ? ?注:帶下劃線部分是Digest安全認證的信息
2.4 攝像頭控制命令
分析上述HTTP協(xié)議包可知,瀏覽器向網(wǎng)絡(luò)攝像頭(Host:10.28.38.48)的/ISAPI/
PTZCtrl/channels/1/continuous地址發(fā)送
數(shù)據(jù)。同理,其它命令如下:
向上運動:
向下運動:
向左運動:
向右運動:
拉近運動:
推遠運動:
停止運動:
2.5 嘗試驗證攝像頭管控命令。
從2.3中帶下劃線的安全認證信息可知:網(wǎng)絡(luò)攝像頭使用Digest安全認證機制(參考RFC 2617)確保響應(yīng)合法客戶端操作,一旦安全認證未通過,立刻向客戶端發(fā)送“401未被授權(quán)”錯誤碼,拒絕本次服務(wù)。因Digest安全認證機制非常復(fù)雜,所以本文嘗試用Basic安全認證機制替代Digest,看能否達到同樣效果,這會用到Fiddler軟件 “請求構(gòu)造”功能,先將 Authorization Basic YWRtaW46MTIzNDU2填到HTTP協(xié)議請求的頭部信息欄(斜體字串是Basic安全認證機制要求提供Base64加密字符串,即對“用戶名:密碼”字符串進行Base64編碼加密),再將控制向上運動命令
3、結(jié)束語
運用這種方法不僅能深入挖掘控制??低暰W(wǎng)絡(luò)攝像頭的其它管控命令,而且能探索其它品牌網(wǎng)絡(luò)攝像頭的管控命令,是一種很實用的探索方法。
參考文獻:
[1]肖佳.HTTP抓包實戰(zhàn)[M].北京:人民郵電出版社,2018.
[2]勞倫斯著,祝洪凱,李妹芳譯.Fiddler調(diào)試權(quán)威指南[M].北京:人民郵電出版社,2014.
[3]上野宣著,于均良譯.圖解HTTP[M].北京:人民郵電出版社,2014.