Tin tức, hướng dẫn và chia sẻ về công nghệ

Sử dụng Wireshark để phân tích gói tin trong hệ thống mạng

Well Known Network Protocol Analyzer: WireShark | CYBERPUNK

Ở bài trước, mình đã hướng dẫn cách sử dụng Wireshark cơ bản để capture các gói tin, lọc ra các gói tin cần xem và làm việc với file pcap. Ở bài này mình sẽ làm các bài tập để thực hành cách sử dụng Wireshark để phân tích các gói tin bắt được với các yêu cầu cụ thể.

1. Chuẩn bị

Chỉ cần có Wireshark chạy trên một hệ điều hành bất kỳ. Nếu chưa có Wireshark trên máy của mình, bạn có thể tải về Wireshark phiên bản mới nhất tại đây.

Tải về file FTPlogin.pcapng, sau đó mở file FTPlogin.pcapng bằng Wireshark.

2. Bắt đầu

Giao diện khi mở 1 file chứa các gói tin bắt được trước đó hoặc khi bắt gói tin trực tiếp có 3 phần như sau :

  1. Packet List : Ở đây hiển thị các gói tin bắt được trên 1 card mạng, ở phần này mỗi gói tin là 1 dòng. Các gói tin được đánh số theo thứ tự lớn dần từ trên xuống dưới.
  1. Packet Details : Ở phần này mục đầu tiên cho biết dung lượng gói tin, mục thứ 2 cho biết các địa chỉ MAC, mục thứ 3 cho biết địa chỉ IP nguồn và đích, mục thứ 4 cho biết giao thức TCP port hoặc UDP port.
  1. Packet Bytes : Hiển thị dữ liệu dưới dạng hệ cơ số 16 và ASCII.

3. Tìm mật khẩu FTP

Tiếp tục thao tác với file FTPlogin.pcapng đã mở ở trên. Tại filter, nhập vào ftp để lọc ra các gói tin sử dụng giao thức ftp

Khi lọc ra các gói tin sử dụng ftp, ta có thể dễ dàng thấy được tài khoản và mật khẩu FTP.

4. Tìm mật khẩu HTTP

Tải về file httpLogin.pcapng, sau đó mở file httpLogin.pcapng bằng wireshark và làm như sau:

Sử dụng filter để lọc ra các gói tin sử dụng giao thức http

Sau đó kích vào gói tin số 49 như hình sau :

sau khi kích vào gói tin, hãy nhìn xuống mục Packet Details và kích vào dòng số 6 đó chính là phần form điền tài khoản và mật khẩu trên web.

Sau khi kích vào form, toàn bộ thông tin về tài khoản và mật khẩu đã hiện ra. Ta có thể dễ dàng thấy rằng user đăng nhập là Isaac và mật khẩu đăng nhập là Flapper

nhưng đó chỉ là các tài khoản và mật khẩu người dùng đã nhập vào chưa chắc đã là tài khoản dùng để đăng nhập. Ta xét tiếp các gói tin ngay sau gói tin đó, gói tin số 51 chứa status code là 200. Kích vào Line-based để xem chi tiết.

Sau khi kích vào Line-based ta thấy rằng đây là thông báo đăng nhập không chính xác. Như vậy là người dùng đã nhập sai tài khoản mật khẩu. Tiếp theo ta kiểm tra các gói tin tiếp theo để tìm kiếm gói tin chứa tài khoản và mật khẩu người dùng nhập chính xác.

using11.png

Tiếp theo ta thấy gói tin số 66 cũng là gói tin chứa thông tin đăng nhập khi người dùng nhập vào form đăng nhập

Ta xem gói tin sau đó là gói tin số 68 cho biết đây cũng là thông tin đăng nhập không chính xác.

Chuyển sang gói tin số 84, ta sẽ thấy thông tin đăng nhập người dùng nhập vào như sau:

Kiểm tra gói tin chứa mã trạng thái, gói tin số 86 thì ta thấy rằng thông tin đăng nhập đã được chấp thuận. Tức là người dùng sau nhiều lần thử đã đăng nhập thành công bằng user Isaac và password Slapper.

Tìm mật khẩu HTTP Basic Authentication

HTTP Basic Authen sử dụng Base64 để mã hóa mật khẩu trước khi truyền đi. Điều này không khác gì nhiều so với truyền đi 1 đoạn text thông thường vì wireshark sẽ tự động giải mã nó.

Tải xuống file BasicLogin.pcap để thực hành phần này.

Mở file BasicLogin.pcapng và sử dụng filter để lọc ra các gói tin sử dụng giao thức HTTP, sẽ được kết quả như dưới đây

Từ các gói tin trên, ta thấy rằng gói tin số 17 có mã là 401 tức là yêu cầu phải đăng nhập trước khi truy cập web.

Để tìm mật khẩu mà người dùng sử dụng để đăng nhập vào, ta xem gói tin tiếp theo, gói tin số 37 :

Tiếp theo kích vào giao thức HTTP

Ta thấy rằng có 2 trường là GET và Authorization, ta muốn xem mật khẩu đăng nhập HTTP Basic Authentication của WALDO nên ta sẽ kích vào Authorization.

Sau khi kích vào Authorization, ta đã thấy được mật khẩu của user WALDO là VERYSECURE

Kết luận

Như vậy mình đã hướng dẫn cách sử dụng wireshark để phân tích các gói tin dưới dạng các bài tập đi tìm mật khẩu của FTP và HTTP. Trên đây chỉ là 1 vài cách cơ bản về cách sử dụng Wireshark để kiểm tra, phân tích dữ liệu và các gói tin trong hệ thống mạng, còn rất nhiều thứ ta có thể làm với wireshark như kiểm tra các vấn đề bảo mật, hoặc có thể khai thác nhiều thông tin hơn nữa trên các gói tin bắt được.

Chúc các bạn thành công !

Tài liệu tham khảo :

https://bowneconsultingcontent.com/pub/EH/proj/H420.htm

1 Comment

  1. Nguyễn Văn Long

    Theo mình để bắt gói tin đọc tài khoản bạn có thể dùng http.request.method == POST hoặc GET thay vì (http như trong bài)

Leave a Reply

Your email address will not be published. Required fields are marked *