1. Trang chủ
  2. » Công Nghệ Thông Tin

NGHIÊN CỨU TRIỂN KHAI BỘ CÔNG CỤ METASPLOIT

18 1,2K 18

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Triển Khai Bộ Công Cụ Metasploit
Tác giả Nhóm 9
Người hướng dẫn Giảng Viên Hướng Dẫn
Trường học Trường Đại Học Khoa Công Nghệ Thông Tin
Chuyên ngành An Ninh Mạng
Thể loại Đề Tài
Năm xuất bản 2017
Thành phố Hà Nội
Định dạng
Số trang 18
Dung lượng 1,09 MB

Nội dung

Bộ công cụ Metasploit là bộ công cụ khai thác lỗ hổng không thể thiếu của các hacker cũng như Penetration Tester. Metasploit không phải là một công cụ mà là một Framework tập hợp rất nhiều chương trình cũng như công cụ phục vụ cho việc tấn công, kiểm tra độ an toàn và bảo mật của hệ thống. Metasploit Framework là một môi trường dùng để kiểm tra, tấn công và khai thác lỗi của các server. Ban đầu Metasploit được xây dựng từ ngôn ngữ hướng đối tượng Perl với những component được viết bằng C và Python sau đó được viết lại bằng Ruby. Đây là một ứng dụng mã nguồn mở phát triển nhằm sử dụng các shellcode để tấn công, khai thác lỗi của các dịch vụ Metasploit có thể chạy trên hầu hết các hệ điều hành như Linux, Windows, MacOS… Thử nghiệm thâm nhập mã nguồn mở Metasploit Framework Rapid7 là một dự án được Hoa Kỳ tài trợ và công cụ kiểm thử cho Metasploit Framework có tên Metasploit Community Edition đã được phát hành. Metasploit Community Edition là công cụ kiểm tra thâm nhập có giới hạn cung cấp sức mạnh của Metasploit Framework với giao diện người dùng đồ hoạ được thêm vào để dễ dàng điều hướng và khai thác. Metasploit Community Edition có sẵn bản miễn phí trên mạng. Community Editioin dựa trên Metasploit Framework, một sự kết hợp của giao diện người dùng cơ bản có sẵn trong các phiên bản thương mại. Sử dụng thử nghiệm thâm nhập cơ bản, GUI đơn giản, cung cấp các môđun import như một Browse. Bạn có thể xác minh bất kỳ lỗ hổng khai thác nào, quản lý luồng dễ bị tấn công và bảo vệ dữ liệu và cũng có thể nhập báo cáo quét lỗ hổng của bên thứ ba. Nó được thiết kế cho sinh viên và doanh nghiệp nhỏ, những người muốn mô phỏng một cách an toàn các cuộc tấn công mạng bằng khai thác cơ bản và phát hiện mạng. Metasploit hỗ trợ những trình duyệt: • Chrome 8+ • Firefox 4+ • Internet Explorer 9+ Bạn có thể download chương trình tại www.metasploit.com I.2. Các tính năng chính: Một giao diện người dùng đồ họa đơn giản, giúp việc đánh giá tính dễ bị xâm nhập và đánh giá an ninh dễ dàng hơn các giải pháp thay thế dựa trên dòng lệnh. Phát hiện mạng, cho phép người dùng lập bản đồ các mạng của họ bằng cách xác định các máy chủ, quét các cổng mở và lấy dấu vân tay các hệ điều hành và dịch vụ của họ. Tích hợp với các máy quét dễ bị tấn công, do đó quét dữ liệu từ Rapid7 Nexpose, Nmap và hàng tá các giải pháp khác có thể được nhập trực tiếp vào Metasploit Community. Các quá trình quét Nexpose cũng có thể được bắt đầu và đặt vị trí nhập trực tiếp từ bên trong Metasploit Community. Khai thác cơ bản, cho phép người dùng xác minh những lỗ hổng nào có thể khai thác được và phải được khắc phục và những lỗ hổng nào không được khai thác. Điều này làm tăng năng suất và giảm chi phí của một chương trình quản lý dễ bị xâm nhập và giúp ngăn ngừa sự vi phạm dữ liệu. Trình duyệt module, tận dụng cơ sở dữ liệu lớn nhất thế giới về khai thác đảm bảo chất lượng để người dùng có thể dễ dàng tìm ra cách khai thác đúng. Mỗi môđun bao gồm một bảng xếp hạng độ tin cậy, chỉ ra tỷ lệ thành công điển hình và tác động đến hệ thống mục tiêu. Các chuyên gia bảo mật và CNTT có thể dễ dàng nâng cấp từ Metasploit Community lên Metasploit Pro, tiếp tục làm việc với giao diện quen thuộc trên cài đặt hiện tại. Metasploit Pro có thêm nhiều khả năng mạnh như khai thác thông minh, kiểm tra mật khẩu, quét ứng dụng Web, hậu khai thác, kỹ thuật xã hội, hợp tác nhóm, báo cáo toàn diện và hỗ trợ cấp doanh nghiệp. I.3. Các thành phần Hỗ trợ giao diện người dùng : o Console Interface: Đây là giao diện sử dụng các dòng lệnh để cấu hình, kiểm tra do vậy tốc độ nhanh hơn và mềm dẻo hơn. Sử dụng file msfconsole.bat. o Web Interface: Giao tiếp với người dùng thông qua giao diện web. Sử dụng file msfweb.bat. o Command line interface: dùng msfcli.bat Phần Enviroment : o Global Enviroment: Được thực thi thông qua 2 câu lệnh setg và unsetg, những tùy chọn được gắn ở đây sẽ mang tính toàn cục, được đưa vào tất cả các module khai thác. o Temporary Enviroment: Được thực thi thông qua 2 câu lệnh set và unset, enviroment này chỉ được đưa vào module khai thác đang load hiện tại, không ảnh hưởng đến các module khai thác khác. Bạn có thể lưu lại enviroment mình đã cấu hình thông qua lệnh save. Môi trường đó sẽ được lưu trong .msfconfig và sẽ được load trở lại khi user interface được thực hiện Những thành phần nào có cấu hình giống nhau giữa các exploits module như là: LPORT, LHOST, PAYLOAD thì bạn nên cấu hình ở chế độ Global Enviroment để không phải cấu hình lại nhiều lần.

