CHƯƠNG II: TỔNG QUAN VỀ SNIFFER
2.3 MỘT SỐN PHƯƠNG PHÁP PHÁT HIỆN SNIFFER
ICMP (Internet Control Message Protocol) là một giao thức hoạt động trong bộ giao thức TCP, giao thức này dùng để kiểm tra kết nối trong hệ thống mạng thông qua hành động Ping.
Các máy tính trên mạng thường sử dụng giao thức TCP, khi gửi yêu cầu đến những máy tính này, chúng sẽ phản hồi lại kết quả. Mỗi máy bao gồm hai loại địa chỉ gồm địa chỉ IP và địa chỉ MAC. Khi dữ liệu đƣợc truyền trên mạng, một máy tính chỉ chấp nhận gói tin khi gói tin này chứa địa chỉ MAC hợp lệ. Máy tính chạy sniffer có thể đƣợc phát hiện bằng cách gởi đi những gói tin đến địa chỉ IP của máy đó trong mạng, nhƣng không thông qua card mạng.
Ví dụ, máy tính chạy sniffer có địa chỉ MAC là 00-32-08-A4-64-21 và có địa chỉ IP là 10.0.0.4. Người quản trị mạng có thể đổi địa chỉ MAC của máy trên trong router table thành 00-32-08-A4-64-24, sau đó Ping đến địa chỉ IP và MAC mới này. Theo nguyên tắc thì không có máy tính nào có thể trả lời, nhƣng vẫn có
TÌM HIỂU VÀ MINH HỌA SNIFFER 30 trả lời từ máy tính chạy chương trình sniffer, vì máy này có thể đã tắt tính năng MAC Address Filtering trên card mạng. Trên cơ sở đó, người quản trị mạng sẽ xác định đƣợc máy tính nào chạy sniffer trên hệ thống.
2.3.2 Phương pháp ARP
Phương pháp phát hiện Sniffer này tương tự như phương pháp dùng Ping.
Khác biệt chỗ chúng ta sẽ sử dụng gói tin ARP. Trong header của gói tin ARP chứa địa chỉ IP và địa chỉ MAC của cả máy tính gửi và máy tính nhận. Trong hệ thống mạng, nếu một gói tin ARP nonbroadcast đƣợc gửi đi, tất cả các máy tính trong mạng mà gói tin đi qua, kể cả máy có cài đặt sniffer, sẽ lưu lại thông tin này. Nếu ta ping tới địa chỉ broadcast, thì tất cả các máy trừ máy đã nhận gói tin nonbroadcast sẽ trả lời lại. Nếu không có sự trả lời nào từ một máy nào đó, thì máy đó có khả năng đã cài sniffer.
Ví dụ, giả sử có một gói tin ARP nonbroadcast từ gửi từ máy tính A đến máy tính B. Máy tính C chạy sniffer sẽ lưu lại gói tin ARP nonbroadcast này. Khi ping tới địa chỉ broadcast, cả máy B và C đều không trả lời. Suy ra, máy tính C có chạy các chương trình sniffer.
2.3.3 Phương pháp DNS
Một số chương trình sniffer có tính năng phân giải ngược các địa IP thành DNS mà chúng nhìn thấy. Để thực hiện phương pháp này, bạn cần theo dõi quá trình phân giải ngƣợc trên DNS Server, bằng cách ping đến những địa chỉ IP không tồn tại trên hệ thống, nếu có trả lời từ một máy tính nào đó thì rất có thể máy đó đã được cài đặt chương trình sniffer và nó đang cố gắng phân giải ngược địa chỉ IP không tồn tại này.
2.3.4 Phương pháp Source-Route
Để phát hiện sniffer, phương pháp Souce-Route sử dụng một kỹ thuật gọi là loose-source route. Loose-source route chứa thông tin đường đi (danh sách các địa chỉ IP) mà gói tin phải đi qua để đến đƣợc đích.
Ví dụ, ta có các máy tính với IP như hình, loose-source route chứa đường dẫn 192.168.0.12 192.168.0.15 192.168.0.17 192.168.0.23, với
TÌM HIỂU VÀ MINH HỌA SNIFFER 31 192.168.0.12 là địa chỉ nguồn, 192.168.0.23 là địa chỉ đích. Giả sử rằng để đến được máy D, gói tin từ máy A phải đi qua máy B và máy C. Nếu người quản trị vô hiệu hóa tính năng routing trên máy C mà gói tin vẫn đi sang máy D đƣợc thì rất có thể máy C đã cài đặt các chương trình sniffer. Một cách khác để phát hiện sniffer là sử dụng trường time to live(TTL), nếu TTL ở máy A là 25, khi gói tin đến máy B, TTL sẽ giảm xuống còn 24, tương tự cuối cùng khi đến được đích (máy D) TTL còn 22. Nếu máy D sniff các gói tin từ máy B thì khi đến D, TTL chỉ giảm đến 23. Điều này chứng tỏ máy D có cài đặt các chương trình sniffer.
2.3.5 Phương pháp giăng bẫy (Decoy)
Phương pháp này được sử dụng trong những phạm vi mạng rộng lớn hơn nhƣ Internet. Rất nhiều giao thức sử dụng các password không đƣợc mã hoá trên đường truyền. Đơn giản bạn chỉ cần giả lập những Client sử dụng dịch vụ mà Password không đƣợc mã hoá nhƣ : POP, FTP, Telnet,...Bạn có thể cấu hình những User không có quyền hạn, hay thậm chí những User không tồn tại. Khi sniff đƣợc những thông tin này, các Hacker sẽ tìm cách kiểm tra, sử dụng và khai thác chúng...
2.3.6 Minh họa sử dụng công cụ Ettercap để phát hiện Arp poisoning
192.168.1.20 Admin
192.168.1.10 Attacker
192.168.1.21 User
192.168.1.1
Hình 2.1. Mô hình minh họa
TÌM HIỂU VÀ MINH HỌA SNIFFER 32 Ở minh họa này máy Attacker sẽ sử dụng phần mềm Cain & Abel để thực hiện tấn công Arp Poisoning, cách tấn công tương tự như phần ở chương 2. Trên máy Admin sẽ cài thêm phần mềm Ettercap để giám sát hệ thống.
Các bước thực hiện:
Trên máy Attacker, kết quả sau khi thực hiện tấn công Arp Poisoning.
Hình 2.2. Kết quả sau khi tấn công
Sang máy Admin khởi động Ettercap, chọn Sniff Unified Sniffing, chọn eth0 (card mạng giao tiếp với hệ thống) OK.
Chọn tiếp Host Scan for host, để scan tất cả các host trong mạng, Start
Start sniffing, sang tab Plugin Manage the plugin.
Click đúp vào mục search_promisc để lọc ra những card mạng đang ở trạng thái promiscuous mode, ta đƣợc kết quả
Hình 2.3. Phát hiện Sniffer bằng Ettercap
TÌM HIỂU VÀ MINH HỌA SNIFFER 33 Ở dòng Most probably sniffing NICs liệt kê những địa chỉ IP có khả năng cao đang chạy các chương trình Sniffer( máy Attacker). Ở phần này Admin cũng có thể sử dụng thêm plugin arp_cop để theo dõi các hoạt động Arp đáng ngờ trên hệ thống.