當前位置: 妍妍網 > 辦公

用Python探測酒店裏的針孔網路攝影機

2024-06-23辦公

/1 前言/

最近酒店被曝出隱藏網路攝影機的事情屢見不鮮,搞得大家人心惶惶,有圖為證,如下圖所示。

今天我們嘗試用python探測下酒店裏的針孔網路攝影機,讓你放心住酒店。

/2 原理介紹/

我們 大家都知道,針孔攝像一般都很小,所以它不太可能含有儲存裝置,都是透過連線酒店房間內的無線網,遠端傳輸給作案人,我們就從這方面入手,用Python的scapy模組掃描區域網路內的所有裝置,並透過爬蟲找到該裝置生產廠商,以廠商來判斷該裝置是否為網路攝影機。

/3 操作步驟/

實作步驟依賴環境較多,操作起來可能有些復雜,不過就當了解一下也是歐克的,具體的操作步驟如下。

1、 用scapy模組的scapy函式模擬構造ARP廣播包,程式碼如下圖所示。

這個表示要向網段內的所有主機都詢問一下,說的通俗一點就是「請問網段內都有誰在啊」。

2、 模擬在區域網路內發送 用scapy模組模擬發送ARP廣播,程式碼如下圖所示。

其中p是第一步構造的廣播包,wifi是本機的網卡名稱,timeout是發送時限。

3、返回的兩個參數,ans包含兩類封包(ARP請求包和ARP返回 資訊 ),請求包是第一步構造的包,返回包是區域網路內主機的回應,如下圖所示。

包含該主機的ip地址和MAC地址,打碼的就是MAC地址; unans返回True或者False,代表是否發送成功。

4、 解析返回的封包。這一步主要是為了從上一步的封包中把主機MAC地址取出來,雖然看起來很復雜,但實作起來比較簡單,程式碼實作如下圖所示。

其中s和r分別是上步所說的請求包和返回包; r[ARP].hwsrc即 是返回包中主機的MAC地址。

5、 查詢MAC地址廠商。 由於上網裝置M AC地址的 唯一性,所以每家廠商的前6位MAC地址都是固定的,這樣 來,我們就可以根據MAC地址反查出廠商,在網上找了一家便民查詢網的網站,網址為https://mac.51240.com/,如下圖所示。

6、 只需輸入MAC地址就會出現次MAC地址的詳細資訊,如下圖所示。

7、 我們需要的是它的組織名稱,分析一下此網站,是個最簡單的靜態網頁,如下圖所示。

8、 也不用解析網頁了,直接正則匹配,程式碼如下圖所示。

9、 運行程式,得到如下圖所示的結果。

從上圖可以看到檢測的裝置有4台主機, 1 台TP-LINK路由器,1個REALTEK外接網卡,2台華為手機,這種情況應該是正常的。如果是出現網路攝影機生產廠商類的MAC地址,就要小心了,馬上去可疑地方找找吧!

/4 總結/

本文主要介紹了使用Python程式碼檢測酒店裏的針孔網路攝影機,實作原理是 用scapy模組模擬發送ARP廣播 ,獲取裝置的Mac地址,借助第三方平台查詢裝置的具體資訊,檢測周邊環境是否正常。

本文涉及的Python程式碼,我已經上傳到Github了,感興趣的小夥伴們, 可以去看看,覺得不錯,記得給個Star噢!

https://github.com/cassieeric/python_crawler/tree/master/hotel_monitor

最後希望大家在 入住的時候,都平安順利!

作者: Python進階者

來源 :Python爬蟲與資料探勘

Crossin的新書【 碼上行動:用ChatGPT學會Python編程 】已經上市了。 本書以ChatGPT為輔助,系統全面地講解了如何掌握Python編程,適合Python零基礎入門的讀者學習。

購買後可加入讀者交流群,Crossin為你開啟陪讀模式,解答你在閱讀本書時的一切疑問。

Crossin的其他書籍:

添加微信 crossin123 ,加入編程教室共同學習 ~

感謝 轉發 點贊 的各位~