Featured image of post Hướng dẫn sử dụng Wireshark - j88vip0

Hướng dẫn sử dụng Wireshark - j88vip0

Trải nghiệm sòng bạc trực tuyến J88VIP0 và nhận ưu đãi hấp dẫn!"

Trước tiên, chúng ta sẽ tìm hiểu một ví dụ về cách sử dụng công cụ Wireshark để bắt các hoạt động lệnh ping.

  1. Khi mở Wireshark, giao diện chính sẽ hiển thị như sau:

Mô tả hình ảnh tại đây

  1. Chọn card mạng tương ứng, nhấp chuột phải và chọn “Start Capture” (Bắt đầu thu thập) để bắt đầu thu thập thông tin mạng từ giao diện đã chọn.

Mô tả hình ảnh tại đây

  1. Thực hiện thao tác mà bạn muốn bắt gói tin, chẳng hạn như lệnh ping www.google.com.

  2. Sau khi hoàn thành thao tác, dữ liệu liên quan sẽ được bắt. Để tránh các gói tin không cần thiết làm phức tạp quá trình phân tích, bạn có thể áp dụng điều kiện lọc trong thanh lọc để lọc danh sách gói tin, kết quả như sau:

Lưu ý: Điều kiện lọc ip.addr == 180.101.49.11 and icmp chỉ hiển thị các gói ICMP với địa chỉ IP nguồn hoặc đích là 119.75.217.26.

Mô tả hình ảnh tại đây

Việc bắt gói tin bằng Wireshark đã hoàn tất.

Giao diện bắt gói tin của Wireshark

  • Thanh menu: Dùng cho việc gỡ lỗi và cấu hình.
  • Thanh công cụ: Các nút tắt cho chức năng thường dùng.
  • Thanh lọc: Xác định điều kiện lọc để lọc gói tin.
  • Danh sách gói tin: Vùng lõi hiển thị từng gói tin trên mỗi dòng.
  • Chi tiết gói tin: Thông tin chi tiết của gói tin đã chọn.
  • Byte gói tin: Dòng byte tương ứng với gói tin ở dạng nhị phân.

Các thao tác cơ bản

Điều chỉnh kích thước giao diện

Ba biểu tượng kính lúp trên thanh công cụ giúp bạn phóng to, thu nhỏ hoặc khôi phục kích thước mặc định của dữ liệu hiển thị trong giao diện chính.

Thiết lập cột hiển thị

Danh sách gói tin là một trong những phần quan trọng nhất. Ban đầu, danh sách này hiển thị một số cột mặc định nhưng bạn có thể thêm, xóa hoặc sửa đổi các cột hiển thị.

  1. Thêm cột hiển thị: Để hiển thị một trường dữ liệu nhất định trong danh sách gói tin, hãy chọn trường đó bằng chuột trái rồi nhấp chuột phải và chọn “Apply as Column” (Áp dụng làm cột).

Hoặc nhấn tổ hợp phím Ctrl + Shift + I để thực hiện thao tác tương tự.

  1. Ẩn cột hiển thị: Nếu muốn tạm thời ẩn một cột, nhấp chuột phải vào bất kỳ vị trí nào trên tiêu đề cột và bỏ chọn tên cột bạn muốn ẩn.

  2. Xóa cột hiển thị: Để xóa hoàn toàn một cột, nhấp chuột phải vào tên cột cụ thể và chọn “Remove this Column” (Xóa cột này).

Lưu ý rằng khi ẩn cột, bạn có thể nhấp chuột phải vào bất kỳ đâu trên hàng tiêu đề; nhưng khi xóa cột, bạn cần nhấp chuột phải trực tiếp vào tên cột để tránh xóa nhầm.

Cài đặt định dạng thời gian

Cột thời gian trong bảng danh sách gói tin có thể khó đọc theo định dạng mặc định. Bạn có thể điều chỉnh định dạng hiển thị bằng cách click vào “View” (Xem) trên thanh công cụ, chọn “Time Display Format” (Định dạng hiển thị thời gian) và chọn tùy chọn yêu thích.

Đánh dấu gói tin

Đối với các gói tin quan trọng, bạn có thể đánh dấu chúng để làm nổi bật.

Chọn gói tin bạn muốn đánh dấu, nhấp chuột phải và chọn “Mark/Unmark” (Đánh dấu/Hủy đánh dấu).

Nhấn Ctrl + M cũng thực hiện tương tự; nhấn hai lần để hủy đánh dấu.

Xuất gói tin

Trong quá trình bắt gói nhanh, chúng ta đã giới thiệu cách lưu các gói tin. Mặc định, hành động lưu sẽ giữ lại tất cả các gói đã bắt. Tuy nhiên, đôi khi chúng ta chỉ cần lưu một số gói cụ thể.

  1. Xuất gói tin đơn lẻ: Chọn gói tin, click vào “File” (Tệp) trên thanh menu, chọn “Export Specified Packets” (Xuất gói tin cụ thể).