Trang 1

TRƯỜNG ĐẠI HỌC KHOA CÔNG NGHỆ THÔNG TIN

-*** -AN NINH MẠNG

ĐỀ TÀI 6: NGHIÊN CỨU TRIỂN KHAI BỘ CÔNG CỤ METASPLOIT

(phiên bản community Edition với các modul: Network discovery, Vulnerability Scanner

import, Basic Exploitation, Module Browser)

Giảng Viên Hướng Dẫn:

Sinh Viên thực hiện:

Nhóm 9

Mạng Máy Tính K58.

Trang 2

MỤC LỤC

I Giới thiệu:

I.1 Giới thiệu chung

- Bộ công cụ Metasploit là bộ công cụ khai thác lỗ hổng không thể thiếu của các hacker cũng như Penetration Tester Metasploit không phải là một công cụ mà là một Framework tập hợp rất nhiều chương trình cũng như công cụ phục vụ cho việc tấn công, kiểm tra độ an toàn và bảo mật của hệ thống

- Metasploit Framework là một môi trường dùng để kiểm tra, tấn công và khai thác lỗi của các

Trang 3

- Thử nghiệm thâm nhập mã nguồn mở "Metasploit Framework" Rapid7 là một dự án được Hoa Kỳ tài trợ và công cụ kiểm thử cho Metasploit Framework có tên "Metasploit

Community Edition" đã được phát hành Metasploit Community Edition là công cụ kiểm tra thâm nhập có giới hạn cung cấp sức mạnh của Metasploit Framework với giao diện người dùng

đồ hoạ được thêm vào để dễ dàng điều hướng và khai thác Metasploit Community Edition có sẵn bản miễn phí trên mạng

- Community Editioin dựa trên Metasploit Framework, một sự kết hợp của giao diện người dùng cơ bản có sẵn trong các phiên bản thương mại Sử dụng thử nghiệm thâm nhập cơ bản, GUI đơn giản, cung cấp các mô-đun import như một Browse Bạn có thể xác minh bất kỳ lỗ hổng khai thác nào, quản lý luồng dễ bị tấn công và bảo vệ dữ liệu và cũng có thể nhập báo cáo quét lỗ hổng của bên thứ ba

