Tìm hiểu Pktmon: Công cụ theo dõi mạng tích hợp của Windows 10

Khi phát hành bản cập nhật Windows 10 tháng 10 năm 2018, Microsoft đã âm thầm bổ sung một trình kiểm tra gói mạng (packet sniffer) dưới dạng dòng lệnh tích hợp có tên Pktmon vào Windows 10. Sau đó, Microsoft đã bổ sung thêm một số tính năng cho công cụ này để giúp người dùng dễ sử dụng hơn.

Trình theo dõi gói, hay trình phân tích mạng, là chương trình cho phép bạn theo dõi lưu lượng mạng truyền qua các thiết bị mạng của máy tính đến cấp độ từng gói riêng lẻ.

Pktmon: Công cụ theo dõi mạng tích hợp của Windows 10

Khi mới phát hành, Pktmon chỉ hỗ trợ định dạng Event Trace Log (ETL), một định dạng nhật ký độc quyền do Microsoft tạo ra. Sau này, Microsoft đã thêm hỗ trợ file nhật ký PCAPNG và tính năng giám sát thời gian thực, mà chúng ta sẽ tìm hiểu trong bài viết này.

Để sử dụng Pktmon, bạn cần khởi chạy Command Prompt với quyền admin trên Windows 10, vì chương trình yêu cầu quyền admin. Để nhận được hướng dẫn về cách sử dụng chương trình, bạn nhập lệnh pktmon help trong Command Prompt.

Tài liệu trợ giúp pktmon
Tài liệu trợ giúp pktmon

Để nhận thêm hướng dẫn trợ giúp về một lệnh cụ thể, hãy nhập lệnh pktmon [tên lệnh] help. Ví dụ, để xem tài liệu về lệnh "comp", bạn sẽ nhập:

pktmon comp help
Sử dụng lệnh help
Sử dụng lệnh help

Bạn có thể sử dụng help để xem hướng dẫn của cả những lệnh phụ (subcommand), ví dụ:

pktmon comp list help

Để làm quen với Pktmon thì xem hướng dẫn là cách hữu ích nhất, vì thế bạn nên thử tìm hiểu trước khi thực sự sử dụng công cụ này.

Cách sử dụng công cụ theo dõi mạng Pktmon

So với công cụ theo dõi mạng có giao diện người dùng đồ họa, bạn có thể mất nhiều thời gian hơn để làm quen với giao diện dòng lệnh của Pktmon.

Trước khi có thể theo dõi các gói, trước tiên bạn cần tạo bộ lọc bằng cách sử dụng lệnh pktmon filter add, lệnh này chỉ định traffic (lưu lượng) bạn muốn theo dõi.

Ví dụ, bạn có thể theo dõi tất cả traffic mạng trên mạng của mình bằng lệnh:

pktmon filter add -i 192.168.1.0/24

… hoặc giám sát traffic DNS bằng:

pktmon filter add -t UDP -p 53

Nếu chưa hình dung ra cách làm, bạn nên dùng lệnh pktmon filter add help để tìm hiểu cách tạo bộ lọc.

Trong bài viết này, tác giả đã tạo một bộ lọc để theo dõi lưu lượng DNS như được mô tả ở trên. Để xem các bộ lọc bạn đã tạo, hãy nhập lệnh:

pktmon filter list
Bộ lọc giám sát đã tạo được liệt kê
Bộ lọc giám sát đã tạo được liệt kê

Để bắt đầu giám sát lưu lượng DNS trên tất cả các interface mạng và hiển thị hoạt động trong thời gian thực, bạn sẽ sử dụng lệnh sau:

pktmon start --etw -p 0 -l real-time

Ví dụ trên sử dụng đối số -p 0, vì vậy nó bắt toàn bộ gói tin. Bạn cũng có thể chỉ định interface mạng cụ thể để giám sát bằng cách sử dụng đối số -c theo sau là index ID của interface. Để có danh sách các interface mạng và index ID (ifIndex), bạn có thể sử dụng lệnh:

pktmon comp list

Khi bắt đầu theo dõi lưu lượng truy cập, bạn sẽ thấy các gói DNS đã bắt được hiển thị theo thời gian thực trong Command Prompt, như dưới đây.

Giám sát lưu lượng DNS trong thời gian thực
Giám sát lưu lượng DNS trong thời gian thực

Để dừng theo dõi traffic, hãy nhấn Ctrl + C. Khi hoàn tất, sẽ có file nhật ký PktMon.etl được tạo trong thư mục bạn đã chạy Pktmon.

Tuy nhiên, file ETL không phải là một lựa chọn tốt vì nhiều ứng dụng không hỗ trợ chúng. Bạn có thể chuyển file ETL thành file PCAPNG bằng lệnh pktmon pcapng. Ví dụ, để chuyển đổi PktMon.etl thành file PCAPNG có tên PktMon.pcapng, hãy nhập lệnh sau:

pktmon pcapng PktMon.etl -o PktMon.pcapng

Sau khi file nhật ký được chuyển đổi sang định dạng PCANPNG, bạn có thể load file đó vào một chương trình như Wireshark để nhận thông tin chi tiết về từng yêu cầu DNS.

Phân tích nhật ký Pktmon với Wireshark
Phân tích nhật ký Pktmon với Wireshark

Như bạn có thể thấy, Pktmon là một công cụ cực kỳ mạnh mẽ, cho phép bạn có được cái nhìn sâu sắc về loại lưu lượng chạy qua mạng của mình.

Đồng thời, Pktmon có thể phức tạp khi sử dụng, vì vậy bạn nên làm quen với tài liệu trợ giúp trước khi chạy lệnh.

Thứ Hai, 28/12/2020 21:21
53 👨 3.080
0 Bình luận
Sắp xếp theo