有沒有辦法做到tcpdump的只有打印網址
tcpdump -i lo -A
,並將它打印的所有URL,任何連接做?
我做:
sudo tcpdump -i lo -A | grep Host:
偉大的工程。但是,如果有選擇,做相同的tcpdump的
最後,我想知道,有沒有辦法做到這一點在Python不使用SYS命令或POPEN /子
有沒有辦法做到tcpdump的只有打印網址
tcpdump -i lo -A
,並將它打印的所有URL,任何連接做?
我做:
sudo tcpdump -i lo -A | grep Host:
偉大的工程。但是,如果有選擇,做相同的tcpdump的
最後,我想知道,有沒有辦法做到這一點在Python不使用SYS命令或POPEN /子
可以使用Scapy的嗅探功能,使用正則表達式或者用grep
import scapy
tcpdump = sniff(count=5,filter="host 64.233.167.99",prn=lambda x:x.summary())
print tcpdump
改變過濾器爲您過濾文本:)
或者你要保存的流量,看它在Wireshark的
wrpcap("temp.cap",pkts)
是否有可能嗅一段時間,而不是一個給定的計數(開始嗅)做東西。 (停止嗅探)此外,我們記錄界面lo上的所有內容非常重要。 – Cripto
要使用什麼是libpcap的是它使用tcpdump的抓包庫。這是一個python包裝,可以找到here。
您可以在python中,然後在pcap/tcpdump已經提供的過濾之上構建您想要的任何過濾。然後顯示這個過濾的輸出(或者你想在你的python腳本中做的任何事情)。
tcpdump無法使用軟件包的內容進行過濾,只需將這些軟件包轉儲到「到您的HTTP端口的傳入TCP連接」即可提高性能。 – Dennis
此外,由於HTTP不會以簡單的方式傳輸請求的URL,因此挑出tcpdump源會稍微困難 - 您必須將「主機」標頭和「GET」或「POST」行組合到得到完整的URL ... – Stobor