iT邦幫忙

2024 iThome 鐵人賽

DAY 21
0
Python

讓Python與資安共舞系列 第 21

網路資料偵測

  • 分享至 

  • xImage
  •  

撰寫一個網路偵測工具
在Scapy中提供了一種專門用來捕捉資料封包的函數sniff(),可以先檢視一下它的使用方法,以下是比較重要參數的含義:

  • count():表示要捕捉資料封包的數量,預設值為0,表示不限制數量。
  • store():表示是否要儲存捕捉到的資料封包,預設值為1。
  • prn:一個函數,將應用在每個捕捉到的資料封包上。如果這個函數有傳回值,將顯示出來,預設是空。
  • iface:表示要使用的網路卡或網路卡列表。
    sniff()這個函數會捕捉到整個網路的通訊,會導致有大量的資料出現,所以它還支援了篩檢程式的使用,篩檢程式使用了一種功能非常強大的過濾語法,叫做「柏克萊封包過濾」,簡稱BPF,利用它可以確定該取得哪些流量、該省略哪些流量。BPF的主要特點是使用一個名為「基本操作」的方法來完成對網路資料封包地描述,例如:”host”來描述主機。以下我用sniff()捕捉資料封包:
    https://ithelp.ithome.com.tw/upload/images/20241005/20169331FExeOuLjnD.png
    呼叫WireShark來檢視資料封包
    首先我們可以在Scapy中產生一個資料封包,然後將這個資料封包放在Wireshark中開啟:
    https://ithelp.ithome.com.tw/upload/images/20241005/20169331g6FD8NkMwk.png
    跑完後就會開啟Wireshark,畫面如下:
    https://ithelp.ithome.com.tw/upload/images/20241005/20169331KCzdPkBGAI.png
    今天就先學到這邊,明天會學習到ARP的缺陷以及原理。

上一篇
軟體的溢位漏洞
下一篇
ARP的缺陷及原理
系列文
讓Python與資安共舞30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言