- Nó được thiết kế cho sinh viên và doanh nghiệp nhỏ, những người muốn mô phỏng một cách an toàn các cuộc tấn công mạng bằng khai thác cơ bản và phát hiện mạng

- Metasploit hỗ trợ những trình duyệt:

• Chrome 8+

• Firefox 4+

• Internet Explorer 9+

- Bạn có thể download chương trình tại www.metasploit.com

I.2 Các tính năng chính:

- Một giao diện người dùng đồ họa đơn giản, giúp việc đánh giá tính dễ bị xâm nhập và đánh giá an ninh dễ dàng hơn các giải pháp thay thế dựa trên dòng lệnh

- Phát hiện mạng, cho phép người dùng lập bản đồ các mạng của họ bằng cách xác định các máy chủ, quét các cổng mở và lấy dấu vân tay các hệ điều hành và dịch vụ của họ

- Tích hợp với các máy quét dễ bị tấn công, do đó quét dữ liệu từ Rapid7 Nexpose, Nmap

và hàng tá các giải pháp khác có thể được nhập trực tiếp vào Metasploit Community Các quá trình quét Nexpose cũng có thể được bắt đầu và đặt vị trí nhập trực tiếp từ bên trong Metasploit Community

- Khai thác cơ bản, cho phép người dùng xác minh những lỗ hổng nào có thể khai thác được và phải được khắc phục - và những lỗ hổng nào không được khai thác Điều này làm tăng năng suất và giảm chi phí của một chương trình quản lý dễ bị xâm nhập và giúp ngăn ngừa sự vi phạm dữ liệu

Trang 4

I.3 Các thành phần

- Hỗ trợ giao diện người dùng :

o Console Interface: Đây là giao diện sử dụng các dòng lệnh để cấu hình, kiểm tra

do vậy tốc độ nhanh hơn và mềm dẻo hơn Sử dụng file msfconsole.bat

o Web Interface: Giao tiếp với người dùng thông qua giao diện web Sử dụng file msfweb.bat

o Command line interface: dùng msfcli.bat

- Phần Enviroment :

o Global Enviroment: Được thực thi thông qua 2 câu lệnh setg và unsetg, những tùy chọn được gắn ở đây sẽ mang tính toàn cục, được đưa vào tất cả các module khai thác

o Temporary Enviroment: Được thực thi thông qua 2 câu lệnh set và unset, enviroment này chỉ được đưa vào module khai thác đang load hiện tại, không ảnh hưởng đến các module khai thác khác

Bạn có thể lưu lại enviroment mình đã cấu hình thông qua lệnh save Môi trường đó sẽ được lưu trong /.msf/config và sẽ được load trở lại khi user interface được thực hiện

Những thành phần nào có cấu hình giống nhau giữa các exploits module như là: LPORT, LHOST, PAYLOAD thì bạn nên cấu hình ở chế độ Global Enviroment để không phải cấu hình lại nhiều lần

II Hướng dẫn cài đặt

II.1 Yêu cầu

Để cài đặt được Metasploit, ổ cứng phải còn trống khoảng 30GB-40GB bao gồm cả Snapshot trong quá trình thực hành hệ thống; RAM tối thiểu 4G Ram nhưng để tốt nhất nên chọn RAM 8G; CPU Core 2 Dou trở lên

II.2 Cài đặt

Sau khi download bản Metasploit Community Edition, chúng ta tiến hành cài đặt, giao

diện cài đặt xuất hiện và chọn Next

Trang 5

Tiếp theo, tích chọn ô I accept the agreement và chọn Next

Chọn ổ lưu file Metasploit và tiếp tục chọn Next

Trang 6

Tiếp tục chọn Next cho đến khi xuất hiện giao diện chạy file cài đặt

Quá trình cài đặt hoàn tất, chọn Finish và tích chọn Access Metasploit Web UI

Trang 7

Sau khi kết thúc cài đặt, trình duyệt Web mở lên và xuất hiện giao diện mở đầu của Metasploit

Trang 8

Click vào link: https://localhost:3790/ sẽ dẫn đến trang tạo tài khoản để login vào

Metasploit Điền Username, Password sử dụng và một số thông tin bổ sung, rồi chọn Create Account:

Trình duyệt chuyển đến trang nhập key để active chương trình, key này được gửi miễn phí đến mail khi tải phần mềm Sau khi điền key nhấn Activate License:

Trang 9

