Cross-site scripting lưu trữ trong chức năng tải logo của Bludit

Lưu ý: Dữ liệu này chỉ có tính chất tham khảo, phục vụ nghiên cứu an ninh mạng.CyStack khuyến nghị người dùng không sử dụng các thông tin này nhằm các mục đích bất hợp pháp

Lỗ hổng CVE-2026-72576 là gì?

Lỗ hổng CVE-2026-72576 là lỗ hổng Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') ảnh hưởng tới Bludit (phiên bản bị ảnh hưởng: 4.0.0-beta). Lỗ hổng này được xếp hạng ở mức Trung bình, với điểm CVSS 5.4. Các nguồn hiện có chưa ghi nhận lỗ hổng này bị khai thác.

Giới thiệu chung

Dữ liệu gốc

Một lỗ hổng cross-site scripting (XSS) dạng lưu trữ trong Bludit 4.0.0-beta cho phép người dùng đã xác thực với đặc quyền thấp (vai trò Author) chèn JavaScript tùy ý bằng cách tải lên một tệp SVG được tạo thủ công làm logo trang web. Thẻ script được lưu trong SVG sẽ thực thi trong trình duyệt của bất kỳ người dùng nào tải logo.

Sản phẩm và phạm vi ảnh hưởng

  • Sản phẩm bị ảnh hưởng: Bludit của vendor Bludit.
  • Bản phát hành bị ảnh hưởng: 4.0.0-beta với trạng thái affected theo semver.
  • Trạng thái mặc định của các triển khai khác là unknown trong bản ghi.
  • Không có nhánh bổ sung nào được xác nhận là bị ảnh hưởng hoặc không bị ảnh hưởng, và bản ghi không cung cấp phiên bản đã sửa.

Chi tiết kỹ thuật

Lỗi nằm trong luồng tải logo trang web, tại component được tham chiếu là bl-kernel/ajax/logo-upload.php. Người dùng đã xác thực với vai trò Author có thể cung cấp một tệp SVG do họ kiểm soát làm logo; nội dung JavaScript trong SVG được lưu lại thay vì bị loại bỏ. Khi logo được tải trong trình duyệt, thẻ script đã lưu sẽ thực thi trong ngữ cảnh trình duyệt của người dùng đó. Khai thác cần truy cập qua mạng, tài khoản có quyền thấp và một người dùng khác tải logo, phù hợp với bản chất stored XSS. Mã nguồn được tham chiếu kiểm tra phần mở rộng và MIME type trước khi chuyển tệp vào thư mục upload, nhưng bằng chứng hiện có không xác nhận việc sanitize nội dung SVG trong bản phát hành bị ảnh hưởng. Ngữ cảnh chính xác của trình duyệt và mọi giới hạn do CSP áp dụng vẫn chưa được xác định.

Khả năng khai thác

Lỗ hổng có thể bị khai thác từ xa thông qua giao diện web và yêu cầu kẻ tấn công đã xác thực bằng tài khoản có khả năng tải hoặc thay đổi logo trang web. Hồ sơ mô tả độ phức tạp thấp, nhưng cần người dùng khác tải logo để JavaScript được thực thi. Bản ghi được cung cấp không xác định public exploit; trạng thái khai thác thực tế cũng chưa được thiết lập. Việc không có thông tin khai thác công khai không chứng minh rằng hệ thống không thể bị khai thác.

Tác động kỹ thuật

Khai thác thành công dẫn đến thực thi JavaScript trong ngữ cảnh trình duyệt nơi logo được tải, không trực tiếp dẫn đến thực thi mã phía máy chủ. Stored XSS có thể lặp lại với mỗi người dùng tải logo cho đến khi nội dung độc hại được thay thế hoặc loại bỏ. Quyền của nạn nhân có thể giới hạn dữ liệu và thao tác mà script truy cập được; bản ghi hỗ trợ tác động thấp đến tính bí mật và tính toàn vẹn, đồng thời không xác định tác động đến tính sẵn sàng. Bằng chứng hiện có không thiết lập việc chiếm quyền quản trị, xâm nhập máy chủ hoặc một kết quả đánh cắp dữ liệu cụ thể.

Tác động đến tổ chức

Lỗ hổng có thể khiến JavaScript độc hại được thực thi trong trình duyệt của người dùng truy cập trang có logo bị chèn. Tùy quyền của nạn nhân và các biện pháp bảo vệ bổ sung, script có thể đọc dữ liệu mà trình duyệt được phép truy cập hoặc thực hiện các thao tác thay mặt phiên đăng nhập của nạn nhân. Vì payload được lưu trữ, cùng một nội dung có thể ảnh hưởng đến nhiều người dùng cho đến khi logo được thay thế hoặc loại bỏ. Bằng chứng hiện có không xác nhận việc xâm nhập máy chủ, mất khả dụng dịch vụ hoặc một sự cố rò rỉ dữ liệu cụ thể.

Cách khắc phục

  1. Ưu tiên nâng cấp: áp dụng bản phát hành được vendor xác nhận đã sửa khi bản đó có sẵn. Bản ghi hiện không nêu phiên bản cố định, vì vậy không được tự động coi các nhánh hoặc bản phát hành mới hơn là an toàn.
  2. Biện pháp tạm thời: hạn chế quyền của tài khoản Author đối với chức năng thay đổi logo hoặc tạm vô hiệu hóa luồng tải logo nếu môi trường cho phép. Đây là biện pháp bù trừ, không phải bản sửa lỗi đã được vendor xác nhận.
  3. Rà soát và thay thế các logo hiện có bằng nội dung đáng tin cậy, đặc biệt những logo được tải lên bởi tài khoản có đặc quyền thấp.
  4. Nếu vẫn cần hỗ trợ SVG, bổ sung kiểm tra nội dung và sanitize SVG trước khi lưu hoặc phục vụ cho trình duyệt. Không nên chỉ dựa vào phần mở rộng tệp hoặc MIME type để ngăn JavaScript trong SVG.

Cách phát hiện

  1. Kiểm kê các triển khai Bludit và xác định những hệ thống cho phép tài khoản Author truy cập chức năng tải logo trang web.
  2. Kiểm tra logo hiện tại và các logo gần đây để xác định tệp SVG, đặc biệt là nội dung có thẻ script hoặc JavaScript được nhúng.
  3. Rà soát lịch sử thay đổi logo và các sự kiện upload liên quan đến component bl-kernel/ajax/logo-upload.php, nếu hệ thống có ghi nhận các sự kiện này.
  4. Kiểm tra các phản hồi hoặc yêu cầu tải logo bất thường từ giao diện quản trị và giao diện công khai. Đây là biện pháp giám sát phòng ngừa, không phải IOC đã được xác nhận.
  5. Không xem việc thiếu log phù hợp là bằng chứng hệ thống an toàn.
Nguồn (22)
Tìm hiểu thêm

Kiểm tra chuyên sâu cùng giải pháp quản lý rủi ro Web toàn diện

Giải pháp CyStack VulnScan liên tục phát hiện tài sản, xác minh lỗ hổng và giúp đội ngũ bảo mật ưu tiên khắc phục cho toàn bộ doanh nghiệp.

Khám phá các giải pháp khác liên quan