Liên HệBạn muốn đặt quảng cáo của mình trên BlogIT? Vui lòng liên hệ Quản trị viên.

Dính Malware wp-vcd.php phân tích xem nó sẽ làm gì với Site của bạn?

Hãy chia sẻ bài viết để nhận thưởng Coins.

Thời gian gần đây rộ lên một số Site WordPress bị dính con Malware Backdoor này (wp-vcd.php) và cũng đã được một số trang đề cập đến nó cũng như chia sẻ cách loại bỏ mã độc này ra khỏi code của website một khi đã bị dính. Nếu bạn lên Google tìm kiếm với từ khóa Malware wp-vcd.php sẽ cho ra một danh sách các bài viết về con Malware này.

Đa phần việc dính chưởng con Malware này là do việc Download các gói giao diện (theme/template) và phần mở rộng (Plugins) từ các trang không chính thức của tác giả, đa phần là miễn phí và lậu. Đến khi Web của mình bị hack và mất quyền truy cập hoặc nghiêm trọng hơn là mất luôn cả Source và Data thì mới vỡ lẽ.

Hôm nay mình sẽ đi qua hai vấn đề, thứ nhất là mình phân tích xem con Malware này khi đã dính vào Site thì nó sẽ làm gì? , thứ hai là mình sẽ chỉ ra cách đơn giản nhất để loại bỏ nó.

Một số công cụ mình sử dụng trong bài viết: PhpStorm, Notepad++ và Snagit để chụp ảnh màn hình.

1. Phân tích Malware

Để xem nó hoạt động như thế nào, mình sử dụng một Template đã bị Inject code độc để load vào PhpStorm. Để tìm kiếm mã độc nhét code vào Theme ở đâu mình dùng tính năng Search all files (Ctrl Shift F) của PhpStorm để làm điều này với Keyword:

class.theme

và mình tìm được vị trí nó Inject vào ở file Function

Lưu ý với Template thì đa phần tên con Malware này là class.theme-modules.php còn đối với Plugin mà nó Inject thì tên của nó là class.plugin-modules.php

Sau khi mình tìm đến ngay file bị Inject mã độc thì con Malware này cũng nằm cùng thư mục với file chính.

Mình không đề cập đến việc gỡ con Malware này để phần này, bây giờ mình mở con Malware lên xem nó có gì bên trong và nó sẽ làm gì nếu đã được cài đặt vào hệ thống. (File con malware mình có để link Download ở khung bên phải các bạn có thể tải về tìm hiểu)

Nội dung Malware

Nhìn sơ qua thì em nó cũng chứa một số các function vào có một đoạn code mã hóa dạng Base64 ở phần đầu $_GLOBAL[‘WP_CD_CODE’]

Mình mở Function Structure lên để xem tổng quan em nó có những gì và thử đoán thử mục tiêu của nó.

Nhìn sơ qua thì mình thấy có 2 Functions, getListDir mình đoán đây là func dùng để lấy thư mục, SearchFile đây có thể là tìm kiếm file gì đấy mình chưa vào trong nên không chắc.

Ok vào chi tiết.

function getDirList($path)
{
if ($dir = @opendir($path))
{
$result = Array();

while (($filename = @readdir($dir)) !== false)
{
if ($filename != ‘.’ && $filename != ‘..’ && is_dir($path . ‘/’ . $filename))
$result[] = $path . ‘/’ . $filename;
}
return $result;
}
return false;
}

Ở đây cái function này thì chính xác là liệt kê thư mục. Kế đến là function WP_URL_CD

Cái function này sẽ có tác dụng là đọc cái file wp-vcd.php (được tạo bởi Malware, mình sẽ đi chi tiết bên dưới), rồi đọc cái file core của WordPress là wp-includes/post.php sau đó ghi đè lên là nội dung của file wp-vcd.php

Content của file wp-vcd.php là đoạn code mã hóa bên trên là cái đoạn đã mã hóa $_GLOBAL[‘WP_CD_CODE’].

Kế đến là function SearchFile

Thằng này có tác dụng là sẽ tìm kiếm các file đã được định trước trong thư mục:

$GLOBALS[‘stopkey’] = Array(‘upload’, ‘uploads’, ‘img’, ‘administrator’, ‘admin’, ‘bin’, ‘cache’, ‘cli’, ‘components’, ‘includes’, ‘language’, ‘layouts’, ‘libraries’, ‘logs’, ‘media’, ‘modules’, ‘plugins’, ‘tmp’, ‘upgrade’, ‘engine’, ‘templates’, ‘template’, ‘images’, ‘css’, ‘js’, ‘image’, ‘file’, ‘files’, ‘wp-admin’, ‘wp-content’, ‘wp-includes’);

