PrestaShop bị hack? Khám phá triệu chứng, nguyên nhân và giải pháp
Phần mềm PrestaShop là giải pháp thương mại điện tử mã nguồn mở. Nó được phát triển như một dự án trường học. Tuy nhiên, cộng đồng mã nguồn mở nhanh chóng bắt kịp. Do đó, là mã nguồn mở, nó sử dụng PHP và MySQL cho quản lý cơ sở dữ liệu. Mã nguồn PrestaShop có thể được xem bởi bất kỳ ai vì nó mở. Vì ai cũng có thể xem, ai cũng có thể tìm lỗi. Bảo mật PrestaShop đã chịu các lỗ hổng nghiêm trọng năm nay. Chúng từ SQL Injection PrestaShop đến lỗi mã hóa cookie có thể là nguyên nhân hack PrestaShop của bạn. Bảo mật thương mại điện tử cực kỳ quan trọng vì liên quan đến mất doanh thu tức thì. "Hack PrestaShop" đang tăng do sử dụng rộng rãi giải pháp này. Do đó, người dùng phải đầu tư nhiều thời gian và tiền vào bảo mật PrestaShop.
PrestaShop bị hack: Các kết quả có thể của việc hack PrestaShop
- Tạo trang giả trên trang web của bạn.
- Chuyển hướng khách hàng đến trang web khác.
- Đánh cắp thông tin nhạy cảm như thông tin đăng nhập, mật khẩu ngân hàng hoặc chi tiết thẻ tín dụng.
- SEO Spam như Hack từ khóa tiếng Nhật & Pharma Hack.
- Nhà cung cấp hosting vô hiệu hóa trang web của bạn.
- Đăng ký đen trên công cụ tìm kiếm.
- Spam nhiều người hơn.
- Trang web trở nên rất chậm và hiển thị thông báo lỗi.
- Quảng cáo và cửa sổ bật lên mở khi truy cập trang web.
- Mất niềm tin người dùng.
- Mất doanh thu.
- và nhiều hơn nữa!
PrestaShop bị hack: Các nguyên nhân có thể của hack PrestaShop?
1) PrestaShop bị hack: SQL Injection PrestaShop
SQL Injection trong PrestaShop là lỗ hổng phổ biến. Nó nghiêm trọng vì liên quan đến cơ sở dữ liệu. Điều này do bạn cung cấp đầu vào không được phép. Hệ quản trị CSDL sau đó thực thi truy vấn từ đầu vào và dẫn đến tiết lộ thông tin nhạy cảm. Có thể dẫn đến chiếm quyền hệ thống trong một số trường hợp. SQL Injection PrestaShop được báo cáo lần đầu năm 2014. PrestaShop 1.6.0 và các phiên bản khác được coi là dễ bị tấn công. Vấn đề nằm ở tham số id_manufacturer (id_fabricant).
https://example.com/ajax/getSimilarManufacturer.php?id_manufacturer=3[SQL-injection]Dòng code sau cho phép đầu vào không được phép sau id_manufacturer. Do đó, hacker có thể đọc cơ sở dữ liệu. Điều này xâm phạm bảo mật PrestaShop. Hơn nữa, để khai thác tự động, các công cụ như Sqlmap, Sqlninja v.v. được dùng.
Gần đây, một SQL Injection PrestaShop khác được phát hiện. PrestaShop (1.5.5.0 – 1.7.2.5) chịu đựng lỗ hổng này. Được đặt tên CVE-2018-8824. Hơn nữa, do mô-đun Responsive Mega Menu (Horizontal + Vertical + Dropdown) Pro. Vì vậy nếu bạn cài mô-đun này, hãy cập nhật ngay!
GET: http: //site/modules/bamegamenu/ajax_phpcode.php? Code = p (Db :: getInstance () -
> ExecuteS ("show tables"));
Mã sau trích xuất dữ liệu qua truy vấn ajax từ tham số dễ bị tấn công. Nó hiển thị các bảng trong cơ sở dữ liệu. Bằng cách thay thế "show statement" bằng "statement of choice", các thao tác trên database có thể thực hiện. Hacker do đó có thể đọc bảng nhạy cảm. Các bảng này tiết lộ thông tin đăng nhập. Bảo mật PrestaShop do đó bị vi phạm. Bảng điều khiển mở cho hack PrestaShop!
2) PrestaShop bị hack: Leo thang đặc quyền (Privilege Escalation)
Leo thang đặc quyền là vấn đề bảo mật nghiêm trọng liên quan đến PrestaShop. Xảy ra khi người dùng có đặc quyền admin thấp hơn được cấp đặc quyền cao hơn. Lỗ hổng leo thang đặc quyền cho bảo mật PrestaShop được báo cáo lần đầu 2011. Một lỗi gần đây được phát hiện 2018. Phiên bản PrestaShop trước 1.6.1.19 bị ảnh hưởng. Lỗ hổng gọi là CVE-2018-13784. Lỗi nằm ở mã hóa cookie người dùng bị lỗi. PrestaShop dùng mã hóa Blowfish/ECD hoặc AES qua openssl_encrypt(). Do đó, nó dễ bị tấn công oracle. Hơn nữa, điều này cho hacker khả năng đọc/ghi nội dung cookie PrestaShop. Do đó, có thể truy cập cookie không dành cho họ. Điều này dẫn đến leo thang đặc quyền. Hacker có thể:
● Truy cập bất kỳ phiên người dùng nào.
● Đánh cắp thông tin nhạy cảm như chi tiết thẻ tín dụng, v.v.
● Trở thành admin trang web và gây phá hoại!
Quá trình cấp cookie diễn ra trong ./classes/Cookie.php. Kịch bản khai thác lỗ hổng đã được phát hành trên www.exploit-db.com. Điều này đẩy nhanh quá trình hack PrestaShop trên toàn cầu.
3) PrestaShop bị hack: Vấn đề tương thích
Thường xuyên có vấn đề tương thích. Có thể do chạy PrestaShop trên cài đặt WordPress. WordPress tự cập nhật qua phiên bản mới. Ngược lại, đây là thực hành khá lành mạnh. Tuy nhiên, mâu thuẫn nằm ở cập nhật thất bại. Do đó, điều này được làm rõ thêm bằng cách xem quy trình cập nhật WordPress thất bại.
Bề mặt trông ổn nhưng thực tế không! WordPress vừa tạo bản sao .txt của file wp-config.php. Do đó, thông tin nhạy cảm database PrestaShop xuất hiện dưới dạng file text trên máy chủ. Có scanner chuyên dụng tìm file như vậy. Hacker có thể hack PrestaShop. Tất cả vì cài đặt WordPress kém. Vì vậy, vấn đề tương thích xảy ra thỉnh thoảng trong bảo mật PrestaShop.
4) PrestaShop bị hack: Thực thi mã từ xa (RCE)
Đây là kết quả của code bị lỗi. Cho phép hacker thực thi mã từ xa trên máy tính của bạn. Do đó, máy chủ có thể bị xâm phạm hoàn toàn. Lỗ hổng RCE được tìm thấy trong bảo mật PrestaShop năm nay. Được đặt tên CVE-2018-8823, tìm thấy trong mô-đun Responsive Mega Menu Pro. Phiên bản đến 1.0.32 dễ bị tấn công. Do hàm không xác định trong file modules / bamegamenu / ajax_phpcode.php. Tham số có thể sửa đổi để thực thi mã từ xa. Hơn nữa, không cần bất kỳ xác thực nào để khai thác.
5) PrestaShop bị hack: Mật khẩu yếu và quyền admin
Hoàn toàn có thể một từ đơn giản như admin có thể xâm phạm một doanh nghiệp lớn. Thường cài đặt mặc định bị bỏ qua. Hãy chắc chắn không cài đặt nào có mật khẩu mặc định. Hơn nữa, hãy chú ý admin root không hiển thị trên Internet. Điều này có thể dẫn đến rò rỉ file cài đặt nhạy cảm.
6) PrestaShop bị hack: Tải file tùy ý (Arbitrary File Upload)
Đôi khi, rào chắn không được triển khai. Do đó, PrestaShop cho phép tải file được thiết kế đặc biệt. Đây là vấn đề nghiêm trọng vì có thể xâm phạm trang web. Có thể dùng cài đặt phần mềm độc hại vào hệ thống. Hơn nữa, Google Dorks có sẵn để kiểm tra file dễ bị tấn công hàng loạt. Ví dụ:
inurl:"/modules/columnadverts2/"
hoặc
inurl:"/modules/columnadverts/"
Chỉ cần tìm Google các thuật ngữ này, có thể tìm máy chủ PrestaShop dễ bị tấn công. Không thể luôn đổ lỗi cho code kém. Có thể do quyền kém do bạn đặt.
7) PrestaShop bị hack: Khai thác XSS và Zero Day
Cross-Site Scripting XSS là một trong những lỗ hổng phổ biến nhất. Khai thác thành công hệ thống XSS có thể dẫn đến:
● Xâm phạm tài khoản admin.
● Truy cập cookie admin.
● Mã đánh cắp cookie độc hại trong bình luận.
● Tải mã độc lên hệ thống người dùng.
● Truy cập file và thông tin nhạy cảm.
Ngoài ra, khai thác zero day có thể xâm phạm trang web. Khai thác "zero day" cơ bản là lỗ hổng chưa báo cáo. Vì chưa báo cáo, không có bản vá. Giải pháp tốt nhất là tường lửa PrestaShop như Astra để trì hoãn hoặc ngăn chặn tấn công.
PrestaShop bị hack: Hack từ khóa tiếng Nhật và Pharma (SEO Spam)
Đây là kỹ thuật SEO mũ đen (Blackhat SEO) trong đó kết quả công cụ tìm kiếm trang web bị hack. Bot công cụ tìm kiếm như Google hoặc Bing sẽ crawl trang web như thể nó bằng tiếng Nhật hoặc liên quan Pharma. Bạn có thể phát hiện hack này bằng cách gõ truy vấn sau vào Google. Một số người nhầm lẫn spam SEO tiếng Nhật với ký tự tiếng Trung.
Site: example.com hoặc Site: example.com Japan hoặc Site: example.com viagra
Đây là ảnh chụp màn hình spam SEO tiếng Nhật và spam Pharma tiếng Nhật – Pharma Hack trong PrestaShop [/ caption]
Bạn có thể xem hướng dẫn chi tiết cách khắc phục spam SEO tiếng Nhật và Pharma Hack trong PrestaShop.
Dọn dẹp sau khi PrestaShop bị hack
1) Bảo mật PrestaShop: Chặn truy cập
Nếu PrestaShop bị hack, bắt đầu bằng cách chặn truy cập thư mục nhạy cảm. Có thể làm bằng cách tạo file .htaccess bên trong. Trong file này, viết:
Order Deny, Allow Deny from all Allow from 22.33.44.55
Đoạn code này từ chối truy cập file/thư mục. Ngoài ra, dòng cuối chỉ định IP được phép. Bạn cũng có thể thêm dải IP. Bạn cũng có thể muốn kiểm tra file .htaccess đã sửa đổi. Dọn dẹp chúng trước nếu hack PrestaShop.
2) Bảo mật PrestaShop: Kiểm tra quyền
Thứ hai, đảm bảo quyền đúng cho file. Đối với thư mục, chúng là 755 (rwxr-xr-x) và file 644 (rw-r - r--). Đảm bảo chúng được cấu hình đúng để tránh lạm dụng quyền truy cập file.
3) Bảo mật PrestaShop: Module độc hại (Rogue Modules)
Chúng tôi thấy trường hợp PrestaShop bị hack do plugin dễ bị tấn công. Cảnh giác với module lỗi hoặc cũ. Cập nhật hoặc thay thế. Luôn có lựa chọn khác.
4) Bảo mật PrestaShop: Mã hóa
Mã hóa giá trị đăng nhập trong bảng admin. Có thể tạo rào chắn thứ hai nếu database bị xâm phạm. Cũng dùng database riêng cho ứng dụng web khác trên cùng máy chủ.
5) Bảo mật PrestaShop: Mật khẩu
Dùng thông tin đăng nhập FTP và admin mạnh. Đừng dùng từ hoặc cụm từ phổ biến!
6) Bảo mật PrestaShop: Code không thể xâm nhập
Hacker cố gắng giấu code. Chúng làm bằng cách dùng mã hóa không đọc được bằng mắt người. Vì vậy, bạn nên tìm code ẩn dạng base64. Thủ công, như tìm kim trong rổ rơm. Một đoạn code đơn giản có thể làm việc.
find . -name "*.php" -exec grep "base64"'{}'\; -print &> weirdcode.txt
Code này tìm code mã hóa base64 và lưu vào weirdcode.txt. Từ đó, phân tích điều gì sai. Bạn có thể muốn tìm tên miền chuyển hướng như:
<li><a href="weird-domain.com">Something1</a></li>
Tìm trong file weirdcode.txt các tên miền phức tạp.
7) Bảo mật PrestaShop: Cập nhật và Sao lưu
Sao lưu tất cả file nếu chưa làm. Cập nhật thường xuyên. Cài đặt mới từ trang chính thức. Cập nhật các bản vá gần đây. Blog chính thức tốt nhất cho việc này.
8) Bảo mật PrestaShop: Tường lửa PrestaShop
Để tránh hack PrestaShop tương lai, dùng tường lửa. Tường lửa chặn truy cập trái phép vào hệ thống. Có tường lửa khá hay trên thị trường. Một số miễn phí, một số tốn giá một ly cà phê. Bạn cũng có thể dùng plugin cho mục đích này.
Kết luận
Hack PrestaShop có thể dẫn đến hủy diệt hoàn toàn doanh nghiệp. Bảo mật thương mại điện tử là vấn đề nhạy cảm. Dọn dẹp bế tắc do PrestaShop tạo ra là nhiệm vụ khổng lồ. Do đó, phòng ngừa tốt hơn chữa trị. Hãy dùng WAF hoặc giải pháp bảo mật để đẩy lùi hacker. Hơn nữa, cập nhật thường xuyên cài đặt và tiếp tục tìm hoạt động đáng ngờ. Hãy nhớ chuỗi không bao giờ mạnh hơn mắt xích yếu nhất.