WordPress là CMS phổ biến nhất trên web. Theo w3tech, nó được sử dụng bởi khoảng 30% trong số tất cả các website trên...
WordPress là CMS phổ biến nhất trên web. Theo w3tech, nó được sử dụng bởi khoảng 30% trong số tất cả các website trên thế giới. Việc áp dụng rộng rãi này làm cho nó trở thành một mục tiêu thú vị cho bọn tội phạm mạng. Gần đây, nhà nghiên cứu bảo mật phát hiện một lỗ hổng xóa tập tin tùy ý tồn tại trong WordPress có thể dẫn đến kẻ tấn công thực thi mã tùy ý. Lỗ hổng này được báo cáo cách đây 7 tháng với nhóm bảo mật WordPress nhưng vẫn chưa được vá. Thời gian dài trôi qua kể từ khi báo cáo ban đầu, WordPress không có bất kỳ bản vá hoặc kế hoạch cụ thể nào liên quan tới lỗ hổng này.
Tính tới thời điểm hiện tại, tất cả các phiên bản WordPress (bao gồm phiên bản mới nhất 4.9.6) đều chịu ảnh hưởng bởi lỗ hổng này.
Để khai thác lỗ hổng, kẻ tấn công cần phải có được các quyền để chỉnh sửa và xóa các tập tin media trước. Thật may mắn rằng, để làm được điều này, bạn phải có vai trò là "author" trong WordPress.
Khai thác lỗ hổng này cho phép kẻ tấn công khả năng xóa bất kỳ tệp nào của quá trình cài đặt WordPress . Bên cạnh khả năng xóa toàn bộ cài đặt WordPress, có thể có hậu quả nghiêm trọng nếu không có bản sao lưu hiện tại, kẻ tấn công có thể sử dụng khả năng xóa tệp tùy ý để phá vỡ một số biện pháp bảo mật và thực thi mã tùy ý trên máy chủ web. Chính xác hơn, các tệp sau có thể bị xóa:
.htaccess: Nói chung, xóa tệp này không có bất kỳ hậu quả bảo mật nào. Tuy nhiên, trong một số trường hợp, tệp .htaccess chứa các ràng buộc liên quan đến bảo mật (ví dụ: các ràng buộc truy cập vào một số thư mục). Việc xóa tệp này sẽ hủy kích hoạt các ràng buộc bảo mật đó.
index.php file
wp-config.php: Xóa tập tin cài đặt WordPress này sẽ kích hoạt quá trình cài đặt WordPress trong lần truy cập tiếp theo vào trang web. Điều này là do thực tế là wp-config.php chứa thông tin đăng nhập cơ sở dữ liệu và không có sự hiện diện của nó, WordPress hoạt động như thể nó chưa được cài đặt. Kẻ tấn công có thể xóa tệp này, trải qua quá trình cài đặt với thông tin đăng nhập của anh ta cho tài khoản quản trị viên và cuối cùng, thực thi mã tùy ý trên máy chủ.
Demo
Hiện tại, do không có bản vá chính thức từ WordPress, nhưng nhà nghiên cứu bảo mật này đã hướng dẫn bạn cách để khắc phục lỗ hổng này như sau:
Thêm đoạn code dưới đây vào file functions.php
Hiện tại, do không có bản vá chính thức từ WordPress, nhưng nhà nghiên cứu bảo mật này đã hướng dẫn bạn cách để khắc phục lỗ hổng này như sau:
Thêm đoạn code dưới đây vào file functions.php
Mã:
add_filter( 'wp_update_attachment_metadata', 'rips_unlink_tempfix' ); function rips_unlink_tempfix( $data ) { if( isset($data['thumb']) ) { $data['thumb'] = basename($data['thumb']); } return $data; }
Nguồn: ripstech
COMMENTS