Hướng dẫn Wireshark: Bắt và phân tích các giao thức HTTP, DNS, ARP, ICMP, TCP, FTP
Ghi chú insight YouTube này được tạo bằng LilysAI. Đăng ký miễn phí để nhận insight nhanh hơn 10× và sâu hơn từ video.
Q: Wireshark được sử dụng để làm gì?
Video này hướng dẫn cách sử dụng Wireshark để ghi lại và phân tích chi tiết các giao thức mạng phổ biến như HTTP, DNS, ARP, ICMP, TCP và FTP. Bạn sẽ học cách lọc và xem xét từng gói tin để hiểu rõ hơn về cách dữ liệu di chuyển trên mạng, một kỹ năng thiết yếu cho bất kỳ ai làm việc với mạng máy tính.
1. Giới thiệu về Wireshark và cách sử dụng cơ bản
1.1. Giao diện và cách bắt đầu ghi dữ liệu
- Mở Wireshark: Khởi động phần mềm Wireshark để bắt đầu.
- Chọn giao diện mạng: Giao diện chính hiển thị các kết nối mạng có sẵn. Người dùng chọn giao diện đang kết nối internet, ví dụ như Ethernet.
- Bắt đầu ghi gói tin: Nhấp đúp vào giao diện Ethernet hoặc sử dụng nút "Start capturing" để bắt đầu thu thập dữ liệu mạng.
- Quan sát gói tin: Các gói tin mạng sẽ bắt đầu xuất hiện trên màn hình ngay khi quá trình ghi bắt đầu.
1.2. Cấu trúc các cửa sổ trong Wireshark
- Cửa sổ đầu tiên (Packet List): Hiển thị thông tin tóm tắt về từng gói tin theo từng dòng, bao gồm số thứ tự gói tin, thời gian, địa chỉ nguồn và đích, giao thức, độ dài và một dòng mô tả ngắn.
- Cửa sổ thứ hai (Packet Details): Khi nhấp vào một gói tin ở cửa sổ đầu tiên, cửa sổ này sẽ hiển thị thông tin chi tiết hơn về gói tin đó, được phân loại theo các lớp giao thức (ví dụ: Ethernet, Internet Protocol, TCP).
- Cửa sổ thứ ba (Packet Bytes): Hiển thị dữ liệu thực tế của gói tin dưới dạng mã thập lục phân (hexadecimal) và mã ASCII. Khi chọn một trường thông tin ở cửa sổ thứ hai, trường tương ứng sẽ được tô sáng ở đây.
1.3. Lọc gói tin để phân tích
- Sự cần thiết của bộ lọc: Để phân tích một gói tin cụ thể trong số rất nhiều gói tin, cần sử dụng chức năng lọc.
- Cách áp dụng bộ lọc: Nhập tên giao thức hoặc địa chỉ IP vào ô bộ lọc ở trên cùng để chỉ hiển thị các gói tin liên quan.
- Ví dụ lọc ARP: Nhập "ARP" vào bộ lọc sẽ hiển thị tất cả các gói tin thuộc giao thức ARP.
- Kiểm tra địa chỉ IP của máy tính: Lệnh
ipconfigtrong Command Prompt được sử dụng để xem địa chỉ IP hiện tại của máy tính.
2. Phân tích các giao thức mạng phổ biến
2.1. Phân tích giao thức DNS
- Mục đích của DNS: Giao thức DNS (Domain Name System) giúp chuyển đổi tên miền (ví dụ: www.facebook.com) thành địa chỉ IP mà máy tính có thể hiểu được.
- Thực hiện truy vấn DNS:
- Sử dụng lệnh
ping www.facebook.comđể gửi yêu cầu đến máy chủ Facebook và xem địa chỉ IP của máy chủ đó. - Lệnh
ipconfig /allđược dùng để xác định máy chủ DNS cục bộ của mạng (ví dụ: 172.16.0.1) và máy chủ DNS dự phòng (ví dụ: 8.8.8.8).
- Sử dụng lệnh
- Lọc và xem gói tin DNS:
- Áp dụng bộ lọc bao gồm địa chỉ IP của máy tính và "DNS" để xem các gói tin trao đổi giữa máy tính và máy chủ DNS.
- Các gói tin này cho thấy máy tính đã gửi một truy vấn DNS để hỏi địa chỉ IP của www.facebook.com.
- Thông tin chi tiết về truy vấn bao gồm tên miền và số lượng nhãn (labels) trong tên miền.
- Phản hồi từ máy chủ DNS:
- Máy chủ DNS trả về một phản hồi DNS chứa địa chỉ IP của máy chủ Facebook (ví dụ: 163.70.1435).
- Địa chỉ IP này có thể được xác minh lại bằng lệnh
pinghoặc trong Command Prompt.
2.2. Phân tích giao thức ICMP
- ICMP và lệnh Ping: Giao thức ICMP (Internet Control Message Protocol) được sử dụng bởi lệnh
ping. - Quan sát gói tin ICMP:
- Khi lọc theo địa chỉ IP của máy chủ Facebook, các gói tin ICMP liên quan đến lệnh
pingsẽ hiển thị. - Các gói tin này tồn tại dưới dạng cặp yêu cầu (request) và phản hồi (reply).
- Trong gói tin yêu cầu, địa chỉ IP của máy tính là nguồn và IP của máy chủ Facebook là đích. Ngược lại trong gói tin phản hồi.
- Khi lọc theo địa chỉ IP của máy chủ Facebook, các gói tin ICMP liên quan đến lệnh
- Chi tiết gói tin ICMP:
- Phần chi tiết của giao thức ICMP hiển thị thông tin về các gói tin yêu cầu và phản hồi.
- Có thể xem địa chỉ MAC và IP của cả máy tính và máy chủ Facebook.
- Dữ liệu thực tế được truyền đi dưới dạng mã thập lục phân.
- Số lượng gói tin ICMP:
- Lệnh
pingmặc định gửi 4 yêu cầu và nhận 4 phản hồi, do đó có tổng cộng 8 gói tin ICMP (4 cặp yêu cầu-phản hồi) được ghi lại. - Dữ liệu trong gói tin
pingthường là 32 byte.
- Lệnh
2.3. Phân tích giao thức HTTP
- Bắt đầu ghi gói tin HTTP: Áp dụng bộ lọc "HTTP" và bắt đầu ghi lại lưu lượng mạng.
- Truy cập trang web HTTP: Mở một trang web sử dụng giao thức HTTP trong trình duyệt.
- Quan sát gói tin HTTP:
- Wireshark sẽ hiển thị các gói tin HTTP liên quan đến việc truy cập trang web.
- HTTP dựa vào DNS để lấy địa chỉ IP của trang web, do đó các gói tin DNS cũng có thể xuất hiện khi lọc HTTP.
- Yêu cầu và phản hồi HTTP:
- Một gói tin là yêu cầu HTTP để mở trang chủ của trang web.
- Gói tin phản hồi chứa toàn bộ nội dung HTML của trang web.
- Thông tin này có thể được kiểm tra bằng cách nhấp chuột phải vào trang web và chọn "Inspect" (Kiểm tra) trong trình duyệt.
2.4. Phân tích giao thức ARP
- Mục đích của ARP: Giao thức ARP (Address Resolution Protocol) dùng để tìm địa chỉ MAC của một thiết bị khi biết địa chỉ IP của nó trong mạng cục bộ.
- Lọc và xem gói tin ARP: Nhập "ARP" vào bộ lọc để hiển thị các gói tin ARP.
- Cấu trúc gói tin ARP Request:
- Gói tin ARP Request là một thông điệp quảng bá (broadcast).
- Nó chứa các thông tin như loại phần cứng, loại giao thức, kích thước phần cứng, kích thước giao thức, mã chức năng (opcode) cho yêu cầu, địa chỉ MAC và IP của người gửi, và địa chỉ MAC và IP của người nhận.
- Vì là thông điệp quảng bá, địa chỉ MAC đích thường được hiển thị là tất cả các số 0.
2.5. Phân tích giao thức FTP và TCP
- Thiết lập máy chủ FTP:
- Sử dụng một ứng dụng FTP server (ví dụ: Bison FTP) để cấu hình máy chủ.
- Cấu hình máy chủ lắng nghe trên cổng 21 (cho kết nối điều khiển) và cổng 20 (cho kết nối dữ liệu).
- Thiết lập các tùy chọn bảo mật, quyền truy cập và giới hạn người dùng đồng thời.
- Tạo người dùng mới (ví dụ: "FTP user") và đặt mật khẩu (ví dụ: "12345").
- Bật máy chủ FTP.
- Kết nối từ máy khách FTP:
- Sử dụng Command Prompt trên máy khách để kết nối đến máy chủ FTP bằng địa chỉ IP của máy chủ (ví dụ: 127.16.7.84).
- Nhập tên người dùng ("FTP user") và mật khẩu ("12345") khi được yêu cầu.
- Xem nhật ký máy chủ FTP: Nhật ký máy chủ hiển thị các hoạt động của máy khách, bao gồm tên người dùng và mật khẩu đã nhập.
- Phân tích gói tin TCP và FTP trong Wireshark:
- Áp dụng bộ lọc "TCP" và địa chỉ IP của máy khách để xem các gói tin liên quan.
- Các gói tin này bao gồm cả giao thức TCP và FTP.
- Quá trình bắt tay TCP (TCP Handshake):
- Gói tin đầu tiên cho thấy máy khách khởi tạo kết nối từ một cổng ngẫu nhiên (ví dụ: 50664) đến cổng 21 của máy chủ.
- Gói tin SYN (Synchronize) được gửi từ máy khách.
- Máy chủ phản hồi bằng gói tin SYN-ACK (Synchronize-Acknowledge).
- Máy khách gửi gói tin ACK (Acknowledge) để xác nhận.
- Quá trình này thiết lập một kết nối đáng tin cậy giữa máy khách và máy chủ bằng giao thức TCP.
- Phân tích chi tiết gói tin FTP:
- Sau khi kết nối TCP được thiết lập, các gói tin FTP bắt đầu được trao đổi.
- Gói tin đầu tiên có thể hiển thị mã phản hồi 220 từ máy chủ, cho biết máy chủ đã sẵn sàng.
- Các gói tin tiếp theo hiển thị các lệnh và phản hồi của giao thức FTP, bao gồm việc gửi tên người dùng và mật khẩu.
- Tất cả thông tin trao đổi giữa máy khách và máy chủ FTP, bao gồm tên người dùng và mật khẩu, đều được ghi lại trong các gói tin Wireshark và có thể xác minh với nhật ký máy chủ.
- Mối liên hệ giữa TCP và FTP: Giao thức FTP sử dụng các cổng TCP để truyền dữ liệu, do đó việc phân tích gói tin FTP cũng bao gồm việc phân tích các gói tin TCP liên quan.
3. Kết luận về Wireshark
- Wireshark là công cụ phân tích mạng quan trọng: Wireshark là một công cụ phân tích giao thức mạng (network protocol analyzer) thiết yếu.
- Khả năng của Wireshark: Nó cho phép ghi lại và phân tích chi tiết nhiều loại giao thức mạng khác nhau.
- Các giao thức đã phân tích: Video đã hướng dẫn cách sử dụng Wireshark để phân tích các giao thức như HTTP, DNS, ARP, ICMP, FTP và TCP.
Hiểu lượng tài liệu khổng lồ như một thiên tài — cùng LilysAI
Hơn 1.000.000 người tìm kiếm tri thức đang dùng Lilys AI.
