Tóm tắt
Ở chương này chúng ta sẽ tìm hiểu về nghe trộm. Nghe trộm giúp chúng ta quan sát tất cả các loại giao thông mạng, dù mạng được bảo vệ hay không. Những thông tin nghe trộm có thể hữu ích cho tấn công và tạo trở ngại cho nạn nhân.
Bên cạnh đó, chúng ta sẽ tìm hiểu nhiều loại tấn công như Media Access Control (MAC), Dynamic Host Configuration Protocol (DHCP), Address Resolution Protocol (ARP) Poisoning, MAC Spoofing, DNS Poisoning.
Sau khi nghe trộm xong, bạn có thể tiếp tục thực hiện các loại tấn công như Session Hijacking, DDoS Attacks, MITM attack, … Tuy nhiên hãy nhớ rằng công cụ nghe trộm không phải công cụ hacking. Chúng là những công cụ chẩn đoán, thường dùng để quan sát mạng và những vấn đề xử lí sự cố.
Khái niệm
Sniffing (nghe trộm) là quá trình sử dụng công cụ để quét và quan sát những gói tin truyền trong hệ thống. Quy trình được thực hiện bằng port hỗn tạp. Kích hoạt trạng thái hỗn tạp sẽ giúp thu thập mọi loại giao thông. Một khi đã thu thập được gói tin, kẻ tấn công sẽ dễ dàng thăm dò nội dung bên trong.
Kẻ tấn công có thể thu thập được các loại gói tin như Syslog, DNS, Web, email và các loại dữ liệu khác truyền qua hệ thống mạng. Thu thập gói tin giúp kẻ tấn công lấy được các thông tin như dữ liệu, tên người dùng, mật khẩu từ những giao thức như HTTP, POP, IMAP, SMTP, NMTP, FTP, Telnet, Rlogin. Những người ở trong mạng LAN hoặc kết nối với cùng một mạng có thể nghe trộm gói tin.
Cách hoạt động
Đầu tiên, kẻ tấn công sẽ kết nối với một hệ thống mạng để nghe trộm. Kẻ tấn công sử dụng công cụ sniffer để kích hoạt trạng thái hỗn tạp trong thẻ giao diện hệ thống (NIC) của hệ thống nạn nhân, từ đó thu thập gói tin.
Trong trạng thái hỗn tạp, NIC phản hồi với mọi gói tin nó nhận được. Kẻ tấn công được kết nối trong trạng thái hỗn tạp và chấp nhận gói tin dù gói tin đó không được gửi cho hắn.
Sau khi thu thập, kẻ tấn công có thể giải hóa gói tin để trích rút thông tin. Nguyên tắc cơ bản đằng sau kỹ thuật này là:
- Kết nối với một hệ thống mục tiêu có switch và giao thông multicast truyền trên mọi cổng
- Switch chuyển tiếp gói tin unicast đến port riêng kết nối với host thật
- Switch duy trì bảng MAC để xác nhận ai đang kết nối với port nào
Trong trường hợp này, kẻ tấn công thay đổi thiết lập switch bằng nhiều kĩ thuật khác nhau như Port Mirroring hoặc Switched Port Analyzer (SPAN). Tất cả các gói tin truyền qua một port nhất định sẽ được sao chép trên port đó (kẻ tấn công kết nối với port này trong trạng thái hỗn tạp). Nếu bạn kết nối với hub, nó sẽ truyền gói tin đến tất cả các port.
Các loại nghe trộm
Nghe trộm thụ động
Đây là loại nghe trộm không cần gửi thêm gói tin hoặc can thiệp vào các thiết bị như hub để nhận gói tin. Như chúng ta đã biết, hub truyền gói tin đến port của nó. Kẻ tấn công có thể lợi dụng điểm này để dễ dàng quan sát giao thông truyền qua mạng.
Nghe trộm chủ động
Đây là loại nghe trộm mà kẻ tấn công cần gửi thêm gói tin đến thiết bị đã kết nối như switch để nhận gói tin. Như đã nói, switch chỉ truyền gói tin unicast đến một port nhất định. Kẻ tấn công sử dụng một số kĩ thuật như MAC Flooding, DHCP Attacks, DNS poisoning, Switch Port Stealing, ARP Poisoning, Spoofing để quan sát giao thông truyền qua switch.
Công cụ phân tích giao thức
Máy phân tích giao thức hay phần mềm đều dùng để phân tích gói tin và tín hiệu truyền qua kênh truyền dẫn. Máy phân tích giao thức là những thiết bị thu thập gói tin mà không can thiệp vào giao thông mạng. Một ưu điểm lớn của thiết bị này là sự lưu động, linh hoạt, và lưu tốc. Kẻ tấn công có thể sử dụng để:
- Quan sát network usage
- Nhận diện giao thông từ phần mềm hacking
- Giải hóa gói tin
- Trích rút thông tin
- Xác định kích cỡ gói tin
KEYSIGHT Technologies cung cấp khá nhiều sản phẩm. Trên thị trường cũng có nhiều máy phân tích giao thức phần cứng khác như RADCOM and Fluke.
Port SPAN
Một người dùng phàn nàn về tình trạng mạng, tuy nhiên bạn thấy không có ai trong tòa nhà gặp vấn đề như vậy. Bạn muốn chạy một máy phân tích hệ thống như Wireshark trên port để quan sát giao thông ra vào mạng.
SPAN (Switch Port Analyser – Máy phân tích switch port) có thể giúp bạn trong việc này. SPAN cho phép bạn thu thập giao thông mạng từ một port đến một port khác trên cùng switch.
SPAN sao chép tất cả các đơn vị dữ liệu giao thức quy định cho một port và truyền đến port đích. Một số loại giao thông không được chuyển tiếp như BDPUs, CDP, DTP, VTP, STP. Số phiên có thể thiết lập trên switch phụ thuộc vào mô hình. Ví dụ, các switch Cisco 3560 and 3750 chỉ hỗ trợ nhiều nhất 2 sessions SPAN cùng một lúc, trong khi dòng switch Cisco 6500 hỗ trợ lên đến 16 sessions.
SPAN có thể thiết lập để thu thập giao thông vào, ra hoặc cả hai. Bạn có thể thiết lập nguồn như một port xác định, một port đơn trong kênh Ether hoặc một VLAN. SPAN không thể thiết lập với một port nguồn của MEC (Multi chassis Ether channel). Bạn cũng không thể thiết lập nguồn của một port đơn hoặc một VLAN. Khi thiết lập nhiều nguồn cho một phiên, bạn chỉ cần xác định rõ giao diện của nguồn.
Một điều cần ghi nhớ khi thiết lập SPAN là nếu bạn sử dụng port nguồn có băng thông lớn hơn port đích, trong trường hợp link bị nghẽn, giao thông sẽ dừng lại.
Thiết lập Local SPAN đơn giản
Xem xét hình vẽ dưới đây trong đó một Router được kết nối với switch qua Switch’s Fast Ethernet port 0/1, port này được thiết lập là port SPAN nguồn. Giao thông sao chép từ FE0/1 sẽ phản ánh FE0/24 nơi mà workstation của chúng ta đang đợi để thu thập giao thông.
Sau khi chúng ta chạy máy phân tích mạng, bước đầu tiên là thiết lập Fast Ethernet 0/1 thành port SPAN nguồn và Fast Ethernet 0/24 thành port SPAN đích. Sau khi thiết lập hai giao diện, LED của FE0/24 bắt đầu phát nhanh trong đồng bộ hóa với LED của FE0/1 – một hành vi không lường trước nếu xem xét tình huống tất cả gói tin FE0/1 được sao chép thành FE0/24.
Wiretapping
Wiretapping (nghe lén) là quá trình thu thập thông tin bằng cách mắc ống nghe vào dây dẫn như dây điện thoại hay internet. Wiretapping hầu hết được thực hiện bởi bên thứ ba để nghe lén cuộc hội thoại. Legal Wiretapping được gọi là nghe lén hợp pháp, thường được chính phủ hay các cơ quan an ninh thực hiện.
Wiretapping chủ động
Quá trình quan sát, thu thập thông tin bằng cách nghe trộm qua dây dẫn và chỉnh sửa đoạn hội thoại.
Wiretapping thụ động
Quá trình quan sát và thu thập thông tin mà không chỉnh sửa hội thoại.
Wiretapping hợp pháp
Đây là quá trình wiretapping với đầy đủ giấy phép, cho phép các cơ quan thi hành được nghe trộm qua dây dẫn các đoạn hội thoại của user. Tổ chức chuẩn hóa viễn thông đã tiêu chuẩn hóa cổng Legal Wiretapping để phục vụ cho quá trình nghe lén của các cơ quan.
Công cụ chuẩn bị tích hợp, đồng bộ hóa và quản lý tài nguyên (PRISM)
Planning Tool for Resource Integration, Synchronization and Management (PRISM) là công cụ thiết kế chuyên dụng để thu thập thông tin và quá trình truyền qua American servers. PRISM được tạo ra bởi Ban vận hành nguồn đặc biệt (SSO) của Cơ quan an ninh quốc gia (NSA). Mục đích chính của PRISM là nhận diện và quan sát những hội thoại đáng ngờ của mục tiêu. NSA nghe trộm qua dây dẫn giao thông mạng nước Mỹ, cũng như dữ liệu lưu trữ ở các server trong nước.
Công cụ nghe trộm
Wireshark
Wireshark là máy phân tích giao thức mạng phổ biến nhất, được sử dụng rộng rãi trong các tổ chức chính phủ, phi chính phủ, thương mại, giáo dục. Nó là công cụ miễn phí dành cho Windows, Linux, MAC, BSD, Solaris và nhiều nền tảng khác. Wireshark cũng phát hành phiên bản cuối gọi là “TShark.”
Biện pháp đối phó
Ngăn chặn nghe trộm
- Sử dụng HTTPS thay vì HTTP
- Sử dụng SFTP thay vì FTP
- Sử dụng Switch thay cho hub
- Thiết lập bảo mật port
- Thiết lập DHCP Snooping
- Thiết lập thăm dò APR động
- Thiết lập bảo vệ nguồn
- Sử dụng công cụ phát hiện nghe trộm để phát hiện NIC trong chế độ hỗn tạp
- Sử dụng những giao thức giải hóa mạnh
Kĩ thuật phát hiện nghe trộm
Phương pháp ping
Kĩ thuật ping được sử dụng để phát hiện phần mềm nghe trộm. Một yêu cầu ping sẽ được gửi đến địa chỉ IP đáng ngờ cùng với một địa chỉ MAC giả. Nếu NIC không hoạt động trong chế độ hỗn tạp, nó sẽ không phản hồi lại gói tin. Nếu phần mềm nghe trộm đang chạy thì nó sẽ phản hồi lại gói tin.
Phương pháp APR
Phần mềm nghe trộm sẽ bị phát hiện bằng bộ nhớ đệm APR. Bằng cách gửi một gói tin APR không truyền tin đến kẻ đáng ngờ, địa chỉ MAC sẽ được ghi vào bộ nhớ đệm nếu NIC đang chạy trong chế độ hỗn tạp.
Sau đó ping với địa chỉ MAC giả. Nếu máy đang trong chế độ hỗn tạp, nó chỉ có thể phản hồi gói tin nếu nó nhớ địa chỉ MAC thật từ gói tin APR không truyền tin đã nghe trộm.
Công cụ phát hiện chế độ hỗn tạp
Các công cụ như PromqryUI hay Nmap được dùng để phát hiện card giao diện hệ thống chạy trong chế độ hỗn tạp. Đây là những phần mềm ứng dụng GUI based.