Chương trình Metasploit được hoàn thành cài đặt, và đây là giao diện sử dụng chương trình:

Trang 10

III Hướng dẫn sử dụng

Trước hết sẽ tìm hiểu qua về những câu lệnh, tùy chọn khác nhau để có thể nắm được nhiệm vụ của lệnh đấy Sau đó sẽ tìm hiều về các bước để khai thác một mục tiêu cụ thể Và cuối cùng là ví dụ về một kịch bản khai thác

III.1 Nội dung của các câu lệnh khi ta sử dụng giao diện msfconsole:

- Back: Lệnh này dùng khi bạn muốn thoát ra khỏi module bạn đã chọn trước đó sau khi hoàn

thành công việc hoặc muốn chuyển sang công việc khác

(i) Ví dụ: msf payload(reverse http) > back

msf>

- Check: Lệnh này giúp ta kiểm tra đã cấu hình đúng cho khai thác chưa, mọi việc đã hoàn thành

chưa Cho ta biết kết quả mà không cần phải thực thi khai thác đó Nhưng không phải tất cả mọi

mã khai thác đều hỗ trợ lệnh này

- Connect: Lệnh này giống như một bản netcat thu nhỏ đc cho vào metasploit được hỗ trợ với ssl,

proxy, pivoting Với việc dùng câu lệnh connect với địa chỉ ip và port tương ứng, chúng ta có thể connect tới một host từ metasploit giống như khi dùng với netcat hoặc telnet vậy

Ví dụ: msf > connect 118.69.228.254 22

- Info: Lệnh này cho biết những thông tin chi tiết của một module (hay một mã khai thác nào đó ).

Hiển thị cho ta thông tin cơ bản nhất, bao gồm cả các tùy chọn cần thiết

- Irb: Lệnh này cho ta thao tác trên môi trường của ruby Ví dụ: msf > irb –h

- Jobs: Lệnh này cho ta biết các module đang chạy.

- Load: Lệnh này để load một plugin từ metasploit plugins.

- Search: Lệnh này giúp ta tìm kiếm exploit, auxiliary, encoder Trong đó nó còn hỗ trợ một số

keywork giúp cải tiến khả năng tìm kiếm như: name, path, platform, port, type, app, author, cve, bid, osvdb, edb Ví dụ: search cve:2009 type:exploit app:client

- Sessions: lệnh này liệt kê các session đang tồn tại, session ở đây có thể là session của shell, của

meterpreter

- Set - Unset: Lệnh cho phép ta cấu hình cho các exploit lệnh này gặp thường xuyên Unset là

lệnh có ý nghĩa ngược lại

- Setg - Unsetg: Trong quá trình thực hiện tấn công một mục tiêu, hoặc nhiều mục tiêu Ta có thể

dùng một exploit hoặc đôi khi là nhiều exploit Có một vào option nếu set bình thường thì ta phải set nhiều lần Nhưng nếu ta để cho các option này có ý nghĩa toàn cục Thì việc lặp lại là không

cần Nó có hiệu lực cho mọi exploit, auxiliary Đó là ý nghĩa của setg (global set) Để hủy thì ta

Trang 11

giao thức (như SMB, HTTP), module quét các port, wireless, IPV6, DOS, Server modules, Module khai thác truy cập quản trị

- Exploits: Là một module dùng để khai thác các dịch vụ.

- Payloads: Trước tiên ta cần hiểu Payload là gi ? Ta có thể hiểu một cách đơn giản thì nó là một

đoạn code thực thi trên máy nạn nhân, dùng để thực hiện một số hoạt động nào đó, hoặc dùng để kết nối về máy của người tấn công Vậy làm sao để có cái Payload này trên máy của nạn nhân ?

Có 2 phương pháp chủ yếu được dùng Đó là gửi cho nạn nhân thông qua việc phân tính một lỗi,

lỗ hổng nào đó trên hệ thống của nạn nhân, từ đó đột nhập và gửi đoạn payload này cho nạn nhân Kiểu thứ 2 là gửi trực tiếp cho nạn nhân, chờ đợi nạn nhân sơ ý nhận nó (kĩ thuật social engineering)

- Targets: Cung cấp danh sách các mục tiêu phù hợp với module khai thác mà bạn

chọn

III.2 Các bước để khai thác một mục tiêu:

