Vectơ tấn công phổ biến nhất sử dụng các cuộc tấn công kỹ thuật xã hội là lây lan lừa đảo thông qua gửi thư rác email.. Đặc biệt với sự phát triển của Internet cùng với sự ra đời các mạn
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
Bài báo cáo:
Tìm hiểu công cụ Social-Engineer Toolkit (SET) trong Kali
Trang 2LỜI MỞ ĐẦU
Với sự phát triển nhanh chóng của mạng Internet và đặt biệt là các công nghệ mạng, kèm theo đó là vấn đề bảo vệ các tài nguyên thông tin trên mạng, tránh sự mất mát, xâm phạm là việc cần thiết và cấp bách Con người là nguồn lực tốt nhất và là điểm cuối của các lỗ hổng bảo mật từ trước đến nay Social Engineering là một loại tấn công nhắm vào hành vi của con người bằng cách thao túng lòng tin của họ, với mục đích lấy được thông tin bí mật, chẳng hạn như tài khoản ngân hàng, mạng xã hội, email, thậm chí
cả quyền truy cập vào máy tính mục tiêu Không có hệ thống nào là an toàn, bởi vì hệ thống được tạo ra bởi con người Vectơ tấn công phổ biến nhất sử dụng các cuộc tấn công
kỹ thuật xã hội là lây lan lừa đảo thông qua gửi thư rác email Chúng nhắm vào nạn nhân
có tài khoản tài chính như thông tin ngân hàng hoặc thẻ tín dụng Bảo mật mạng có thể hiểu là cách bảo vệ, đảm bảo an toàn cho các thành phần mạng bao gồm dữ liệu, thiết bị,
cơ sở hạ tầng mạng và đảm bảo mọi tài nguyên trên mạng tránh được việc đánh cắp thông tin, đồng thời tăng tính bảo mật thông tin cho mạng được cao hơn Đặc biệt với sự phát triển của Internet cùng với sự ra đời các mạng xã hội vấn đề lừa đảo trên mạng diễn
ra ngày càng phức tạp hơn với đề tài ―Tìm hiểu công cụ Social-Engineer Toolkit (SET)
trong Kali Linux‖ sẽ đưa cho chúng ta thấy cái nhìn tổng quát nhất về tình hình an ninh
mạng hiện nay và kỹ thuật tấn công Social Engineering để từ đó có phương pháp phòng chống tốt nhất
Trang 3MỤC LỤC
LỜI MỞ ĐẦU 2
DANH SÁCH CÁC THUẬT NGỮ TIẾNG ANH VÀ VIẾT TẮT 5
DANH MỤC HÌNH VẼ 6
I Giới thiệu công cụ 7
II Hướng dẫn cài đặt và sử dụng 8
1 Cài đặt 8
Bước 1: 9
Bước 2: 9
Bước 3: 9
Bước 4: 10
2 Sử dụng 12
2.1 Một số cấu hình tự chọn 12
2.2 Spear-Phishing Attack 13
2.3 Credential Harvester Attack Method 21
2.4 Mass Mailer Attack 26
2.5 Infectious Media Generator 30
2.6 Wireless Access Point Attack Vector 33
2.7 Third Party Modules 34
2.8 Arduino-Based Attack Vector 37
III Các bài lab 39
1 Spear-Phishing attack 39
2 Credential Harvester attack 39
3 Mass mailer attack 39
IV Đánh giá, kết luận 40
1 Kết quả đạt được 40
Trang 4V Tài Liệu Tham Khảo 42
Trang 5DANH SÁCH CÁC THUẬT NGỮ TIẾNG ANH VÀ VIẾT TẮT
Từ viết tắt Thuật ngữ tiếng Anh/Giải thích Thuật ngữ tiếng Việt/Giải thích
Basic Auth Xác thực truy cập cơ bản
DNS Domain Name System Hệ thống phân giải tên miền
HTTP HyperText Transfer Protocol Giao thức truyền tải siêu văn bản
Payload Dữ liệu để thực hiện tấn công
DHCP Dynamic Host Configuration
Protocol Giao thức cấu hình máy chủ
Trang 6DANH MỤC HÌNH VẼ
Hình 1 Menu application 8
Hình 2 Tải công cụ từ github 9
Hình 3 Cài đặt các thư viện cần có 9
Hình 4 Bắt đầu cài đặt 10
Hình 5 Khởi động tool 11
Hình 6 Menu chính của tool 15
Hình 7 Menu spear-phishing 16
Hình 8 Danh sách các định dạng tệp độc hại 16
Hình 9 Nơi chứa payload được tạo ra 18
Hình 10 Kết quả khi thành công 20
Hình 11 Các tuỳ chọn fake web 21
Hình 12 Giả trang facebook 22
Hình 13 Trang facebook giả được tạo 23
Hình 14 Lấy thông tin đăng nhập thành công 24
Hình 15 Tạo QR code 25
Hình 16 Gửi mail hàng loạt 29
Hình 17 Gửi mail thành công 30
Hình 18 Tạo xong payload 32
Trang 7I Giới thiệu công cụ
Công cụ Social-Engineer Toolkit (SET) được tạo và viết bởi Dave Kennedy,
người sáng lập của TrustedSec Đây là một công cụ dựa trên Python mã nguồn mở nhằm mục đích kiểm thử thâm nhập với các kĩ thuật tấn công xã hội (Social Engineering) SET
có một số vectơ tấn công tùy chỉnh cho phép bạn thực hiện một cuộc tấn công xã hội một cách nhanh chóng SET là sản phẩm của TrustedSec, LLC - một công ty tư vấn bảo mật thông tin có trụ sở tại Cleveland, Ohio Các cuộc tấn công được tích hợp trong bộ công
cụ được thiết kế để trở thành các cuộc tấn công tập trung chống lại một người hoặc tổ chức được sử dụng trong quá trình kiểm thử thâm nhập
Nền tảng hỗ trợ:
Linux
Mac OS X (thử nghiệm)
TỪ CHỐI TRÁCH NHIỆM: Điều này chỉ dành cho mục đích thử nghiệm và
chỉ có thể được sử dụng khi đã có sự đồng ý nghiêm ngặt Không sử dụng nó cho các mục đích bất hợp pháp
Nó đã được giới thiệu tại các hội nghị quy mô lớn bao gồm Blackhat, DerbyCon, Defcon và ShmooCon Với hơn hai triệu lượt tải xuống, nó là tiêu chuẩn cho các bài kiểm thử thâm nhập cho các kỹ thuật xã hội và được hỗ trợ rất nhiều trong cộng đồng bảo mật
Nó có hơn 2 triệu lượt tải xuống và nhằm mục đích tận dụng các cuộc tấn công công nghệ tiên tiến trong môi trường kiểu kỹ thuật xã hội TrustedSec tin rằng kỹ thuật xã hội là một trong những cuộc tấn công khó bảo vệ nhất và hiện là một trong những cuộc tấn công phổ biến nhất Bộ công cụ đã được giới thiệu trong một số cuốn sách bao gồm sách bán chạy số một trong các sách bảo mật trong 12 tháng kể từ khi phát hành,
"Metasploit: The Penetrations Tester's Guide" được viết bởi người sáng lập TrustedSec cũng như Devon Kearns, Jim O'Gorman, và Mati Aharoni
Trang 8 Thực hiện gửi email lừa đảo hàng loạt
Tạo một file độc hại
Tạo các mã độc lây nhiễm qua USB/DVD/CD
II Hướng dẫn cài đặt và sử dụng
1 Cài đặt
Hiện tại thì SEToolkit đã được tích hợp sẵn trong bản cài đặt Kali Linux mới nhất, chúng ta có thể khởi động từ menu Application:
Hình 1 Menu application
Trang 9Đối với các phiên bản cũ chưa được cài đặt sẵn, ta có thể cài đặt công cụ thông qua các bước sau:
Bước 1:
Mở terminal và chạy câu lệnh sau:
git clone https://github.com/trustedsec/social-engineer-toolkit/ setoolkit/
Hình 2 Tải công cụ từ github
Bước 2:
Thực hiện lần lượt các lệnh sau:
cd setoolkit
pip3 install -r requirements.txt
Hình 3 Cài đặt các thư viện cần có
Bước 3:
Thực hiện câu lệnh:
python setup.py
Trang 10Hình 4 Bắt đầu cài đặt
Bước 4:
Khởi động chương trình qua câu lệnh:
sudo setoolkit
Trang 11Hình 5 Khởi động tool
Như vậy là chúng ta đã cài đặt thành công bộ công cụ Social-Engineer Toolkit
Trang 122 Sử dụng
2.1 Một số cấu hình tự chọn
Tuỳ vào mục đích sử dụng, bạn có thể cấu hình công cụ để có được hiệu quả tốt
nhất khi sử dụng File cấu hình nắm ở đường dẫn: “/etc/setoolkit/set.config”
Để có thể chỉnh sửa cấu hình, các bạn thực hiện câu lệnh sau: “sudo nano set.config”
Dưới đây là một số tuỳ chọn cấu hình:
### Define the path to Metasploit For example: /opt/metasploit/apps/pro/msf3
METASPLOIT_PATH=/opt/metasploit/apps/pro/msf3
Bạn có thể thay đổi đường dẫn đến Metasploit tại đây
### Use Apache instead of the standard Python web server This will increase the speed
### of the attack vector
Đây là đường dẫn tới thư mục gốc Apache web
### Specify what port to run the HTTP server on that serves the Java applet attack
### or Metasploit exploit The default is port 80 If you are using Apache, you
### need to specify what port Apache is listening on in order for this to work properly WEB_PORT=80
Trang 13Tuỳ chọn này dùng để thay đổi cổng để chạy HTTP server, mặc định cổng là 80
### This will tell what database to use when using Metasploit The default is PostgreSQL
METASPLOIT_DATABASE=postgresql
Tuỳ chọn này để xác định database nào được dùng khi sử dụng Metasploit, mặc định là PostgreSQL
Ngoài ra còn rất nhiều tuỳ chọn khác không thể liệt kê hết ở đây, các bạn có thể
tự tìm hiẻu thêm Sau khi đã cấu hình xong, bạn cần phải khởi động setoolkit và chọn tuỳ
chọn 5: Update SET configuration để cập nhật các thay đổi vừa thực hiện
2.2 Spear-Phishing Attack
Spear-Phishing là một phương thức giao tiếp lừa đảo, trong đó kẻ tấn công dùng mail, văn bản hoặc tweet để nhử người dùng click hoặc download một liên kết hoặc tệp độc hại Mục tiêu chung của phương thức này là để xâm nhập vào máy nạn nhân bằng cách lén lút chèn một backdoor (cửa hậu) để tìm cách truy cập từ xa trái phép vào dữ liệu
e-bí mật Những nỗ lực này có nhiều khả năng được thực hiện bởi những kẻ tấn công đang tìm kiếm các lợi ích về tài chính, các bí mật thương mại hoặc các thông tin nhạy cảm
Các phương thức phổ biến được sử dụng cho cuộc tấn công Spear Phishing bao gồm sự kết hợp của các phương pháp tấn công phi kỹ thuật, tấn công phía client và các yêu cầu thông qua các trang web mạng xã hội, v.v
Trong ví dụ này, chúng ta sẽ tiến hành một cuộc tấn công, kết hợp với Gmail và gửi tệp PDF độc hại đến nạn nhân
Trình tự cách thực hiện như sau:
- Đầu tiên khởi động setoolkit bằng câu lệnh: sudo setoolkit
Trang 14- Nhập ―1‖ và enter để chọn Social-Engineering Attacks
Trang 15Hình 6 Menu chính của tool -Nhập ―1‖ và enter để chọn Spear-Phishing Attack Vectors
Cần lưu ý là bạn cần cài đặt ―Sendmail‖ và chỉnh cấu hình SENDMAIL=ON
trong file cấu hình như mình đã đề cập ở mục 1 Có 2 tuỳ chọn cho bạn , một là bạn để SET làm mọi thứ cho bạn, hai là bạn tự tạo FileFormat payload và sử dụng chúng để tấn công Trong ví dụ này mình sẽ hướng dẫn các bạn sử dụng SET một cách tự động, dễ hiểu nhất
Trang 16Hình 7 Menu spear-phishing
- Nhập ―1‖ và enter Có 12 tuỳ chọn cho mình, ở đây mình chọn tuỳ chọn thứ 13 là tạo ra
1 file pdf chứa mã độc
Hình 8 Danh sách các định dạng tệp độc hại
Trang 17Lúc này có 2 lựa chọn: 1 là sử dụng file pdf của mình, 2 là SET sẽ tạo cho chúng
ta 1 file pdf mới để tấn công Ở đây mình sẽ sử dụng tuỳ 2 chọn thứ 2:
Chọn ―1‖ và enter:
Điền các thông tin như địa chỉ IP, port, đợi 1 lúc SET sẽ tạo cho chúng ta 1 payload mới
Trang 18Hình 9 Nơi chứa payload được tạo ra File pdf được tạo ra nằm trong đường dẫn /root/.set/
Chú ý nếu chúng ta sử dụng GMAIL để gửi thư thì phải cài đặt cho các ứng dụng kém bảo mật có thể truy cập hòm thư trong phần cài đặt của gmail
Lúc này ta tiến hành đổi tên file pdf sao cho thuận tiện trong việc đánh lừa nạn nhân
Ở đây mình đổi tên là bao_cao_atm.pdf
Trang 19Tiếp theo có 2 lựa chọn: 1 là gửi thư đến 1 cá nhân, 2 là gửi thư hàng loạt cùng lúc nhiều người Ở đây mình chọn 1 để tiếp tục Nhập địa chỉ email nạn nhân Sau đó điền tài khoản email được sử dụng để gửi thư Ở đây mình sử dụng GMAIL
Trang 20Lúc này thư đã được gửi cho nạn nhân Ngay khi nạn nhân mở tệp pdf độc hại được đính kèm, ta có thể kiểm soát máy tính nạn nhân
Hình 10 Kết quả khi thành công
Đó là ví dụ về 1 kịch bản tấn công Spear-Phishing Các bạn có thể thử với các tuỳ chọn khác như gửi mail hàng loạt đến nhiều người để tăng khả năng thành công
Trang 212.3 Credential Harvester Attack Method
- Phương pháp tấn công thu thập thông tin nhằm thực hiện các cuộc lừa đảo để lấy tên người dùng và mật khẩu từ hệ thống Trong phương pháp tấn công này, một website sẽ được giả mạo, khi nạn nhân truy cập vào đường link giả mạo và nhập thông tin
về username, password sẽ được gửi về máy của kẻ tấn công đồng thời nạn nhân được chuyển hướng về trang web hợp lệ bị giả mạo ban đầu
Trang 22Lúc này có 3 lựa chọn để tiếp tục:
SET sẽ sử dụng 1 danh sách các website đã được định nghĩa trước như Google, Twitter…
SET sẽ tiến hành tạo ra một website giả mạo giống với tên website mà chúng ta nhập vào, ví dụ: gmail.com, facebook.com…
SET sẽ sử dụng website của bạn, lưu ý cần phải có file index.html khi sử dụng chức năng này
Ở ví dụ này mình chọn lựa chọn thứ 2 và tiến hành giả mạo trang đăng nhập của facebook.com
Hình 12 Giả trang facebook Lúc này ta sẽ gửi địa chỉ IP máy sử dụng SET cho nạn nhân truy cập, công cụ sẽ tự động gửi lại các log cho chúng ta
Trang 23Hình 13 Trang facebook giả được tạo Đây là giao diện của trang facebook giả mạo Bây giờ mình sẽ thử nhập username là
―tuan‖ với pass là ―admin‖ và xem kết quả:
Trang 24Hình 14 Lấy thông tin đăng nhập thành công Công cụ đã bắt được username và password đúng như lúc ta nhập Nhấn control+C để lưu lại kết quả vào một file
Ta có thể xem lại file kết quả bất cứ lúc nào vì file đã được lưu trên máy của chúng ta
Thay vì gửi trực tiếp địa chỉ IP dẫn tới trang web giả mạo, ta có thể sử dụng modul QRCode Generator Attack Vector kết hợp với việc gửi email giả mạo để tăng khả năg
Trang 25Modul QR Code này sử dụng thư viện trong Python Khi được quét mã sẽ chuyển hướng nạn nhân đến bất kì vector tấn công nào mà ta muốn
Ví dụ:
Sau khi ta đã dựng được trang web giả mạo facebook.com với địa chỉ IP: 192.168.0.102 như trên, lúc này ta tiếp tục sử dụng QR Code Generator để thực hiện việc tạo một mã QR Code chứa nội dung chính là địa chỉ IP 192.168.0.102 Sau đó ta sẽ tiến hành gửi một email đánh lừa nạn nhân với nội dung mà nạn nhân hứng thú như:
―đây là báo cáo cuối kì môn an toàn mạng, quét mã QR và đăng nhập để tải xuống‖
―mã giảm giá Shopee siêu sale miễn phí cho mọi người, hãy quét mã QR
để nhận‖
―lộ clip nhạy cảm của ca sĩ X, hãy quét mã QR để xem‖
Hình 15 Tạo QR code Lúc này mã QR đã được tạo mà lưu trong đường dẫn: /root/.set/reports
Trang 26Hình ảnh mã QR:
2.4 Mass Mailer Attack
Mass Mailer Attack cho phép bạn gửi email cho nhiều người cùng một lúc và tuỳ chỉnh tin nhắn Bạn có thể đính kèm các tệp file khi gửi email Với chức năng này, các kẻ tấn công có thể sử dụng công cụ Setoolkit để thực hiện các cuộc tấn công giả mạo hàng loạt với quy mô lớn Các kẻ tấn công có thể giả danh người thân, đính kèm các file độc hại giúp chiếm quyền điều khiển máy tính, mã hoá dữ liệu,đánh cắp thông tin nhạy cảm, keylogger… và gửi đến số lượng lớn các nạn nhân
-Cách sử dụng:
Khởi động Setoolkit, chọn 1: Social-Engineering Attacks, sau đó chọn 5: Mass Mailer Attack
Trang 27 Bật cấu hình Sendmail=ON trong file config
Chọn tuỳ chọn 2: E-Mail Attack Mass Mailer để thực hiệ gửi email hàng loạt
Trang 28 Điền đường dẫn chứa file chứa danh sách các địa chỉ email mà bạn muốn gửi Ở đây mình đã tạo 1 file có tên là list.txt nằm ở Desktop Đường dẫn đầy đủ của mình là : /home/kali/Desktop/list.txt
Lúc này có 2 tuỳ chọn: sử dụng tài khoản gmail để gửi thư hoặc sử dụng server của bạn Tại đây mình chọn sử dụng tài khoản Gmail để gửi thư
Điền địa chỉ gmail dùng để gửi thư, ở đây của mình là d18private@gmail.com, điền tên mà người nhận nhìn thấy từ ai gửi, ở đây mình để tên là Nguyễn Tử Quảng – BKAV để tăng sự uy tín, nhập mật khẩu của gmail Chọn ―y‖ để đính kèm thêm file
Trang 29Hình 16 Gửi mail hàng loạt
Điền đường dẫn chứa tệp độc hại mà bạn đính kèm, ở đây mình có đổi tên tệp thành ―bkav_anti_virut_free.exe‖ và để ở Desktop Điền tiêu đề email Có 2 tuỳ chọn là gửi thư dưới dạng html hoặc plain Ấn ‗h‘ để chọn html và ‗p‘ để chọn plain Nhập phần thư để gửi, nhập ‗END‘ viết hoa để thể hiện việc kết thúc phần tin nhắn Ở đây tin nhắn của mình là:
Trang 30Hình 17 Gửi mail thành công
2.5 Infectious Media Generator
Đây là phương pháp tấn công sử dụng các thiết bị vật lý và là phương pháp hoàn toàn khác, chúng ta sẽ sử dụng các thiết bị như USB, DVD, CD để tấn công Phương pháp này cho phép ta gắn các mã độc thực thi của chúng ta hoặc trong Metasploit để tạo
ra các USB/DVD/CD kết hợp với file autorun.inf Một khi các thiết bị này được cắm vào máy, nó sẽ tự động gọi autorun và thực thi các đoạn mã độc hại
Cách thực hiện:
Khởi động Setoolkit, chọn Social-Engineering Attacks, chọn tiếp mục 3 là Infections Media Generator