MỘT VÀI BIỆN PHÁP BẢO MẬT THÊM CHO DIỄN ĐÀN

Thảo luận trong 'Quản Trị Web' bắt đầu bởi Buffalo Crazy, 22/5/12.

  1. Buffalo Crazy

    Buffalo Crazy Thành Viên Mới

    Bài viết này Mafia viết thêm dựa trên tài liệu của shacker và một bài viết bằng tiếng Anh viết về bảo mật cho vbb. ok vào đề đi nào!

    I/Bài toán 1

    Tôi đưa ra một giả thiết rằng tài khoản Admin trên forum bạn bị ai đó chiếm lấy bất hợp pháp (thông qua đoán pass, cài troyzan, ăn cấp password cookie...).
    [​IMG]

    Vấn đề đặt ra ở đây là sẽ phải có một pass thứ 2 để ngăn chặn bước chân của kẻ muốn tấn công forum bạn lại chứ
    [​IMG]
    Ảnh đang được tải lên...

    [​IMG]
    Thông thường thì một số bạn dùng htaccess tôi sẽ cung cấp cho các bạn thêm một cách làm nữa:

    Cách thiết lập:

    Bạn edit file global.php từ thư mục admincp của diễn đàn (không phải global.php nằm bên ngoài index)

    -Bạn tìm


    Code:
    <?php

    -Thêm vào sau đó


    Code:
    //Khai bao dang nhap
    $config['dn2_dnp'] = 'usename';
    $config['mk2_dnp'] = 'password';

    if ($_SERVER['PHP_AUTH_USER'] != $config['dn2_dnp'] || $_SERVER['PHP_AUTH_PW'] != $config['mk2_dnp']){
    header('WWW-Authenticate: Basic realm="Xin vui long khai bao thong tin yeu cau truoc khi duoc chuyen den bang dang nhap"');
    header('HTTP/1.0 401 Unauthorized');


    //Trang sẽ hiển thị khi thông tin khai báo sai bét. Hỗ trợ HTML nên bạn có thể thiết kế một trang đẹp hơn
    echo '<center>Đi chổ khác chơi đi chú em. Nhấn nút biến!</center>';
    exit;
    }

    -Save lại với mã là UTF-8

    kết quả here
    [​IMG]

    Bạn làm thêm một cái nữa ở modcp để bảo mật cho staff của mình luôn.

    II/Bài toán 2

    Hacker thông qua local biết được cấu trúc dữ liệu site bạn.
    Mục đích của cuộc tấn công của hacker là đọc được file config, giả sử tôi có một file config sau:


    Code:
    $INFO['sql_database'] = 'ngoisaon_Forums';
    $INFO['sql_driver'] = 'mySQL';
    $INFO['sql_host'] = 'localhost';
    $INFO['sql_pass'] = 'HANOIMUATHU';

    Đây là info database của diễn đàn hacker có thể thông qua nó drop database của forum hoặc thông qua shell đổi được password của admin ~~~> nguy hiểm thật nhỉ

    Cách khắc phục:
    - Chmod (ko bàn ở đây)
    - Zend (dùng trình zendgaurd để zend lại các file php quan trọng)
    - Đổi tên thư mục include (chứa file config) và file config.php

    Tôi sẽ hướng dẫn các bạn đổi tên thư mục include (chứa file config) và file config.php:

    B1: Bạn edit file diagnostic.php trong thư mục admincp

    -Tìm


    Code:
    $ignored_files = array('/includes/config.php', '/includes/config.php.new',

    -Thay bằng


    Code:
    $ignored_files = array('/thư mục bạn muốn đổi tên/tên file config mới.php', '/thư mục bạn muốn đổi tên/tên file config mới.php.new',

    B2: Bạn edit file class_core.php trong thư mục include

    Code:
    include(CWD . '/includes/config.php');

    -Thay bằng


    Code:
    include(CWD . '/thư mục bạn muốn đổi tên/tên file config mới.php');

    -Tìm


    Code:
    if (file_exists(CWD. '/includes/config.php'))

    -Thay bằng


    Code:
    if (file_exists(CWD. '/thư mục bạn muốn đổi tên/tên file config mới.php'))

    - Bạn có thể chọn nhiều cách làm như thay đổi tên thư mục chứa file config hoặc thay đổi file tên file config (làm 2 cách càng tốt).
    tôi khuyên các bạn nên rename tên thành class_gì đó hoặc functions_gì đó để gây thêm khó khăn về thị lực cho kẻ muốn xâm nhập
    [​IMG]
    Ảnh đang được tải lên...

    [​IMG]
    - Còn file bạn tạo một file mới với tên config.php và điền info như sau:


    Code:
    Lạy anh tha cho em em có làm gì nên tội thì anh hãy pm em mà trách tội em :))

    Bonus cho bạn code fake bigdump mafia chôm được
    demo là vipunder
    [​IMG]
    Ảnh đang được tải lên...

    [​IMG]


    HTML Code (Xem thử):
    <html>

    <head>
    <meta http-equiv="Content-Language" content="en-us">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <title>.:: Loi roi ban ::.</title>
    </head>

    <body>

    <table border="0" cellpadding="0" cellspacing="0" width="100%" height="162">
    <tr>
    <td width="33%" height="21"></td>

    <td width="33%" align="center" height="21"></td>
    <td width="34%" height="21"></td>
    </tr>
    <tr>
    <td width="33%" height="75"></td>
    <td width="33%" align="center" height="75"><img border="0" src="http://daoduytu.net/police.jpg"></td>
    <td width="34%" height="75"></td>
    </tr>
    <tr>

    <td width="33%" height="21"></td>
    <td width="33%" align="center" height="21"></td>
    <td width="34%" height="21"></td>
    </tr>
    <tr>
    <td width="33%" height="24"></td>
    <td width="33%" align="center" height="24"><font face="Arial" size="4" color="#FF0000"><b>Địa chỉ này không tồn tại hoặc bạn không được quyền truy cập!</b></font></td>

    <td width="34%" height="24"></td>
    <center><font color="blue" size="5">Bạn sẽ được chuyển về trang bạn vừa xem</font></center>
    </tr>
    <tr>

    <td width="33%" height="21"></td>
    <td width="33%" align="center" height="21">
    <script language="javascript">

    window.setInterval("history.go(-1)", 5000);
    //history.go(-1);

    </script>
    </td>

    <td width="34%" height="21"></td>
    </tr>
    </table>

    </body>
    </html>

    -tut by mafia-

    HQTH
     

Chia sẻ trang này