Trong cửa sổ “Export Packet”, chọn “Selected packets only” (Chỉ xuất gói đã chọn).

  1. Xuất nhiều gói tin: Wireshark có tính năng xuất các gói tin đã đánh dấu. Bạn có thể đánh dấu tất cả các gói tin cần xuất và xuất cùng lúc.

Click vào “File” (Tệp), chọn “Export Specified Packets”.

Trong cửa sổ “Export Packet”, chọn “Marked packets only” (Chỉ xuất gói đã đánh dấu).

Bật chế độ promiscuous

Mặc định, máy tính chỉ giải mã các gói tin gửi đến MAC address của nó và loại bỏ các gói tin khác. Khi bật chế độ promiscuous, máy tính sẽ giải mã tất cả các gói tin trong mạng cục bộ.

Click vào “Capture” (Thu thập) trên thanh menu, chọn “Options” (Tùy chọn) và勾 chọn “Use promiscuous mode on all interfaces”.

Giải thích j88 tặng 50k j88 online giao diện

Trong vùng danh sách gói tin, các giao thức khác nhau được phân biệt bằng màu sắc khác nhau. Bạn có thể kiểm tra quy tắc tô màu trong “View > Coloring Rules”.

Bộ lọc hiển thị (Display Filter)

Dùng để thiết lập điều kiện lọc gói tin trong danh sách. Đường dẫn menu: “Analyze > Display Filter”.

Bảng danh sách gói tin (Packet List Pane)

Hiển thị các gói tin đã bắt, mỗi gói bao gồm số thứ tự, thời gian, địa chỉ nguồn, địa chỉ đích, giao thức, độ dài và thông tin gói tin. Các gói tin thuộc các giao thức khác nhau được phân biệt bằng màu sắc khác nhau.

Chi tiết gói tin (Packet Details Pane)

Khi chọn một gói tin cụ thể trong bảng danh sách, phần chi tiết gói tin sẽ hiển thị tất cả thông tin chi tiết của gói tin đó. Đây là phần quan trọng nhất để xem xét từng trường của giao thức.

Thông tin chi tiết bao gồm:

  1. Frame: Tổng quan về khung dữ liệu vật lý.
  2. Ethernet II: Thông tin đầu của khung Ethernet ở tầng liên kết dữ liệu.
  3. Internet Protocol Version 4: Thông tin đầu của gói IP ở tầng mạng.
  4. Transmission Control Protocol: Thông tin đầu của đoạn dữ liệu TCP ở tầng vận chuyển.
  5. Hypertext Transfer Protocol: Thông tin ở tầng ứng dụng, cụ thể là giao thức HTTP.

Nội dung gói TCP cụ thể

Thiết lập bộ lọc Wireshark

Bộ lọc bắt gói

Menu đường dẫn cho bộ lọc bắt gói là Capture --> Capture Filters, dùng để thiết lập trước khi bắt gói tin.

Ví dụ: ip host 60.207.246.216 and icmp chỉ bắt các gói ICMP từ địa chỉ IP 60.207.246.216.

Bộ lọc hiển thị

Bộ lọc hiển thị dùng để thiết lập điều kiện lọc sau khi bắt gói tin. Thường sử dụng khi điều kiện lọc ban đầu tương đối rộng và số lượng gói tin lớn.

Ví dụ: ip.addr == 211.162.2.183 and icmp để lọc ra các gói ICMP từ địa chỉ IP 211.162.2.183.

Quy tắc biểu đạt bộ lọc Wireshark

Ngữ pháp và ví dụ bộ lọc bắt gói

Loại bộ lọc (host, net, port), hướng (src, dst), giao thức (ether, ip, tcp, udp, http, icmp, ftp, v.v.), toán tử logic (&& AND, || OR, ! NOT).

  1. Lọc giao thức:

    • TCP: Chỉ hiển thị các gói TCP.
    • HTTP: Chỉ hiển thị các gói HTTP.
    • ICMP: Chỉ hiển thị các gói ICMP.
  2. Lọc địa chỉ IP:

    • host 192.168.1.104
    • src host 192.168.1.104
    • dst host 192.168.1.104
  3. Lọc cổng:

    • port 80
    • src port 80
    • dst port 80
  4. Toán tử logic && AND, || OR, ! NOT:

    • src host 192.168.1.104 && dst port 80: Bắt các gói từ địa chỉ 192.168.1.104 với cổng đích là 80.
    • host 192.168.1.104 || host 192.168.1.102: Bắt các gói từ địa chỉ 192.168.1.104 hoặc 192.168.1.102.
    • !broadcast: Không bắt các gói phát tán.

