Một vài biện pháp bảo mật thêm cho VBB

iLoVeU

Moderator
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...).

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ứ
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 '
Đi chổ khác chơi đi chú em. Nhấn nút biến!
';
exit;
}
-Save lại với mã là UTF-8

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'] = 'lbt_Forums';
$INFO['sql_driver'] = 'mySQL';
$INFO['sql_host'] = 'localhost';
$INFO['sql_pass'] = 'lbt';
Đâ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
- 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 :))


Sưu tầm, chúc bạn thành công:13:
 
Bên trên