क्या एक स्वचालित तरीका है (या तो टीसीपीडम्प में या एक सहायक ऐप आउट के माध्यम से) जिसमें एक पाइप फ़ाइल उत्पन्न होती है जिसमें केवल ईथरनेट, आईपी और लेयर 4 (मेरे मामले में टीसीपी) शीर्षलेख होते हैं, ताकि कोई पेलोड/एप्लिकेशन डेटा न हो परिणामी पकेप में? मैंने पाया है कि चूंकि हेडर आकार अक्सर भिन्न होते हैं, इसलिए कैप्चर आकार चुनना असंभव है जो किसी भी पेलोड डेटा को नहीं पकड़ेगा।एक tcpdump से पट्टी लोड पट्टी?
उत्तर
आप पायथन के scapy
मॉड्यूल के साथ बहुत आसानी से टीसीपी पेलोड को निकाल देते हैं कर सकते हैं
पहले
[[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
पेलोड स्ट्रिपिंग
लिनक्स में रूट के रूप में यह चल रहा है ...
#!/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)
बाद
[[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
tcpdump
में ऊपर, नोटिस "XX बाइट्स लापता!" संदेश। ऐसा इसलिए है क्योंकि हमने टीसीपी पेलोड हटा दिया है।
तो सरल truncate आप के लिए काम करेंगे, तो आप इस्तेमाल कर सकते हैं:
tcpdump -i eth0 -s 96 -w test1.pcap
आप पर बाद में wireshark साथ यह विश्लेषण कर सकते हैं।
मेरा समाधान निम्नानुसार था। मुझे यह सुनना अच्छा लगेगा कि बाहरी पुस्तकालयों या छंटनी के बिना अन्य लोग इसे कैसे करते हैं। मुझे यह सुनना अच्छा लगेगा कि दूसरों ने यह कैसे किया, क्योंकि मैं स्कैपी दस्तावेज में remove_payload() फ़ंक्शन को खोजने में असमर्थ था, जिससे यह जवाब अनुपयोगी बना।
#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)
इस के साथ समस्या यह है कि, जब tcpdump के साथ पढ़ा है, यह एक बाइट्स लापता छोड़ देता है! Src IP के लिए। मैं के माध्यम से
pkts[_packet_num].load
पूरे कब्जा पुनर्जीवित करने के लिए तो यह लगता है कि यह अनछुए था एक रास्ता है जानकारी को अभी भी वहाँ Scapy उपयोग कर रहा है सत्यापित कर सकते हैं?
यह एक उत्तर से अधिक प्रश्न की तरह लगता है। शायद [पूछना] (http://stackoverflow.com/questions/ask) पर विचार करें। – adamdunson
- 1. एक नेविगेशन पट्टी
- 2. प्रगति पट्टी
- 3. प्रगति पट्टी
- 4. पट्टी pdb
- 5. पट्टी सभी
- 6. dismissModalViewController स्थिति पट्टी
- 7. "कॉपी के दौरान पट्टी डीबग प्रतीक" और "पट्टी लिंक्ड उत्पाद"
- 8. छिपाएं उपकरण पट्टी FlowDocument
- 9. पट्टी सतह प्रक्षेप
- 10. एंड्रॉयड: स्थिति पट्टी
- 11. परिपत्र प्रगति पट्टी
- 12. एंड्रॉयड - सूचना पट्टी
- 13. एचटीएमएल 5: प्रगति पट्टी
- 14. wxPython प्रगति पट्टी
- 15. विंडो शीर्षक पट्टी
- 16. android.Log.d कैसे पट्टी करें?
- 17. पट्टी सफेद रिक्त स्थान
- 18. लंबवत प्रगति पट्टी
- 19. SyntaxHighlighter उपकरण पट्टी
- 20. अजगर पट्टी विधि
- 21. विंडो पृष्ठभूमि स्थिति पट्टी
- 22. ffmpeg वीडियो एन्कोडिंग प्रगति पट्टी
- 23. पट्टी पी टैग से सभी वर्गों ..
- 24. चुंबकीय पट्टी से पार्स क्रेडिट कार्ड इनपुट
- 25. distutils बाइनरी वितरण से स्रोत कैसे पट्टी?
- 26. एक कस्टम अपलोड प्रगति पट्टी बनाना
- 27. वेबसाइट लोड होने पर कताई चक्र या प्रगति पट्टी दिखाएं
- 28. स्काला पट्टी पिछली श्वेत रिक्ति
- 29. पट्टी मूल्य दशमलव जब आवश्यक
- 30. QT4 खींचें विंडो शीर्षक पट्टी
दुर्भाग्यवश ओपी सही है, टीसीपी विकल्प फ़ील्ड के कारण टीसीपी शीर्षकों की लंबाई की भरोसेमंद भविष्यवाणी करने का कोई तरीका नहीं है। अधिकांश भाग के लिए, यह आईपी/टीसीपी हेडर का एकमात्र हिस्सा है जिसमें लंबाई में भिन्न होने का एक महत्वपूर्ण मौका है। एक निश्चित स्नैपलेन मान गारंटी नहीं देता है कि आप हमेशा सही जगह पर टीसीपी पेलोड को छोटा कर देते हैं। –