3 LỜI NÓI ĐẦU Với sự phát triển ngày càng nhanh chóng của Internet, lượng người sử dụng wifi ngày càng nhiều nên nhu cầu bảo vệ thông tin trong các hệ thống và ứng dụng điện tử khỏi các
Trang 11
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
- oOo -
HỌC PHẦN: AN TOÀN MẠNG Bài báo cáo: TÌM HIỂU WIFIPHISHER
Trang 2
MỤC LỤC
Lời mở đầu 3
Chương 1: Khái quát về Wifiphisher……….4
1 Tổng quan Wifiphisher………4
2 Wifiphisher là gì? ………6
3 Cách thức hoạt động ………6
Chương 2:Tình huống và kịch bản lừa đảo………9
1 Các tình huống lừa đảo ………9
2 Tạo một kịch bản lừa đảo tuỳ chỉnh ……… ………10
Chương 3: Cài đặt và sử dụng Wifiphisher 14
1 Cách cài đặt………14
2 Ví dụ về sử dụng Wifiphisher………18
3 Ảnh minh hoạ ………19
Chương 4 Demo 24
Kết luận 29
Tài liệu tham khảo 30
Trang 33
LỜI NÓI ĐẦU
Với sự phát triển ngày càng nhanh chóng của Internet, lượng người sử dụng wifi ngày càng nhiều nên nhu cầu bảo vệ thông tin trong các hệ thống và ứng dụng điện tử khỏi các tấn công xâm nhập qua hệ thống mạng wifi ngày càng được quan tâm và có
ý nghĩa hết sức quan trọng.Vì thế việc nghiên cứu về các công cụ bảo mật chống lại việc tấn công lừa đảo vào các hệ thông wifi để đánh cắp mật khẩu hoặc các thông tin đăng nhập khác là rất cần thiết
Trong thời đại công nghệ số hiện nay việc kết nối truy cập internet là nhu cầu thiết yếu của người dùng để giải quyết công việc, liên lạc, trao đổi thông tin Hack mật khẩu wifi đã trở nên phổ biến khi mọi người luôn tìm kiếm internet miễn phí Tuy nhiên không phải ở đâu wifi cũng miễn phí để sử dụng, do sự tiến bộ của công nghệ việc hack wifi và bẻ khóa mật khẩu đã trở thành một nhiệm vụ khó khăn
Wifiphisher là một công cụ bảo mật gắn kết các kết nối tự động đối với các mạng wifi để có được các mật khẩu bảo mật mà mọi người sử dụng để truy cập mạng wifi của họ Về cơ bản Wifiphisher là một công cụ kỹ thuật công cộng Wifiphisher trình bày một cách rất dễ dàng để có được mật khẩu bí mật được bảo vệ bởi
WPA/WPA2
Trang 4CHƯƠNG 1: KHÁI QUÁT VỀ WIFIPHISHER
1.Tổng quan WifiphisherNhà nghiên cứu người Hy Lạp George Chatzisofroniou đã và đang phát triển một công cụ social engineering đánh cắp tài khoản Wifi của người dùng Công cụ có
Trang 5WifiPhisher sử dụng kịch bản tấn công "Evil Twin" Cũng giống như Evil Twin, đầu tiên WifiPhisher tạo ra điểm truy cập (AP) không dây giả mạo là điểm truy cập Wifi chính thống Sau đó, kẻ tấn công sẽ thực hiện tấn công DoS vào điểm truy cập Wifi chính thống, hoặc gây nhiễu sóng vô tuyến xung quanh khiến kết nối mạng không dây bị ngắt và nhắc nhở người dùng dò tìm mạng Wifi khác có thể truy cập được
Sau khi mạng bị ngắt kết nối từ điểm truy cập Wifi chính thống, WifiPhisher tự động kết nối máy tính và thiết bị offline với mạng của hacker, cho phép hacker chặn tất cả đường truyền đến thiết bị đó
Kỹ thuật tấn công này còn được biết đến với những cái tên như AP Phishing, Wifi Phishing, Hotspotter hoặc Honeypot AP Những kiểu tấn công này tận dụng các điểm truy cập giả mạo cùng các trang đăng nhập giả để đánh cắp thông tin tài khoản Wifi của người dùng, mã thẻ tín dụng, thực hiện các cuộc tấn công MiTM (man-in-the-middle) hoặc gây ảnh hưởng cho các máy chủ không dây
Ngay sau khi nạn nhân truy vấn bất kỳ trang web nào trên mạng, WifiPhisher sẽ “dẫn” nạn nhân đến trang web có cấu hình router giả mạo y như thật Trang này yêu cầu nạn nhân xác nhận mật khẩu WPA với lý do nâng cấp firmware của router
Do vậy, công cụ có thể bị tin tặc và tội phạm mạng tận dụng để khởi phát các cuộc tấn công đánh cắp tài khoản và MiTM nhắm vào người dùng đang sử dụng mạng
Như vậy thực tế phương pháp này đơn giản gồm
- Gây nhiễu mạng wifi của đối tượng
- Tạo một mạng Wifi giả giống hệt với mạng Wifi của đối tượng (Evil Twin )
- Tạo một trang web thông báo đối tượng phải cập nhật firmware và yêu
Trang 6WPA/WPA2
3 Cách thức hoạt động
Wifiphisher sử dụng kỹ thuật xã hội để lấy mật khẩu cho WiFi và các trang web, phương pháp này được gọi là Evil Twin Attack Bạn không cần một phần cứng mạnh mẽ trong một thời gian dài cho mật khẩu bruteforce
Wifiphisher tạo ra một AP nhân đôi sau đó khử xác thực hoặc DoS người dùng
từ AP thực của họ Người dùng wifi đăng nhập để tìm wifi cần xác thực lại và đó là cách Wifiphisher hoạt động tốt Wifiphisher chuyển hướng người dùng wifi sang AP khác cùng SSID
Sau khi đạt được vị trí trung tâm bằng cách sử dụng cuộc tấn công Evil Twin, wifiphisher sẽ chuyển hướng tất cả các yêu cầu HTTP đến một trang web trông giống nhau do kẻ tấn công kiểm soát
Từ quan điểm của nạn nhân, cuộc tấn công được sử dụng trong ba giai đoạn:
Nạn nhân đang được hủy xác thực từ điểm truy cập của cô ấy Wifiphisher liên tục làm nhiễu tất cả các thiết bị wifi của điểm truy cập mục tiêu trong phạm vi phủ sóng bằng cách giả mạo các gói “Deauthenticate” hoặc “Disassociate” để phá vỡ các liên kết hiện có
Nạn nhân tham gia một điểm truy cập giả mạo Wifiphisher đánh hơi khu vực và sao chép cài đặt của điểm truy cập mục tiêu Sau đó, nó tạo ra một điểm truy cập không dây giả mạo được mô hình hóa bởi mục tiêu Nó cũng thiết lập một máy chủ NAT /
Trang 77
DHCP và chuyển tiếp các cổng phù hợp Do đó, do gây nhiễu, các máy khách cuối cùng sẽ bắt đầu kết nối với điểm truy cập giả mạo Sau giai đoạn này, nạn nhân là MiTMed
Nạn nhân đang được cung cấp một trang lừa đảo thực tế được tùy chỉnh đặc
biệt Wifiphisher sử dụng một máy chủ web tối thiểu đáp ứng các yêu cầu HTTP & HTTPS Ngay khi nạn nhân yêu cầu một trang từ Internet, wifiphisher sẽ trả lời bằng một trang giả thực tế yêu cầu thông tin xác thực hoặc cung cấp phần mềm độc
hại Trang này sẽ được tạo riêng cho nạn nhân Ví dụ: một trang tìm kiếm cấu hình bộ định tuyến sẽ chứa logo của nhà cung cấp của nạn nhân Công cụ này hỗ trợ các mẫu
do cộng đồng xây dựng cho các tình huống lừa đảo khác nhau
Nguyên tắc của các công cụ:
điểm truy cập được chọn, cài đặt của nó được sao chép (tên, kênh, v.v.)
trên thẻ WiFi của kẻ tấn công, một bản sao (Evil Twin) của điểm truy cập này được khởi chạy, lặp lại bản gốc ngoại trừ một thứ - bạn có thể kết nối với nó mà không cần mật khẩu người dùng bị ngắt kết nối khỏi điểm truy cập ban đầu bởi cuộc tấn công hủy xác thực điểm truy cập ban đầu liên tục bị chặn Đối với điều này, kẻ tấn công cần một thẻ không dây thứ hai Khi người dùng kết nối với Evil Twin, anh ta sẽ được yêu cầu cung cấp mật khẩu WiFi (ví dụ: để cập nhật phần sụn) dưới nhiều dòng tiền khác nhau Do đó, mật khẩu nhận được sẽ được gửi đến kẻ tấn công
Nếu chúng ta so sánh Evil twin từ Wifiphisher với Evil twin từ Fluxion , thì chúng ta có thể chú ý đến thực tế là Wifiphisher không kiểm tra dữ liệu nhận được từ người dùng Điều này làm giảm đáng kể sự tự động hóa Kẻ tấn công, trong quá trình tấn công, bằng cách nào đó, phải xác minh mật khẩu nhận được và quyết định tiếp tục hay dừng cuộc tấn công Gần đây trong Wifiphisher xuất hiện phím -qS Nếu bạn chỉ định nó, thì Wifiphisher sẽ dừng công việc của nó sau thông tin xác thực nhận được đầu tiên, ngay cả khi chúng không chính xác Như đã thấy trong ví dụ về cuộc tấn công với Fluxion, các công cụ có thể hoạt động trong một thời gian dài và nó sẽ
không cho phép người dùng kết nối với điểm truy cập ban đầu cho đến khi anh ta nhập đúng mật khẩu WiFi, nhưng sau khi nhập nó, nó "Rơi ra" ngay lập tức
Một tính năng khác của Wifiphisher là các công cụ cho phép bạn lấy mật khẩu
từ các trang web với lý do là truy cập kết nối Internet miễn phí Các công cụ đã triển khai một tập lệnh để lấy mật khẩu từ Facebook, nhưng bạn có thể viết tập lệnh của
Trang 8riêng mình cho bất kỳ trang web nào Nhân tiện, với cuộc tấn công này, một giao diện không dây là đủ - giao diện mà điểm truy cập tăng với WiFi miễn phí; trong một cuộc tấn công, bạn không cần phải làm kẹt các điểm truy cập khác
Trang 99
CHƯƠNG 2: TÌNH HUỐNG VÀ KỊCH BẢN LỪA ĐẢO
1 Các tình huống lừa đảo
Wifiphisher hỗ trợ các mẫu do cộng đồng xây dựng cho các trường hợp lừa đảo khác nhau Hiện tại, các trường hợp lừa đảo sau đang được áp dụng:
• Trang nâng cấp chương trình cơ sở : Trang cấu hình bộ định tuyến không
có logo hoặc nhãn hiệu yêu cầu mật khẩu WPA / WPA2 do nâng cấp chương trình cơ sở Thân thiện với thiết bị di động
• Trang đăng nhập OAuth : Dịch vụ Wi-Fi miễn phí yêu cầu thông tin đăng
nhập Facebook để xác thực bằng OAuth
• Cập nhật plugin trình duyệt: Trang cập nhật plugin trình duyệt chung có thể
được sử dụng để cung cấp tải trọng cho nạn nhân
• Network Manager Connect : Bắt chước hành vi của người quản lý
mạng Mẫu này hiển thị trang "Kết nối không thành công" của Chrome và hiển thị cửa sổ trình quản lý mạng qua trang yêu cầu khóa chia sẻ trước Hiện tại, các trình quản lý mạng của Windows và MAC OS được hỗ trợ
Các tình huống lừa đảo cài sẵn để sử dụng với tùy chọn -p :
• nâng cấp phần sụn
• oauth-đăng nhập
• plugin_update
• wifi_connect
Trang 10Các tình huống Lừa đảo Có sẵn:
Trang cấu hình bộ định tuyến không có logo hoặc nhãn hiệu yêu cầu mật khẩu WPA / WPA2 do nâng cấp chương trình cơ sở Thân thiện với thiết bị di động
• 2 - Kết nối trình quản lý mạng
Bắt chước hành vi của người quản lý mạng Mẫu này hiển thị trang "Kết nối không thành công" của Chrome và hiển thị cửa sổ trình quản lý mạng qua trang yêu cầu khóa chia sẻ trước Hiện tại, các trình quản lý mạng của Windows và MAC OS được hỗ trợ
Dịch vụ Wi-Fi miễn phí yêu cầu thông tin đăng nhập Facebook để xác thực bằng Oauth
• 4 - Cập nhật plugin trình duyệt
Trang cập nhật plugin trình duyệt chung có thể được sử dụng để cung cấp tải trọng cho nạn nhân
2 Tạo một kịch bản lừa đảo tùy chỉnh
Đối với các cuộc tấn công định hướng mục tiêu cụ thể, các kịch bản tùy chỉnh
có thể cần thiết Tạo một kịch bản lừa đảo rất dễ dàng và bao gồm hai bước:
1) Tạo config.ini
Tệp config.ini nằm trong thư mục gốc của template và nội dung của nó có thể được chia thành hai phần:
Thí dụ
i) thông tin : Phần này xác định các đặc điểm của kịch bản
• Tên (bắt buộc): Tên của kịch bản lừa đảo
• Mô tả (bắt buộc): Mô tả nhanh (<50 từ) về tình huống
• PayloadPath (tùy chọn): Nếu tình huống lừa đảo đẩy phần mềm
độc hại đến nạn nhân, người dùng có thể chèn đường dẫn tuyệt đối của tệp thực thi độc hại tại đây
Trang 1111
ii) ngữ cảnh : Phần này là tùy chọn và chứa các biến do người dùng xác định có
thể được đưa vào mẫu sau này
> Name: ISP warning page
> Description: A warning page from victim's ISP asking for DSL credentials
Mẫu chứa các phần tĩnh của đầu ra HTML mong muốn và có thể bao gồm một
số tệp HTML tĩnh, hình ảnh, tệp CSS hoặc Javascript Các ngôn ngữ động (ví dụ: PHP) không được hỗ trợ
Trình giữ chỗ
Các tệp HTML cũng có thể chứa một số cú pháp đặc biệt (nghĩ rằng trình giữ chỗ) mô tả cách nội dung động sẽ được chèn Đường cong động có thể bắt nguồn từ hai nguồn:
tiêu và có thể được sử dụng để thu thập thông tin Quá trình chính thu thập tất cả thông tin thú vị và chuyển chúng đến mẫu đã chọn trong thời gian chạy
Tại thời điểm viết bài, quy trình chính truyền dữ liệu sau:
• target_ap_essid <str>: ESSID của Điểm truy cập mục tiêu
• target_ap_bssid <str>: Địa chỉ BSSID (MAC) của Điểm truy cập mục tiêu
• target_ap_channel <str <: Kênh của Điểm truy cập mục tiêu
Trang 12• target_ap_vendor <str>: Tên nhà cung cấp của Điểm truy cập mục tiêu
• target_ap_logo_path <str>: Đường dẫn tương đối của biểu trưng của nhà cung cấp Điểm truy cập mục tiêu trong hệ thống tệp
• APs_context <list>: Một danh sách chứa từ điển của các Điểm truy cập được thu thập trong giai đoạn lựa chọn AP
• AP <dict>: Một từ điển chứa thông tin sau về một Điểm truy cập:
• channel <str>: Kênh của Điểm truy cập
▪ essid <str> ESSID của Điểm truy cập
▪ bssid <str> Địa chỉ BSSID (MAC) của Điểm truy cập
▪ nhà cung cấp <str> Tên nhà cung cấp của Điểm truy cập
các giá trị target_ * sẽ là Không nếu có người dùng không nhắm mục tiêu Điểm truy cập (bằng cách sử dụng tùy chọn essid) 'Target_ap_logo_path' sẽ là Không nếu logo của nhà cung cấp cụ thể không tồn tại trong kho lưu trữ
Tất cả các biến được xác định trong phần "Ngữ cảnh" có thể được sử dụng từ trong tệp mẫu Trong trường hợp xung đột đặt tên, các biến từ tệp cấu hình sẽ ghi đè các biến đến từ các khung báo hiệu
Ghi thông tin đăng nhập
Để wifiphisher biết thông tin đăng nhập nào cần ghi, các giá trị của thuộc tính HTML 'tên' cần phải được đặt trước bằng chuỗi 'wfphshr' Trong các yêu cầu POST, wifiphisher sẽ ghi lại tất cả các biến có tiền tố là chuỗi này
<p> Dear {{ victim_name }}, This is a message from {{ ISP }}
A problem was detected regarding your {{ target_ap_vendor }} router </p>
<p> Please write your credentials to re-connect over PPPOE/PPPOA.</p>
<input type="text" name="wphshr-username"></input>
Trang 1313
5 <input type="text" name="wphshr-password"></input>
Trong ví dụ này, các biến 'tên_h nạn' và 'ISP' đến từ config.ini, trong khi biến 'target_ap_vendor' đến từ các khung báo hiệu Cả "wphshr-username" và "wphshr-password" sẽ được ghi lại
Trang 14CHƯƠNG 3: CÀI ĐẶT VÀ SỬ DỤNG WIFIPHISER
1 Cách cài đặt Wifiphisher
Yêu cầu
Sau đây là các yêu cầu để khai thác tối đa Wifiphisher:
bản phân phối khác, Kali Linux là bản phân phối được hỗ trợ chính thức, do
đó tất cả các tính năng mới chủ yếu được thử nghiệm trên nền tảng này
trợ netlink
chèn Một lần nữa, trình điều khiển nên hỗ trợ netlink Nếu không có bộ điều hợp mạng không dây thứ hai, bạn có thể chạy công cụ với tùy chọn nojamming Tuy nhiên, điều này sẽ tắt cuộc tấn công khử xác thực
Cài đặt
Bước 1: Install Wifiphisher
Mở máy tính chạy Kali Linux , mở cửa sổ gõ: apt install wifiphisher để cài
đặt Wifiphisher
Bạn có thể cài repo GitHub, làm theo hướng dẫn trên trang GitHub, như sau:
git clone https://github.com/wifiphisher/wifiphisher.git
cd wifiphisher sudo python setup.py install
Bước 2: Tìm hiểu Wifiphisher's Flags
Bạn có thể gõ lệnh sudo wifiphisher gõ help để xem các câu lệnh và chức
năng của Wifiphisher
usage: wifiphisher [-h] [-i INTERFACE] [-eI EXTENSIONSINTERFACE] [-aI APINTERFACE] [-iI INTERNETINTERFACE]
Trang 15[-wAI WPSPBC_ASSOC_INTERFACE] [-kB] [-fH]
[-pPD PHISHING_PAGES_DIRECTORY]
[ dnsmasq-conf DNSMASQ_CONF] [-pE PHISHING_ESSID]
optional arguments:
-h, help show this help message and exit
-i INTERFACE, interface INTERFACE
Manually choose an interface that supports both AP and
monitor modes for spawning the rogue AP as well as
mounting additional Wi-Fi attacks from Extensions
(i.e deauth) Example: -i wlan1
-eI EXTENSIONSINTERFACE, extensionsinterface EXTENSIONSINTERFACE Manually choose an interface that supports monitor
mode for deauthenticating the victims Example: -eI
wlan1
-aI APINTERFACE, apinterface APINTERFACE
Manually choose an interface that supports AP mode for
spawning the rogue AP Example: -aI wlan0
-iI INTERNETINTERFACE, internetinterface INTERNETINTERFACE
Choose an interface that is connected on the
InternetExample: -iI ppp0
-iAM MAC_AP_INTERFACE, mac-ap-interface MAC_AP_INTERFACE
Specify the MAC address of the AP interface
-iEM MAC_EXTENSIONS_INTERFACE, mac-extensions-interface
MAC_EXTENSIONS_INTERFACE
Specify the MAC address of the extensions interface
-iNM, no-mac-randomization