Remote code execution không cần xác thực trong image handler của YOOtheme Pro cho Joomla từ yootheme.com

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-102785 là gì?

Lỗ hổng CVE-2026-102785 là lỗ hổng Unrestricted Upload of File with Dangerous Type ảnh hưởng tới YOOtheme Pro extension for Joomla (phiên bản bị ảnh hưởng: 5.0.0-5.0.52). Lỗ hổng này được xếp hạng ở mức Nghiêm trọng, với điểm CVSS 10. 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

Extension Joomla của yootheme.com, YOOtheme Pro 5.0.0-5.0.52, có lỗi thực thi mã từ xa không cần xác thực. Image transformation handler có thể truy cập công khai của YOOtheme Pro liên kết chưa đầy đủ các image operation đã được chuẩn hóa và output destination vào request signature. Kẻ tấn công từ xa không cần xác thực có thể tái sử dụng signature bị tiết lộ trong một public image URL hợp lệ, chèn thêm image operation, thoát khỏi cache directory dự kiến và ghi một PNG/PHP polyglot do kẻ tấn công kiểm soát vào một public media directory có thể thực thi.

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

  • YOOtheme Pro extension for Joomla của yootheme.com: các bản 5.0.0-5.0.52 được xác định là affected; default status của các bản không nằm trong phạm vi này là unaffected trong record CNA.
  • YOOtheme Pro 5.0.53: YOOtheme vendor changelog ghi nhận release này sửa lỗi unauthenticated remote code execution qua image handler.
  • Record CNA không xác định các affected branch hoặc fixed branch bổ sung. Không nên suy ra rằng mọi branch sau hoặc branch song song chưa được xác minh đều không bị ảnh hưởng.

Chi tiết kỹ thuật

YOOtheme Pro có một image transformation handler truy cập công khai và sử dụng request signature gắn với các yêu cầu xử lý ảnh. Lỗi xảy ra vì signature liên kết không đầy đủ với các image operation đã được chuẩn hóa và output destination. Kẻ tấn công từ xa không cần xác thực có thể tái sử dụng signature lộ trong một public image URL hợp lệ, chèn thêm image operation, đưa đích ghi ra ngoài cache directory dự kiến và ghi dữ liệu do mình kiểm soát vào public media directory có thể thực thi. PNG/PHP polyglot được ghi ra có thể dẫn đến server-side code execution nếu cấu hình web server và PHP xử lý vị trí đó như mã thực thi. Route, tên tham số, quy tắc đặt tên tệp và cấu hình thực thi cụ thể không được xác định trong bằng chứng hiện có; đây là lỗi phù hợp với CWE-434.

Khả năng khai thác

Lỗ hổng có thể bị khai thác từ xa qua mạng, không yêu cầu xác thực và không yêu cầu người dùng tương tác. Record mô tả độ phức tạp khai thác là thấp, nhưng kẻ tấn công vẫn cần truy cập được image handler công khai và có một public image URL hợp lệ làm lộ signature có thể tái sử dụng. Record được cung cấp không xác định liệu khai thác thực tế đã xảy ra hay chưa và không nêu public exploit cụ thể. Không có campaign, nạn nhân hoặc indicator cụ thể nào được xác nhận.

Tác động kỹ thuật

Tác động kỹ thuật trực tiếp là kẻ tấn công có thể khiến tệp do mình kiểm soát được ghi vào public media directory thay vì chỉ nằm trong cache directory dự kiến. Vì tệp được mô tả là PNG/PHP polyglot và vị trí đích có thể thực thi, kết quả có thể là server-side code execution nếu web server và PHP áp dụng quy tắc thực thi tại vị trí đó. Khi code execution xảy ra, confidentiality, integrity và availability trong phạm vi quyền của web-serving process có thể bị ảnh hưởng. Phạm vi thực tế phụ thuộc vào quyền process, cấu hình PHP/web server, filesystem isolation và kiến trúc Joomla; không có bằng chứng xác nhận quyền truy cập sang host khác hoặc leo thang đặc quyền.

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

Khai thác thành công có thể cho phép kẻ tấn công thực thi mã với quyền của web-serving process, tùy thuộc vào cấu hình server và quyền filesystem. Hệ quả có thể gồm thay đổi trái phép nội dung hoặc tệp của Joomla, truy cập dữ liệu mà process có quyền đọc, và làm gián đoạn dịch vụ. Việc ghi tệp vào public media directory cũng có thể tạo nội dung độc hại được phục vụ công khai. Bằng chứng không xác nhận tác động trên toàn máy chủ, các hệ thống khác hoặc việc leo thang đặc quyền ngoài quyền của process bị ảnh hưởng.

Cách khắc phục

  1. Cập nhật YOOtheme Pro lên 5.0.53, là release được YOOtheme ghi nhận đã sửa unauthenticated remote code execution qua image handler.
  2. Kiểm tra version thực tế trên từng Joomla site và xác minh quá trình cập nhật đã hoàn tất, đặc biệt với các site có public image transformation handler.
  3. Nếu chưa thể cập nhật ngay, bằng chứng hiện có không cung cấp workaround riêng từ vendor. Có thể áp dụng các compensating control phù hợp với deployment để hạn chế unauthenticated access tới image handler hoặc ngăn server-side execution trong public media directory, nhưng các biện pháp này không thay thế bản sửa.
  4. Nếu phát hiện tệp bất thường hoặc dấu hiệu code execution, xử lý site như một sự cố bảo mật, bảo toàn logs và artifacts để điều tra trước khi dọn dẹp. Trạng thái của các release branch chưa được xác minh vẫn cần được kiểm tra riêng.

Cách phát hiện

  1. Kiểm kê các Joomla site và xác định những site đang cài YOOtheme Pro.
  2. Kiểm tra version đã triển khai trên từng site và đối chiếu với các release boundary trong phần affected_summary; xác minh việc cập nhật lên release đã sửa lỗi.
  3. Rà soát application và web server logs cho các request unauthenticated tới image transformation handler, đặc biệt là việc tái sử dụng một signature với image operation hoặc output destination đã thay đổi, giá trị giống directory traversal, hoặc hoạt động ghi ra ngoài vị trí cache dự kiến. Đây là dấu hiệu cần điều tra, không phải IOC đã được vendor xác nhận.
  4. Kiểm tra public media directory và cache storage để tìm tệp mới hoặc bất thường, nhất là tệp có đặc điểm kết hợp nội dung PNG với PHP hoặc được server xử lý như mã thực thi.
  5. Nếu có thể, kiểm tra file-integrity và process logs để phát hiện server-side execution bắt nguồn từ public media location. Việc không thấy log hoặc tệp đáng ngờ không chứng minh hệ thống an toàn.
Nguồn (8)
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.