❶ Tshark 使用
在網路安全分析中,Tshark 是一個非常強大的工具。它能幫助你分析和解碼網路數據包。下面,我們將探討如何使用Tshark進行一些特定的網路數據處理任務。
首先,若需分割一個大的pcapng文件成多個小文件,可以使用editcap工具,例如,將一個包含100萬個數據包的文件分割為split01.pcap。命令為:
其次,合並pcapng文件可以使用mergecap命令,例如將1.pcap和2.pcap合並為merge.pcap:
對於多埠解碼,Tshark允許你指定特定的埠和協議進行解碼,例如,使用以下命令解碼埠3001上的HTTP流量和埠4001上的HTTP2流量,以及埠5001上的jsON流量:
要統計每個TCP流號的使用情況,可以使用以下命令:
對於去重寫pcapng文件,基於特定的TCP流號,可以使用以下命令:
在應用層頭部過濾,你可以通過指定埠號和協議來過濾,例如以下命令用於提取HTTP2頭部路徑:
對於應用層body體過濾,可以使用類似命令,但指定內容類型為json,例如以下命令用於提取JSON中指定欄位的值:
將特定流號的流合並為json文件,可以使用以下命令:
xx.json>
理解pcapng文件格式對正確使用Tshark至關重要。通過基於TCP流有效地拆分pcap文件,你可以更深入地分析網路流量。例如,以下命令用於提取特定TCP流號的HTTP2頭部路徑:
<tshark -r pvtb_0.pcapng -d tcp.port==3000,http2 -T fields -e tcp.stream -e http2.headers.path | grep /nnrf | awk '{print $1}' | sort -n | uniq
最後,通過提取特定TCP流號的JSON欄位值,你可以進一步分析應用層數據。例如,以下命令用於提取流號1或2的JSON數據:
<tshark -r pvtb_0.pcapng -d tcp.port==3000,http2 -Y " tcp.stream eq 1 || tcp.stream eq 2" -T fields -e tcp.stream -e json.member_with_value | grep -E "," | awk '{print $1}' | sort -n | uniq