Lỗ hổng được phát hiện
Bản cập nhật bảo mật ACF 6.2.5 nhắc nhở về sự thay đổi quan trọng trong cách xử lý việc nhúng và đầu ra HTML không an toàn bằng ACF shortcode. Điều này có thể gây ra sự cố cho các trang web sử dụng shortcode để hiển thị các phần tử HTML phức tạp như scripts hoặc iframes.
Sự độc đáo và phức tạp của bản cập nhật
Bản cập nhật bảo mật này đặc biệt bởi vì thông thường, các nhà nghiên cứu bảo mật sẽ báo cho nhà xuất bản plugin WordPress về lỗ hổng và nhà xuất bản sẽ thực hiện cập nhật một cách yên lặng để khắc phục vấn đề. Tuy nhiên, trường hợp này lại phức tạp hơn vì khả năng gây ra sự cố cho trang web. Do đó, ACF đã quyết định thông báo về bản cập nhật bảo mật và cảnh báo người dùng về các vấn đề tiềm ẩn gây ra bởi bản cập nhật này.
Lịch trình cập nhật bảo mật
Vì tính phức tạp của việc khắc phục lỗ hổng này, ACF quyết định phát hành một bản cập nhật bảo mật thứ hai vào tháng 2 năm 2024, phiên bản 6.2.7. Điều này sẽ cung cấp thêm thời gian cho người dùng plugin chuẩn bị và giảm thiểu khả năng gây ra sự cố do các thay đổi tiềm ẩn.
Mô tả về lỗ hổng
Lỗi bảo mật này cho phép người dùng với vai trò contributor, thường bị hạn chế khỏi việc đăng HTML chưa qua lọc, để chèn mã độc hại. Vấn đề này bypass các giao thức vệ sinh tiêu chuẩn của ACF, tạo ra một nguy cơ an ninh tiềm ẩn.
Hướng dẫn cho các nhà phát triển
Nhà phát triển được khuyến cáo cẩn trọng khi xử lý đầu ra HTML. Trong những trường hợp cần thiết, như hiển thị HTML chưa qua lọc, như các thẻ script, việc sử dụng 'echo get_field()' được đề xuất. Đối với các trường hợp khác, việc áp dụng các hàm thoát phù hợp, như 'wp_kses_post', được khuyến nghị.