- Bước 1: Chọn module exploit: lựa chọn chương trình, dịch vụ lỗi mà Metasploit có hỗ trợ để

khai thác

show exploits: xem các module exploit mà framework có hỗ trợ.

use exploit_name: chọn module exploit.

info exploit_name: xem thông tin về module exploit.

Chú ý nên cập nhật thường xuyên các lỗi dịch vụ trên www.metasploit.com hoặc qua script msfupdate.bat

- Bước 2: Cấu hình module exploit đã chọn

show options: Xác định những options nào cần cấu hình.

set: cấu hình cho những option của module đó.

Một vài module còn có những tùy chọn nâng cao, bạn có thể xem bằng cách gõ dòng

lệnh show advanceds.

- Bước 3: Xem lại những options vừa cấu hình:

check: kiểm tra xem những option đã được cấu hình chính xác chưa.

- Bước 4: Lựa chọn target: lựa chọn hệ điều hành nào để thực hiện.

show targets: những mục tiêu được cung cấp bởi module đó.

set: xác định mục tiêu.

Ví dụ: smf> use windows_ssl_pct

show targets

Exploit sẽ liệt kê ra những mục tiêu như: winxp, winxp SP1, win2000, win2000 SP1

Trang 12

III.3 Giới thiệu payload meterpreter

Meterpreter, viết tắt từ Meta – Interpreter là một advanced payload có trong Metasploit framework Mục đích của nó là để cung cấp những tập lệnh để khai thác, tấn công các máy remote computers Nó được viết từ các developers dưới dạng shared object (DLL) files

Meterpreter và các thành phần mở rộng được thực thi trong bộ nhớ, hoàn toàn không được ghi lên đĩa nên có thể tránh được sự phát hiện từ các phần mềm chống virus Meterpreter cung cấp một tập lệnh để chúng ta có thể khai thác trên các remote computers

Fs: cho phép upload và dowload files từ các remote machine.

Net: cho phép xem thông tin mạng của remote machine như IP, route table.

Process: cho phpes tạo các processes mới trên remote machine.

Sys: cho phép xem thông tin hệ thống của remote machine

Sử dụng câu lệnh:

Câu lệnh use dùng để load những module mở rộng của meterpreter như: Fs, Net, Process…

use –m module1,module2,module3 [ -p path ] [ -d ]

 Câu lệnh cho phép load các thư viện của remote machines

loadlib –f library [ -t target ] [ -lde ]

 Lệnh read cho phép xem dữ liệu của remote machine trên channel đang kết nối

Read channel_id [length]

 Lệnh write cho phép ghi dữ liệu lên remote machine

Write channel_id

 Đóng channel mà đã kết nối với remote computer

Close channel_id

 Bắt đầu một phiên làm việc với channel vừa thiết lập với remote

Interact channel_id

Trang 13

Sử dụng module Fs: cho phép upload và download files từ các remote machine.

Cd directory : giống lệnh cd của commandline.

Getcwd : cho biết thư mục đang làm việc hiện tại.

 Liệt kê các thư mục và tập tin

Ls [filter_string]

 Up load file

Upload srcl [src2…] dst

 Download file

Download srcl [src2 …] dst

- Sử dụng module Net:

 Xem bảng định tuyến

ipconfig

route

 Cho phép tạo port forward giữa host và remote machine

portfwd [ -arv ] [ -L laddr ] [ -l lport ] [ -h rhost ] [ -p rport ] [ -P ]

- Sử dụng module Process:

 Câu lệnh execute cho phép bạn tạo ra một process mới trên remote machine và sử dụng process đó để khai thác dữ liệu

execute -f file [ -a args ] [ -Hc ]

 Hủy những process đang chạy trên máy remote machine

kill pid1 pid2 pid3

Trang 14

 Cho biết thông tin về computername, Os

sysinfo

Trang 15

III.4 Scan các host trong mạng bằng Metasploit

Tạo Project mới: chọn New Project

• Điền tên project và dải mạng sẽ scan:

Trang 16

• Sau khi tạo project quá trình scan bắt đầu:

• Dải địa chỉ sẽ scan từ 172.16.1.1 đến 172.16.1.10:

Trang 17

• Quá trình scan :

• Các host trong mạng mà chương trình tìm được sau khi scan xong

Trang 18

• Các host tìm được :

Ngày đăng: 27/10/2017, 17:32

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w