Và Inject cái mã độc vào file trong các thư mục này. File được chọn để nhét mã độc là các file functions

Ok mình đã đi qua cơ chế nhét mã độc của cái con class.theme-modules.php là như nào, bây giờ mình sẽ xem cái đoạn code mã hóa Base64 được định nghĩa bên trên, nó sẽ ghi và tạo file wp-vcd.php và replace nội dụng của file wp-incudes/post.php là gì.

PD9waHAKZXJyb3JfcmVwb…Oz8+

Sau khi Decode nó mình có một mã script PHP như bên dưới.

Nhìn sơ qua mình lại thấy thêm một đoạn mã hóa nữa, và bên dưới là đó cũng Inject vào các file functions như cái function bên trên SearchFile, tuy nhiên ở đây mình thấy rõ là nó lấy AUTH_SALT là mã bí mật khi chúng ta cài đặt Worpdress.

Mình giải mã luôn cái đoạn Install Code đó xem nó là gì.

Bingo!! như mình thấy thì ở cái đoạn code này mới là cái chính mà sao khi nó tạo file wp-vcd.php và Inject vào post.php nó sẽ mở Backdoor lên khi có query từ URL

if (isset($_REQUEST[‘action’]) && isset($_REQUEST[‘password’]) && ($_REQUEST[‘password’] == ‘{$PASSWORD}’))

Và tất cả các Code bên dưới nó đều là phục vụ cho mục đích này, từ việc đổi Domain, thay đổi mật khẩu,…

Và mình còn thấy được trang Remote của nó là “http://www.garors.top” mình có tiến hành truy cập thử trang này, tuy nhiên nó được tạo ra chỉ để nhận yêu cầu từ con Malware này mà không có bất cứ giao diện gì, cái mình nhận chỉ là trang trắng.

Tóm lại việc làm của con Malware này khá rõ ràng và có điều việc nó ẩn các functions sau cái đoạn code mã hóa chủ yếu cũng làm cho người dùng không thể phát hiện được nó là mã độc. Việc tấn công hay không cũng tùy thuộc vào Hacker có muốn tấn công site bạn không, vì nếu nó nằm như vậy trong hệ thống cũng không gây hại gì, cơ bản là nó sẽ mở Backdoor cho Hacker truy cập và lấy dữ liệu của bạn.

Nói chung là nếu đã có mã độc thì phải gỡ nó ra, để con này trong nhà sớm muộn gì nó cũng cắn mình 🙂

2. Gỡ bỏ Malware

Ok đến phần gở bỏ nó, trước hết là phải gở các đoạn code độc mà nó đã Inject vào các file trong hệ thống.

Trong PhpStorm chọn tổ hợp Ctrl + Shift + F tìm với nội dụng.

class.theme

PhpStorm sẽ trả về một danh sách các file có đoạn mã này

<?php if (file_exists(dirname(__FILE__) . ‘/class.theme-modules.php’)) include_once(dirname(__FILE__) . ‘/class.theme-modules.php’); ?>

Đi qua từng file và xóa đoạn mã trên.

Tiếp đến là tìm tất cả file chứa mã độc. Trong PhpStorm nhấn Shift 2 lần để tìm file cũng với keyword trên, sẽ được danh sách file có tên đó, việc cần làm là tìm đến thu mục và xóa chúng.

Tiếp đến là tìm đến file wp-includes/wp-vcp.php và xóa nó, tải về file cài đặt WordPress cùng phiên bản với site bạn đang sử dụng, lấy file wp-includes/post.php và copy đè lên file sẵn có trên host.

Chi tiết hơn có thể vào trang bên dưới để thao tác sâu hơn việc tách Malware ra khỏi hệ thống.

Tóm lại để ngăn ngừa không để bị dính Malware

Luôn cập nhật ứng dụng lên phiên bản cao hơn
Sử dụng Template/Plugin chính thức từ WordPress hay các trang trả phí chính thống như Themeforest, Code Canyon…
Không cài đặt những plugin từ các trang không rõ nguồn gốc, nhìn ghê ghê.

Tài nguyên trên BlogIT luôn sạch và các bạn có thể truy cập với một ít phí mục đích không phải để kinh doanh, mà chỉ để duy trì Hosting, Domain cho Blog, nên các bạn yên tâm về chất lượng, nếu có vấn đề xảy ra các bạn vui lòng liên hệ đến mình nhé.

Chúc các bạn có một ngày vui và đã theo dõi bài viết của mình.

Bình luận Facebook

Thêm bình luận