Tcpdump là phần mềm bắt gói
tin trong mạng làm việc trên hầu hết các phiên bản hệ điều hành
unix/linux. Tcpdump cho phép bắt và lưu lại những gói tin bắt được, từ
đó chúng ta có thể sử dụng để phân tích.
1. Bắt gói tin từ một giao diện ethernet cụ thể thông qua tcpdump -i
Khi bạn thực thi lệnh tcpdumpmà không có tùy chọn cụ thể, nó sẽ bắt tất cả các gói tin lưu thông qua card mạng. Tùy chọn -i sẽ cho phép bạn lọc một Interface (giao diện/card mạng) ethernet cụ thể.
Trong ví dụ trên, tcpdump bắt tất cả các gói tin trong eth1 và hiển thị theo chuẩn đầu ra.$ tcpdump -i eth1
2. Chỉ bắt số lượng N gói tin thông qua lệnh tcpdump -c
Khi bạn thực thi lệnh tcpdump, nó sẽ thực hiện đến khi bạn hủy bỏ lệnh. Sử dụng tùy chọn -c bạn sẽ có thể lựa chọn cụ thể số lượng gói tin được bắt.
Ví dụ trên cho thấy lệnh tcpdump chỉ bắt 2 gói tin từ giao diện eth0.$ tcpdump -c 2 -i eth0
3. Hiển thị các gói tin được bắt trong hệ ASCII thông qua tcpdump -A
Dưới đây là lệnh tcpdump hiển thị gói tin dưới dạng ASCII.
4. Hiển thị các gói tin được bắt dưới dạng HEX và ASCII thông qua tcpdump -XX$ tcpdump -A -i eth0
Một vài người dùng có thể muốn phân tích gói tin dưới dạng giá trị cơ số 16. tcpdump cung cấp một cách hiển thị gói tin dưới cả hai dạng ASCII và HEX.
5. Bắt gói tin và ghi vào một file thông qua tcpdump -w$tcpdump -XX -i eth0
tcpdump cho phép bạn lưu gói tin thành một file, và sau đó bạn có thể sử dụng với mục đích phân tích khác.
$ tcpdump -w 08232010.pcap -i eth0
6. Đọc các gói tin từ một file thông qua tcpdump -rTùy chọn -w ghi các gói tin vào một file cho trước. Phần mở rộng của file nên là .pcap để có thể đọc được bởi các phần mềm phân tích giao thức mạng.
Bạn có thể đọc được các file .pcap như sau:
7.Bắt các gói tin với địa chỉ IP thông qua tcpdump -n$tcpdump -tttt -r data.pcap
Trong các ví dụ phía trên hiển thị gói tin với địa chỉ DNS chứ không phải địa chỉ IP/ Ví dụ dưới đây bắt các gói tin và hiển thị địa chỉ IP của thiết bị liên quan.
8. Bắt các gói tin với các dấu thời gian thông quan tcpdump -tttt$ tcpdump -n -i eth0
9. Đọc các gói tin lớn hơn N byte$ tcpdump -n -tttt -i eth0
Bạn có thể chỉ nhận những gói tin lớn hơn N byte thông qua một bộ lọc “greater”.
10. Chỉ nhận những gói tin trong với một kiểu giao thức cụ thể.$ tcpdump -w g_1024.pcap greater 1024
Bạn có thể lọc các gói tin dựa vào kiểu giao thức. Bạn có thể chọn một trong những giao thức — fddi, tr, wlan, ip, ip6, arp, rarp, decnet, tcp và udp. Ví dụ dưới đây chỉ bắt các gói tin arp thông qua giao diện eth0.
11. Đọc các gói tin nhỏ hơn N byte.$ tcpdump -i eth0 arp
Bạn có thể chỉ nhận những gói tin nhỏ hơn N byte thông qua bộ lọc “less”.
12. Nhận các gói tin trên một cổng cụ thể thông qua tcpdump port.$ tcpdump -w l_1024.pcap less 1024
Nếu bạn muốn biết tất cả gói tin nhận được trên một cổng cụ thể trên thiết bị, bạn có thể sử dụng lệnh như sau
Các gói tin có địa chỉ IP và cổng nguồn và đích. Sử dụng tcpdump chúng ta có thể áp dụng bộ lọc trên địa chỉ IP và cổng nguồn hoặc đích. Lệnh dưới đây bắt các gói tin trong eth0 với địa chỉ đích IP và cổng 22.$ tcpdump -i eth0 port 22 13. Bắt các gói tin trên địa chỉ IP và cổng đích.
14. Bắt các gói tin kết nối TCP giữa hai host.$ tcpdump -w xpackets.pcap -i eth0 dst 10.181.140.216 and port 22
Nếu hai tiến trình từ hai thiết bị kết nối thông qua giao thức TCP, chúng ta sẽ có thể bắt những gói tin thông qua lệnh dưới đây:
Bạn có thể mở file comm.pcap để debug bất cứ vấn đề tiềm tàng nào.$tcpdump -w comm.pcap -i eth0 dst 16.181.170.246 and port 22
15. Bộ lọc gói tin tcpdump – Bắt tất cả các gói tin ngoại trừ arp và rarp
Trong lệnh tcpdump bạn có thể sử dụng điều kiện “and”, “or” hoặc “not” để lọc các gói tin.
$ tcpdump -i eth0 not arp and not rarp
Không có nhận xét nào:
Đăng nhận xét