Có cách tự động (hoặc trong tcpdump hoặc thông qua ứng dụng trợ giúp Có) để tạo tệp pcap chỉ chứa tiêu đề Ethernet, IP và Lớp 4 (TCP trong trường hợp của tôi), để không có dữ liệu ứng dụng/tải trọng trong pcap kết quả? Tôi nhận thấy rằng vì kích thước tiêu đề thường thay đổi, nên không thể chọn kích thước chụp sẽ không bắt được bất kỳ dữ liệu tải trọng nào.Tước tải trọng từ một tcpdump?
Trả lời
Bạn có thể loại bỏ các trọng tải TCP rất dễ dàng với mô-đun scapy
Python của
TRƯỚC
[[email protected] tshark_wd]$ tcpdump -n -r sample.pcap
reading from file sample.pcap, link-type EN10MB (Ethernet)
00:25:42.443559 IP 192.168.12.237.1052 > 192.168.12.236.22: Flags [P.],
seq 2445372969:2445373021, ack 1889447842, win 63432, length 52
00:25:42.443607 IP 192.168.12.236.22 > 192.168.12.237.1052: Flags [.],
ack 52, win 65535, length 0
00:25:42.443980 IP 192.168.12.236.22 > 192.168.12.237.1052: Flags [P.],
seq 1:389, ack 52, win 65535, length 388
PAYLOAD tước
Chạy này như là người chủ trong linux ...
#!/usr/bin/env python
from scapy.all import *
INFILE = 'sample.pcap'
OUTFILE = 'stripped.pcap'
paks = rdpcap(INFILE)
for pak in paks:
pak[TCP].remove_payload()
wrpcap(OUTFILE, paks)
SAU
[[email protected] tshark_wd]$ tcpdump -n -r stripped.pcap
reading from file sample.pcap, link-type EN10MB (Ethernet)
00:25:42.443559 IP truncated-ip - 52 bytes missing! 192.168.12.237.1052
> 192.168.12.236.22: Flags [P.], seq 2445372969:2445373021,
ack 1889447842, win 63432, length 52
00:25:42.443607 IP 192.168.12.236.22 > 192.168.12.237.1052: Flags [.],
ack 52, win 65535, length 0
00:25:42.443980 IP truncated-ip - 388 bytes missing! 192.168.12.236.22
> 192.168.12.237.1052: Flags [P.], seq 1:389,
ack 52, win 65535, length 388
Trong tcpdump
trên, chú ý đến "XX byte thiếu!" tin nhắn. Đó là bởi vì chúng tôi đã loại bỏ tải trọng TCP.
Nếu truncate đơn giản sẽ làm việc cho bạn, bạn có thể sử dụng:
tcpdump -i eth0 -s 96 -w test1.pcap
Sau đó bạn có thể phân tích nó với Wireshark.
Giải pháp của tôi như sau. Tôi rất muốn nghe cách người khác làm điều đó mà không cần thư viện bên ngoài hoặc cắt xén. Tôi rất muốn nghe những người khác đã thực hiện điều này như thế nào, bởi vì tôi không thể tìm thấy hàm remove_payload() trong tài liệu Scapy, làm cho câu trả lời này không sử dụng được.
#read pcap file
pkts = rdpcap("packet-capture.pcap")
#write packet with payload "XXXXXXXXXX"
for pkt in pkts:
pkt.load = "XXXXXXXXXX"
#write new pcap
wrpcap("new.pcap", pkts)
Vấn đề với điều này là khi đọc với tcpdump, thiếu byte! cho IP src. Tôi có thể xác minh thông tin vẫn còn ở đó bằng cách sử dụng scapy qua
pkts[_packet_num].load
Có cách nào để tạo lại toàn bộ chụp sao cho có vẻ như nó không bị thay đổi?
Điều này nghe giống một câu hỏi khác hơn là câu trả lời. Có lẽ xem xét [yêu cầu] (http://stackoverflow.com/questions/ask) khác. – adamdunson
- 1. Tải trọng phản hồi phân trang từ một API RESTful
- 2. tcpdump: localhost đến localhost
- 3. tcpdump vs tcpflow (hoặc "tại sao tcpdump dữ liệu gói ASCII không thể đọc được?")
- 4. Tcpdump trên openwrt
- 5. Bắt stdout từ một tiến trình con tcpdump sau khi chấm dứt nó
- 6. "Tải trọng" dữ liệu từ bộ xử lý ngữ cảnh
- 7. Cách tải trọng từ POST trong Play 2.0
- 8. Tải trọng yêu cầu HTTP
- 9. Rails tải trọng mong muốn?
- 10. Thêm tải trọng trong gói
- 11. Chế độ xem là tước thẻ từ đầu ra
- 12. Tước khối văn bản từ tập tin văn bản lớn
- 13. Neo thẻ tước từ URL vào mẫu nộp
- 14. Drupal 7 drupal_mail tước HTML?
- 15. Tải trọng trong bảng được phân đoạn
- 16. bitbucket tước git sửa đổi
- 17. PHP DOMDocument tước thẻ HTML
- 18. Tước giây trong datetime python
- 19. Chụp các gói LLDP bằng tcpdump
- 20. Tải trọng lười biếng trong node.js
- 21. Tải trọng lười trong mục tiêu C
- 22. Tải trọng bằng readyState == 4 trong XMLHttpRequest?
- 23. Xác định địa chỉ tải và điểm vào của hình ảnh hạt nhân Linux bị tước
- 24. XmlSerializer.Serialize Tước <xml> thẻ
- 25. Cách chụp tất cả các gói HTTP bằng tcpdump
- 26. Các tập lệnh bị tước với jQuery .load
- 27. Chụp gói 24/7 trong Android bằng tcpdump
- 28. "Tải trọng" là gì? ví dụ như XML Payload
- 29. Tải trọng, tải và tải lại chậm trong khung thực thể
- 30. Tước tất cả các thẻ html với Html Agility Pack
Thật không may là OP là chính xác, không có cách nào để dự đoán đáng tin cậy độ dài của các tiêu đề TCP, do trường Tùy chọn TCP. Đối với hầu hết các phần, đó là phần duy nhất của các tiêu đề IP/TCP có một cơ hội đáng kể khác nhau về chiều dài. Giá trị snaplen cố định không đảm bảo rằng bạn luôn cắt bớt tải trọng TCP ở đúng vị trí. –