無線網路安全之Python使用RAW sockets 嗅探WIFI的SSID

來源:互聯網
上載者:User

標籤:無線安全   wifi嗅探   python   raw-socket   無線網路   

1. 介紹

  隨著無線網路的廣泛普及,人們越來越頻繁的使用無線網路,他改變了人們的生活。現在很多人走到一個地方,首先要問的第一句就是“這裡有沒有WIFI?”但隨之出現的無線網路安全問題卻沒有引起人們足夠的重視。在一些公眾場合,例如機場,火車站,咖啡廳,餐館等場所都會設定一些免費的無線WIFI供顧客使用,但是他們的安全性是非常不可靠的。WIFI釣魚,偽造熱點,流量劫持常常在這鐘場合下被用來攻擊福士場所下串連WIFI的人,從而造成可怕的資訊泄露事件。
  本片文章主要WIFI熱點廣播訊號的BeaconFrame和使用簡潔的Python對AP的SSID 進行嗅探。

2. 瞭解BeaconFrame2.1 一個簡單的無線網路。

  
   有些筆記本,智能手機,pad等智能終端通過無線方式接入無線熱點(AP)來串連互連網。攻擊人使用一台電腦和一個無線網卡就可以進行攻擊。

2.2 瞭解WLAN包的類型

  有三種包的類型:

  • Management
  • Control
  • Data

    更詳細的資訊可參考:
    http://standards.ieee.org/about/get/802/802.11.html
    下面是關於wlan包欄位的相關解釋。

    瞭解無線存取點(AP,Access Piont)

  • 每個AP都配置了一個SSID。

  • 這個SSID扮演著一個網路名稱的角色。
  • 終端裝置通過這個SSID搜尋這個AP或者無線網路。
  • AP 發送廣播幀(BeaconFrames)來表示它的存在。
  • 終端憑SSID來列無線網路的列表。
2.3 wireshark抓取BeaconFrame進行分析。

  把usb無線網卡接入Kali中,開啟監聽模式。
  “`
  # ifconfig wlan0 up
  # airmon-ng start wlan0

“`

結束相關進程,提高監聽的穩定性。並查看監聽介面的情況。

啟動wireshark,並用mon0介面進行監聽。
# wireshark &

啟動之前,選擇mon0.
選擇一個Beacon Frame類型的包進行查看。

可以看到這個BeaconFrame廣播幀是由“lyc”熱點發的。

3. Python使用RAW sockets 嗅探WIFI的SSID

  raw socket,即原始通訊端,可以接收本機網卡上的資料幀或者資料包,對與監聽網路的流量和分析是很有作用的。使用raw socket傳統意義上講並不是一個好主意,但是卻讓你在低層次上接觸網路介面,可以直接擷取所有的包。
  vim開啟ssniffer.py檔案,將一下python代碼寫入:
  

#!/usr/bin/env pythonimport socketrawSocket = socket.socket(socket.AF_PACKET,socket.SOCK_RAW,socket.htons(0x0003))rawSocket.bind(("mon0",0x0003)) #綁定mon0介面apList = set()while True:    pkt = rawSocket.recvfrom(2048)[0]    #通過wireshark抓包分析可知BeaconFrame 的frame control為0x80,也就是subtype為8    if pkt[26] == "\x80":             if pkt[36:42] not in apList and ord(pkt[63]) > 0:             apList.add(pkt[36:42])  # packet的36到42位元組儲存AP的mac地址            print "SSID: %s AP‘s MAC address: %s" % (pkt[64:64+ord(pkt[63])],pkt[36:42].encode(‘hex‘))

儲存,加可執行許可權,並執行。

“` # chmod +x ssniffer.py
# ./ssniffer.py

python只需要10來行代碼就可以搞定了,是不是很強大。
我們用airodump-ng命令驗證一下結果,
# airodump-ng mon0

哈哈,最後說一句:“have fun, enjoy !!!”

無線網路安全之Python使用RAW sockets 嗅探WIFI的SSID

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.