Man in the middle attack là gì

      200

Man-in-the-middle Attack (MITM) là gì?

Tấn công Man in the Middle (Tấn công xen giữa) là một thuật ngữ chung để chỉ những cuộc tấn công mà hacker sẽ đứng ở giữa người dùng và ứng dụng trong quá trình giao tiếp, nhằm nghe trộm hoặc mạo danh một trong các bên.

Bạn đang xem: Man in the middle attack là gì

Mục tiêu của tấn công Man in the Middle là đánh cắp thông tin cá nhân. Chẳng hạn như thông tin đăng nhập hay số thẻ tín dụng. Các nạn nhân của tấn công Man in the middle thường là người dùng các ứng dụng tài chính, doanh nghiệp SaaS, trang web thương mại điện tử…Nói chung là những trang web yêu cầu có thông tin đăng nhập.

Các thông tin thu thập được sau khi tấn công có thể dùng để đánh cắp danh tính, chuyển tiền hay thay đổi mật khẩu bất hợp pháp.

Bên cạnh đó, các hacker có thể sử dụng kiểu tấn công MITM để thuận lợi thực hiện các cuộc tấn công liên tục nâng cao (APT) khác.

Tiến trình của Man in the middle attack

Một cuộc tấn công Man in the middle điển hình sẽ bao gồm 2 giai đoạn: Đánh chặn và giải mã.

Đánh chặn

Bước đầu tiên là chặn lưu lượng truy cập của người dùng qua mạng của hacker trước khi nó đến được đích dự kiến. Cách phổ biến (và đơn giản nhất) là thực hiện tấn công thụ động. Trong đó, hacker tạo ra các điểm truy cập WiFi công khai miễn phí, nhưng độc hại. Các WiFi này thường không được đặt mật khẩu. Sau khi người dùng kết nối, hacker sẽ có thể xen giữa vào bất kỳ cuộc trao đổi dữ liệu online nào của người dùng.

Ngoài ra, các hacker có thể áp dụng cách đánh chặn chủ động như:

Giả mạo ARP (ARP Spoofing): là quá trình liên kết địa chỉ MAC của kẻ tấn công với địa chỉ IP của người dùng hợp pháp trên mạng cục bộ. Cụ thể, các hacker sẽ sử dụng các thông báo ARP giả mạo. Khi đó, dữ liệu do người dùng gửi đến địa chỉ IP của server sẽ được truyền đến hacker.

Giải mã

Sau khi bị chặn, mọi lưu lượng SSL hai chiều đều cần được giải mã, quá trình này sẽ không thông báo đến người dùng hay ứng dụng. Sau đây là một số phương pháp giải mã phổ biến:

HTTP Spoofing: Hacker sẽ gửi một certificate giả mạo đến trình duyệt của người dùng khi họ thực hiện yêu cầu kết nối tới trang web. Certificate này sẽ có một vân tay kỹ thuật số, được liên kết với ứng dụng bị xâm nhập. Và trình duyệt sẽ xác minh nó dựa theo danh sách các trang web được tin cậy hiện có. Sau đó, hacker có thể truy cập vào bất kỳ dữ liệu nào do người dùng nhập trước khi nó được chuyển đến ứng dụng.SSL Hijacking: Xảy ra khi hacker chuyển các key xác thực giả mạo cho người dùng lẫn ứng dụng trong quá trình giao tiếp. Khi đó, một kết nối tưởng chừng như an toàn sẽ được tạo ra. Nhưng trong kết nối này, Man in the middle mới chính là đối tượng nằm toàn quyền kiểm soát session.

Xem thêm: Vì Sao Mạng Lưới Sông Ngòi Nước Ta Dày Đặc Điểm Nêu Trên, Vì Sao Sông Ngòi Nước Ta Có Đặc Điểm Nêu Trên

SSL Stripping: Phương pháp này sẽ hạ cấp một kết nối HTTPS xuống thành HTTP, bằng cách chặn xác thực TLS được gửi từ ứng dụng đến người dùng. Hacker gửi một phiên bản không được mã hóa của web cho người dùng, trong khi vẫn duy trì session được bảo mật với ứng dụng. Trong khi đí, hacker vẫn có thể kiểm soát được toàn bộ session.

Ví dụ về Man in the middle attack

Giả sử ta có một cuộc đối thoại giữa Alice và Bob. Trong khi đó, Mallory lại muốn chặn cuộc đối thoại để nghe trộm và có thể gửi tin nhắn sai cho Bob.

Trước tiên, Alice hỏi Bob về public key của anh ta. Nếu Bob gửi cho Alice public key của mình, nhưng Mallory lại có thể chặn nó, thì một cuộc tấn công MITM có thể được thực hiện. Mallory sẽ gửi cho Alice một tin nhắn giả mạo, mạo nhận rằng nó là của Bob. Nhưng thật ra đó lại chính là public key của Mallory.

Alice lại tin rằng đây chính là public key của Bob, sẽ mã hóa tin nhắn của cô ấy bằng key của Mallory. Sau đó gửi tin nhắn được mã hóa về Bob. Một lần nữa, Mallory sẽ chặn lại, giải mã tin nhắn bằng private key của mình (có thể thay đổi tin nhắn nếu muốn), rồi mã hóa lại bằng public key mà Bob đã gửi chi Alice. Khi Bob nhận được thông tin mới được mã hóa, anh ta sẽ nghĩ rằng nó đến từ Alice.

*
*
*
*

Việc ngăn chặn tấn công MITM yêu cầu một số bước nhất định từ người dùng. Cùng với đó là kết hợp các phương thức mã hóa và xác minh khác cho ứng dụng.

Đối với người dùng:

Tránh các kết nối WiFi không được bảo vệ bằng password.Chú ý đến các thông báo của trình duyệt về trang web không an toàn.Đăng xuất khỏi các ứng dụng không không sử dụng nữa.Không sử dụng mạng công cộng (ở quán cafe, cửa hàng, khách sạn…) khi thực hiện các giao dịch nhạy cảm.

Đối với các nhà điều hành web, hãy sử dụng các giao thức giao tiếp an toàn, chẳng hạn như TLS hay HTTPS. Việc này sẽ giúp giảm thiểu tấn công giả mạo bằng cách mã hóa và xác thực dữ liệu. Từ đó giúp hạn chế việc đánh chặn lưu lượng truy cập trang web, chặn việc giải mã dữ liệu nhạy cảm như xác thực token.

Khi sử dụng SSL/TLS cho ứng dụng, tốt nhất là hãy bảo mật mọi trang trong web chứ không chỉ những trang yêu cầu đăng nhập. Việc này sẽ giúp giảm nguy cơ kẻ tấn công lấy cắp session cookies từ người dùng truy cập vào những trang không an toàn của web.