นี่คือคำสั่ง rawshark ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
rawshark - ดัมพ์และวิเคราะห์ข้อมูล pcap ดิบ
เรื่องย่อ
ฉลามวาฬ [ -d | ] [ -F ] [ -h ] [ -l ]
[ -n ] [ -N ] [ -o ] ... [ -p ]
[ -r |- ] [ -R ] [ -s ] [ -S ]
[ -t ก|โฆษณา|adoy|d|dd|e|r|u|ud|udoy ] [ -v ]
DESCRIPTION
รอว์ชาร์ก อ่านสตรีมของแพ็กเก็ตจากไฟล์หรือไปป์ และพิมพ์บรรทัดที่อธิบาย
เอาต์พุต ตามด้วยชุดของฟิลด์ที่ตรงกันสำหรับแต่ละแพ็กเก็ตบน stdout
INPUT
แตกต่าง ฉลาม, รอว์ชาร์ก ทำให้ไม่มีสมมติฐานเกี่ยวกับการห่อหุ้มหรือการป้อนข้อมูล NS -d และ -r
ต้องระบุแฟล็กเพื่อให้ทำงาน หนึ่งหรือมากกว่า -F ควรระบุธง
เพื่อให้ผลงานออกมาเป็นประโยชน์ ธงอื่น ๆ ที่ระบุไว้ข้างต้นเป็นไปตามเดียวกัน
อนุสัญญาเป็น Wireshark และ ฉลาม.
รอว์ชาร์ก ต้องการเร็กคอร์ดอินพุตที่มีรูปแบบต่อไปนี้โดยค่าเริ่มต้น ตรงกับ
รูปแบบของส่วนหัวของแพ็กเก็ตและข้อมูลแพ็กเก็ตในไฟล์ที่มีรูปแบบ pcap บนดิสก์
จัดโครงสร้าง rawshark_rec_s {
uint32_t ts_sec; /* ประทับเวลา (วินาที) */
uint32_t ts_usec; /* ประทับเวลา (ไมโครวินาที) */
uint32_t caplen; /* ความยาวของแพ็กเก็ตบัฟเฟอร์ */
uint32_t เลน; /* "On the wire" ความยาวของแพ็กเก็ต */
ข้อมูล uint8_t [caplen]; /* ข้อมูลแพ็คเก็ต */
};
If -p จัดให้ ฉลามวาฬ คาดหวังรูปแบบต่อไปนี้ ตรงกับ โครงสร้าง
pcap_pkthdr โครงสร้างและข้อมูลแพ็กเก็ตที่ใช้ใน libpcap/WinPcap รูปแบบของโครงสร้างนี้คือ
ขึ้นอยู่กับแพลตฟอร์ม ขนาดของ tv_วินาที ในฟิลด์ โครงสร้าง ช่วงเวลา โครงสร้างอาจเป็น
32 บิตหรือ 64 บิต สำหรับ ฉลามวาฬ ในการทำงานเค้าโครงของโครงสร้างในการป้อนข้อมูลต้อง
ตรงกับเค้าโครงของโครงสร้างใน ฉลามวาฬ. โปรดทราบว่ารูปแบบนี้น่าจะเป็น
เหมือนกับรูปแบบก่อนหน้า if ฉลามวาฬ เป็นโปรแกรม 32 บิต แต่ไม่จำเป็นต้องเป็น
เหมือนกันถ้า ฉลามวาฬ เป็นโปรแกรม 64 บิต
จัดโครงสร้าง rawshark_rec_s {
โครงสร้าง timeval ts; /* ประทับเวลา */
uint32_t caplen; /* ความยาวของแพ็กเก็ตบัฟเฟอร์ */
uint32_t เลน; /* "On the wire" ความยาวของแพ็กเก็ต */
ข้อมูล uint8_t [caplen]; /* ข้อมูลแพ็คเก็ต */
};
ไม่ว่าในกรณีใด endianness (การเรียงลำดับไบต์) ของจำนวนเต็มแต่ละตัวจะต้องตรงกับระบบบน
ที่ ฉลามวาฬ กำลังวิ่ง.
เอาท์พุท
หากมีการระบุฟิลด์ตั้งแต่หนึ่งฟิลด์ขึ้นไปผ่านทาง -F ธง, รอว์ชาร์ก พิมพ์ตัวเลข field
พิมพ์และแสดงรูปแบบสำหรับแต่ละฟิลด์ในบรรทัดแรกเป็น "หมายเลขแพ็กเก็ต" 0 สำหรับแต่ละ
บันทึก หมายเลขแพ็กเก็ต ช่องที่ตรงกัน และ "1" หรือ "0" จะถูกพิมพ์เพื่อระบุว่า
ฟิลด์ตรงกับตัวกรองการแสดงผลที่ให้มา เครื่องหมาย "-" ใช้เพื่อส่งสัญญาณการสิ้นสุดของเขตข้อมูล
คำอธิบายและที่ส่วนท้ายของแต่ละบรรทัดแพ็กเก็ต ตัวอย่างเช่น แฟล็ก -F ไอพี.src -F
dns.qry.type อาจสร้างผลลัพธ์ต่อไปนี้:
0 FT_IPv4 BASE_NONE - 1 FT_UIT16 BASE_HEX -
1 1="1" 0="192.168.77.10" 1 -
2 1="1" 0="192.168.77.250" 1 -
3 0="192.168.77.10" 1 -
4 0="74.125.19.104" 1 -
โปรดทราบว่าแพ็กเก็ต 1 และ 2 เป็นการสืบค้น DNS และ 3 และ 4 ไม่ใช่ กำลังเพิ่ม -R "ไม่ dns" ยังคง
พิมพ์แต่ละบรรทัด แต่มีข้อบ่งชี้ว่าแพ็กเก็ต 1 และ 2 ไม่ผ่านตัวกรอง:
0 FT_IPv4 BASE_NONE - 1 FT_UIT16 BASE_HEX -
1 1="1" 0="192.168.77.10" 0 -
2 1="1" 0="192.168.77.250" 0 -
3 0="192.168.77.10" 1 -
4 0="74.125.19.104" 1 -
นอกจากนี้ โปรดทราบว่าผลลัพธ์อาจอยู่ในลำดับใดก็ได้ และช่องที่ตรงกันหลายช่องอาจเป็น
แสดง
OPTIONS
-NS
ระบุว่าควรแยกข้อมูลแพ็คเก็ตอย่างไร การห่อหุ้มอยู่ในรูปแบบ
ชนิด:ความคุ้มค่าที่นี่มี ชนิด เป็นหนึ่งใน:
ห่อหุ้ม:ชื่อ ข้อมูลแพ็คเก็ตควรถูกผ่าโดยใช้การเชื่อมโยงข้อมูล libpcap/WinPcap
(ทบ.) ชื่อ, เช่น ตัวย่อ:EN10MB สำหรับอีเทอร์เน็ต ชื่อจะถูกแปลงโดยใช้
pcap_datalink_name_to_val(). สามารถดูรายการ DLT ทั้งหมดได้ที่
<http://www.tcpdump.org/linktypes.html>.
ห่อหุ้ม:จำนวน ข้อมูลแพ็คเก็ตควรถูกผ่าโดยใช้ libpcap/WinPcap LINKTYPE_
จำนวน, เช่น ตัวปิด:105 สำหรับดิบ IEEE 802.11 หรือ ตัวปิด:101 สำหรับ IP ดิบ
โปรโต:โปรโตคอล ควรส่งข้อมูลแพ็คเก็ตไปยังโปรโตคอล Wireshark ที่ระบุ
dissector เช่น โปรโต:http สำหรับข้อมูล HTTP
-NS
เพิ่มฟิลด์ที่ตรงกันไปยังผลลัพธ์ ฟิลด์คือฟิลด์ตัวกรองการแสดงผลที่ถูกต้อง มากกว่า
มากกว่าหนึ่ง -F อาจมีการระบุแฟล็กและแต่ละฟิลด์สามารถจับคู่ได้หลายครั้งในหนึ่ง
แพ็คเก็ต ฟิลด์เดียวสามารถระบุได้ต่อ -F ธง. หากคุณต้องการใช้จอแสดงผล
กรอง ใช้ -R ธง.
-h พิมพ์เวอร์ชันและตัวเลือกและออก
-l ล้างเอาต์พุตมาตรฐานหลังจากพิมพ์ข้อมูลสำหรับแต่ละแพ็กเก็ต (นี่คือ
ไม่ได้พูดอย่างเคร่งครัดบัฟเฟอร์สายถ้า -V ถูกระบุ; แต่ก็เหมือนกับ
เส้นบัฟเฟอร์ if -V ไม่ได้ระบุ เนื่องจากมีการพิมพ์บรรทัดเดียวสำหรับแต่ละแพ็กเก็ต
และในฐานะ -l ปกติจะใช้เมื่อทำการไพพ์การจับภาพแบบสดไปยังโปรแกรมหรือสคริปต์ ดังนั้น
เอาต์พุตสำหรับแพ็กเก็ตจะปรากฏขึ้นทันทีที่เห็นและแยกแพ็กเก็ต ควร
ทำงานเช่นเดียวกับบัฟเฟอร์ไลน์จริง เราทำสิ่งนี้เป็นวิธีแก้ปัญหาสำหรับข้อบกพร่อง
ในไลบรารี Microsoft Visual C++ C)
สิ่งนี้อาจมีประโยชน์เมื่อวางท่อเอาต์พุตของ ฉลาม ไปยังโปรแกรมอื่นตามที่มันหมายถึง
ว่าโปรแกรมที่ส่งสัญญาณออกจะเห็นข้อมูลที่ผ่าสำหรับแพ็กเก็ต
เร็ว ๆ นี้ ฉลาม เห็นแพ็กเก็ตและสร้างเอาต์พุตนั้น แทนที่จะเห็นมัน
เฉพาะเมื่อบัฟเฟอร์เอาต์พุตมาตรฐานที่มีข้อมูลนั้นเต็ม
-n ปิดใช้งานการจำแนกชื่ออ็อบเจ็กต์เครือข่าย (เช่น ชื่อโฮสต์, ชื่อพอร์ต TCP และ UDP),
-N แฟล็กอาจแทนที่สิ่งนี้
-NS
เปิดการแก้ไขชื่อสำหรับที่อยู่และหมายเลขพอร์ตบางประเภทเท่านั้นด้วย
ปิดการแก้ไขชื่อสำหรับที่อยู่และหมายเลขพอร์ตประเภทอื่นๆ ธงนี้
แทนที่ -n ถ้าทั้งสองอย่าง -N และ -n มีอยู่ ถ้าทั้งสองอย่าง -N และ -n ไม่มีธง
ความละเอียดของชื่อทั้งหมดเปิดอยู่
อาร์กิวเมนต์เป็นสตริงที่อาจมีตัวอักษร:
m เพื่อเปิดใช้งานการแก้ไขที่อยู่ MAC
n เพื่อเปิดใช้งานการแก้ไขที่อยู่เครือข่าย
N เพื่อเปิดใช้งานโดยใช้ตัวแก้ไขภายนอก (เช่น DNS) สำหรับการแก้ปัญหาที่อยู่เครือข่าย
t เพื่อเปิดใช้งานการแก้ปัญหาหมายเลขพอร์ตการขนส่งชั้น
C เพื่อเปิดใช้งานการค้นหา DNS พร้อมกัน (แบบอะซิงโครนัส)
d เพื่อเปิดใช้งานความละเอียดจากแพ็กเก็ต DNS ที่จับได้
-o :
ตั้งค่าการกำหนดลักษณะ แทนที่ค่าเริ่มต้นและค่าใดๆ ที่อ่านจากa
ไฟล์การตั้งค่า อาร์กิวเมนต์ของตัวเลือกคือสตริงของ form คำนำหน้านาม:ความคุ้มค่า,
ที่ไหน คำนำหน้านาม เป็นชื่อความชอบ (ซึ่งเป็นชื่อเดียวกับที่จะปรากฏ
ในไฟล์การกำหนดค่าตามความชอบ) และ ความคุ้มค่า คือค่าที่ควรตั้งไว้
-p สมมติว่าข้อมูลแพ็กเก็ตนำหน้าด้วยโครงสร้าง pcap_pkthdr ตามที่กำหนดไว้ใน pcap.h บน
บางระบบขนาดของข้อมูลการประทับเวลาจะแตกต่างจากข้อมูลที่เขียนถึง
ดิสก์. ในระบบอื่น ๆ จะเหมือนกันและแฟล็กนี้ไม่มีผล
-NS |-
อ่านข้อมูลแพ็กเก็ตจาก อินพุต แหล่ง. จะเป็นชื่อ FIFO ก็ได้ (ชื่อไปป์)
หรือ ``-'' เพื่ออ่านข้อมูลจากอินพุตมาตรฐานและต้องมีรูปแบบบันทึก
ระบุไว้ข้างต้น
-NS
ทำให้เกิดตัวกรองที่ระบุ (ซึ่งใช้ไวยากรณ์ของตัวกรองการอ่าน/การแสดงผล แทนที่จะเป็น
ของตัวกรองการดักจับ) ที่จะใช้ก่อนพิมพ์ผลงาน
-s อนุญาตให้ใช้ไฟล์ pcap มาตรฐานเป็นอินพุต โดยการข้ามไฟล์ pcap ขนาด 24 ไบต์
ส่วนหัว
-S ใช้สตริงรูปแบบที่ระบุเพื่อพิมพ์แต่ละฟิลด์ รูปแบบต่อไปนี้คือ
สนับสนุน:
%D ชื่อฟิลด์หรือคำอธิบาย เช่น "ประเภท" สำหรับ dns.qry.type
%N ค่าตัวเลขฐาน 10 ของฟิลด์
%S ค่าสตริงของฟิลด์
สำหรับสิ่งที่คล้ายกับจอแสดงผลมาตรฐานของ Wireshark ("ประเภท: A (1)") คุณสามารถใช้
%NS: %S (%NS).
-ta|ad|adoy|d|dd|e|r|u|ud|udoy
ตั้งค่ารูปแบบของการประทับเวลาของแพ็กเก็ตที่พิมพ์ในบรรทัดสรุป รูปแบบสามารถ
หนึ่งใน:
a สัมบูรณ์: เวลาที่แน่นอน ตามเวลาท้องถิ่นในเขตเวลาของคุณ คือเวลาจริง
แพ็กเก็ตถูกจับโดยไม่มีวันที่ปรากฏ
ad วันที่แน่นอน: วันที่สัมบูรณ์ แสดงเป็น YYYY-MM-DD และเวลา เป็นท้องถิ่น
เวลาในเขตเวลาของคุณคือเวลาและวันที่จริงที่แพ็กเก็ตถูกจับ
ออย แบบสัมบูรณ์กับวันที่โดยใช้วันของปี: วันที่แบบสัมบูรณ์ แสดงเป็น YYYY/DOY
และเวลา ตามเวลาท้องถิ่นในเขตเวลาของคุณ คือเวลาและวันที่จริงที่แพ็กเก็ตเป็น
ถูกจับกุม
d delta: เวลาเดลต้าเป็นเวลาตั้งแต่จับแพ็กเก็ตก่อนหน้านี้
dd delta_displayed: เวลา delta_displayed คือเวลาตั้งแต่ครั้งก่อนหน้าที่แสดง
แพ็กเก็ตถูกจับ
e epoch: เวลาเป็นวินาทีตั้งแต่ยุค (1 ม.ค. 1970 00:00:00 น.)
r ญาติ: เวลาสัมพัทธ์คือเวลาที่ผ่านไประหว่างแพ็กเก็ตแรกกับ
แพ็กเก็ตปัจจุบัน
u UTC: เวลาที่แน่นอน เช่น UTC คือเวลาจริงที่มีการจับแพ็กเก็ต โดยไม่มี
วันที่แสดง
ud UTC พร้อมวันที่: วันที่สัมบูรณ์ แสดงเป็น YYYY-MM-DD และเวลาเป็น UTC คือ
เวลาและวันที่จริงที่บันทึกแพ็กเก็ต
อู๊ด UTC พร้อมวันที่โดยใช้วันของปี: วันที่สัมบูรณ์ แสดงเป็น YYYY/DOY และ
เวลาตาม UTC คือเวลาและวันที่จริงที่บันทึกแพ็กเก็ต
รูปแบบเริ่มต้นเป็นแบบสัมพัทธ์
-v พิมพ์เวอร์ชันและออก
อ่าน FILTER ซิงค์
สำหรับตารางที่สมบูรณ์ของโปรโตคอลและฟิลด์โปรโตคอลที่สามารถกรองได้ใน ฉลาม ดู
wireshark-กรอง(4) หน้าคู่มือ
ใช้ rawshark ออนไลน์โดยใช้บริการ onworks.net