Ngữ pháp và ví dụ bộ lọc hiển thị

  1. Toán tử so sánh: == bằng, != khác, > lớn hơn, < nhỏ hơn, >= lớn hơn hoặc bằng, <= nhỏ hơn hoặc bằng.

  2. Lọc giao thức:

    • tcp: Chỉ hiển thị các gói TCP.
    • http: Chỉ hiển thị các gói HTTP.
    • icmp: Chỉ hiển thị các gói ICMP.
  3. Lọc địa chỉ IP:

    • ip.src == 192.168.1.104: Hiển thị các gói có địa chỉ nguồn là 192.168.1.104.
    • ip.dst == 192.168.1.104: Hiển thị các gói có địa chỉ đích là 192.168.1.104.
    • ip.addr == 192.168.1.104: Hiển thị các gói có địa chỉ nguồn hoặc đích là 192.168.1.104.
  4. Lọc cổng:

    • tcp.port == 80: Hiển thị các gói có cổng nguồn hoặc đích là 80.
    • tcp.srcport == 80: Chỉ hiển thị các gói có cổng nguồn là 80.
    • tcp.dstport == 80: Chỉ hiển thị các gói có cổng đích là 80.
  5. Lọc theo nội dung HTTP:

    • http.request.method == “GET”: Chỉ hiển thị các yêu cầu GET HTTP.
  6. Toán tử logic AND/OR/NOT:

    • Kết hợp nhiều điều kiện bằng AND/OR. Ví dụ: Lấy các gói ICMP từ địa chỉ IP 192.168.1.104 với điều kiện ip.addr == 192.168.1.104 and icmp.
  7. Lọc theo nội dung gói tin:

    • Giả sử bạn muốn lọc theo nội dung IMCP, có thể chọn dòng mã hóa trong giao diện và nhấp chuột phải để áp dụng làm bộ lọc.

Ví dụ: Lọc các gói chứa “abcd” trong dữ liệu với từ khóa contains.

Một số nhu cầu lọc phổ biến và biểu thức tương ứng

Tầng liên kết dữ liệu:

  • Lọc các gói có địa chỉ MAC là 04:f9:38:ad:13:26: eth.src == 04:f9:38:ad:13:26.

Tầng mạng:

  • Lọc các gói có địa chỉ IP là 192.168.1.1: ip.addr == 192.168.1.1.
  • Lọc các gói trong dải IP 192.168.1.0: ip contains "192.168.1".

Tầng vận chuyển:

  • Lọc các gói có cổng 80: tcp.port == 80.
  • Lọc các gói giữa cổng 12345 và 80: tcp.port == 12345 && tcp.port == 80.
  • Lọc các gói từ cổng 12345 đến cổng 80: tcp.srcport == 12345 && tcp.dstport == 80.

Tầng ứng dụng:

  • Lọc các gói HTTP có URL chứa “.php”: http.request.uri contains ".php".
  • Lọc các gói HTTP chứa từ “username”: http contains "username".

Phân tích quá trình bắt tay ba lần của TCP với Wireshark

Quá trình thiết lập kết nối TCP qua ba lần bắt tay

Bước 1: Máy khách gửi một gói tin với flag SYN = 1, ACK = 0 đến máy chủ để yêu cầu thiết lập kết nối.

Bước 2: Máy chủ nhận được yêu cầu và đồng ý kết nối, gửi lại một gói tin với flag SYN = 1, ACK = 1 để xác nhận khả năng truyền thông và yêu cầu máy khách gửi gói xác nhận.

Bước 3: Máy khách gửi gói tin với flag SYN = 0, ACK = 1 để xác nhận kết nối đã được thiết lập.

Bắt gói tin truy cập dịch vụ cụ thể với Wireshark

Bước 1: Khởi động Wireshark để bắt gói tin, mở trình duyệt và nhập địa chỉ.

Bước 2: Sử dụng lệnh ping để lấy địa chỉ IP.

Bước 3: Nhập điều kiện lọc để lấy danh sách gói tin cần phân tích: ip.addr == 183.232.231.172.

Trong hình ảnh, bạn có thể thấy Wireshark đã bắt được ba gói tin của quá trình bắt tay ba lần. Gói thứ tư mới là HTTPS, điều này chứng tỏ HTTPS sử dụng TCP để thiết lập kết nối.

Gói tin lần bắt tay đầu tiên

Máy khách gửi một gói TCP với flag SYN, sequence number là 0, đại diện cho yêu cầu thiết lập kết nối.

Gói tin lần bắt tay thứ hai

Máy chủ gửi gói xác nhận với flag SYN và ACK, tăng giá trị trường Acknowledgement Number lên 1 (từ 0+1=1).

Gói tin lần bắt tay thứ ba

Máy khách gửi gói xác nhận (ACK) với flag SYN = 0, ACK = 1 và tăng giá trị trường Acknowledgement Number lên 1.

Qua quá trình bắt tay ba lần, kết nối TCP đã được thiết lập và bắt đầu truyền dữ liệu.

Licensed under CC BY-NC-SA 4.0
Built with Hugo
Theme Stack thiết kế bởi Jimmy