Lỗ hổng tải tệp không hạn chế trong WSO2 API Manager có thể dẫn đến thực thi mã từ xa

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

Lỗ hổng CVE-2026-3418 là lỗ hổng Unrestricted Upload of File with Dangerous Type ảnh hưởng tới WSO2 API Manager (phiên bản bị ảnh hưởng: 4.4.0 – < 4.4.0.67, 4.5.0 – < 4.5.0.52 và các phiên bản bị ảnh hưởng khác), WSO2 Traffic Manager (phiên bản bị ảnh hưởng: 4.5.0 – < 4.5.0.51 và 4.6.0 – < 4.6.0.16), WSO2 API Control Plane (phiên bản bị ảnh hưởng: 4.5.0 – < 4.5.0.53 và 4.6.0 – < 4.6.0.17) và 4 sản phẩm khác. Lỗ hổng này được xếp hạng ở mức Nghiêm trọng, với điểm CVSS 9.1. 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

System REST API tiếp nhận các tệp tải lên do người dùng cung cấp nhưng không thực thi việc kiểm tra đầy đủ đối với loại tệp hoặc đích đến, cho phép tệp được ghi vào các vị trí bất kỳ mà máy chủ có thể truy cập. Việc khai thác yêu cầu quyền truy cập quản trị đã xác thực cùng quyền publisher. Khai thác thành công cho phép một publisher đã xác thực tải tệp lên các vị trí mà máy chủ có thể truy cập. Tùy thuộc vào môi trường triển khai và cách các tệp được tải lên được xử lý, điều này có thể dẫn đến việc thực thi nội dung đã tải lên, có khả năng gây ra remote code execution.

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

  • WSO2 API Manager: affected trên nhánh 4.4.0 với các phiên bản nhỏ hơn 4.4.0.67; nhánh 4.5.0 với các phiên bản nhỏ hơn 4.5.0.52; và nhánh 4.6.0 với các phiên bản nhỏ hơn 4.6.0.16. Trạng thái mặc định được ghi nhận là unaffected.
  • WSO2 Traffic Manager: affected trên nhánh 4.5.0 với các phiên bản nhỏ hơn 4.5.0.51 và nhánh 4.6.0 với các phiên bản nhỏ hơn 4.6.0.16. Trạng thái mặc định được ghi nhận là unaffected.
  • WSO2 API Control Plane: affected trên nhánh 4.5.0 với các phiên bản nhỏ hơn 4.5.0.53 và nhánh 4.6.0 với các phiên bản nhỏ hơn 4.6.0.17. Trạng thái mặc định được ghi nhận là unaffected.
  • WSO2 Universal Gateway: affected trên nhánh 4.5.0 với các phiên bản nhỏ hơn 4.5.0.52 và nhánh 4.6.0 với các phiên bản nhỏ hơn 4.6.0.16. Trạng thái mặc định được ghi nhận là unaffected.
  • Package org.wso2.carbon.apimgt:org.wso2.carbon.apimgt.impl: affected trên các nhánh 9.30.67 nhỏ hơn 9.30.67.156, 9.31.86 nhỏ hơn 9.31.86.141 và 9.32.147 nhỏ hơn 9.32.147.44. Trạng thái mặc định là unknown; dữ liệu CNA được trả về cũng ghi nhận 9.33.104 là unaffected với giới hạn trên mở.
  • Package org.wso2.carbon.apimgt:org.wso2.carbon.apimgt.rest.api.publisher.v1.common: có cùng các nhánh affected và ranh giới nêu trên; trạng thái mặc định là unknown, và 9.33.104 được ghi nhận là unaffected với giới hạn trên mở.
  • Package org.wso2.carbon.apimgt:org.wso2.carbon.apimgt.api: affected trên nhánh 9.30.67 nhỏ hơn 9.30.67.156; trạng thái mặc định là unknown, và 9.33.104 được ghi nhận là unaffected với giới hạn trên mở.

Chi tiết kỹ thuật

Lỗ hổng nằm trong System REST API, nơi tệp do người dùng cung cấp được tiếp nhận nhưng không được kiểm tra đầy đủ về loại tệp hoặc đích ghi. Nội dung tệp và vị trí ghi do người dùng kiểm soát ở mức đủ để cho phép ghi tệp vào các vị trí mà máy chủ có thể truy cập trong deployment. Điều kiện khai thác là tài khoản đã xác thực có quyền quản trị và quyền publisher. Đây là dạng CWE-434, Unrestricted Upload of File with Dangerous Type. Tùy cách deployment lưu trữ và xử lý tệp, nội dung được tải lên có thể bị thực thi và dẫn đến remote code execution. Bằng chứng công khai không nêu chi tiết logic validation, ánh xạ chính xác đến filesystem hoặc cơ chế thực thi.

Khả năng khai thác

  • Lỗ hổng có thể được truy cập qua mạng thông qua System REST API.
  • Khai thác yêu cầu tài khoản đã xác thực với quyền quản trị và publisher; không cần thêm tương tác của người dùng sau khi điều kiện này được đáp ứng.
  • Bản ghi được cung cấp đánh dấu public_exploit là false và không cung cấp exploit, campaign hoặc exploit steps công khai.
  • CISA enrichment được trả về trong dữ liệu nghiên cứu ghi nhận exploitation là none và automatable là no; đây là đánh giá tại thời điểm ghi nhận, không chứng minh rằng việc khai thác trong tương lai là không thể.

Tác động kỹ thuật

Khai thác thành công cho phép publisher đã xác thực ghi tệp tùy ý vào các vị trí mà máy chủ có thể truy cập. Nếu nội dung tại vị trí đó được deployment xử lý hoặc thực thi, tác động kỹ thuật có thể mở rộng thành remote code execution với khả năng ảnh hưởng đến dữ liệu, mã ứng dụng và tính sẵn sàng của dịch vụ. Lỗ hổng không tự nó cung cấp tài khoản ban đầu, vì điều kiện tiên quyết là quyền quản trị và publisher đã xác thực. Phạm vi tác động thực tế phụ thuộc vào quyền của tiến trình, vị trí ghi có thể truy cập và cách deployment xử lý tệp. Bản ghi không xác nhận việc thực thi xảy ra trong mọi cấu hình.

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

Lỗ hổng có thể cho phép một publisher đã xác thực đưa tệp tùy ý vào các vị trí mà máy chủ có thể truy cập. Nếu deployment xử lý nội dung tại vị trí đó như mã hoặc tài nguyên thực thi, hậu quả có thể mở rộng thành remote code execution. Khi đó, tính toàn vẹn của máy chủ hoặc dịch vụ có thể bị ảnh hưởng, dịch vụ có thể bị gián đoạn và dữ liệu có thể bị truy cập tùy theo quyền của tiến trình và kiến trúc deployment. Điều kiện yêu cầu quyền publisher và quản trị, vì vậy việc bảo vệ các tài khoản đặc quyền vẫn là một kiểm soát quan trọng. Bản ghi không xác nhận một vụ xâm nhập hoặc tổ chức nạn nhân cụ thể.

Cách khắc phục

  1. Đối với bản phân phối WSO2 có hỗ trợ subscription, cập nhật đến update level do WSO2 chỉ định hoặc cao hơn: API Control Plane 4.6.0 update 17 hoặc 4.5.0 update 53; API Manager 4.6.0 update 16, 4.5.0 update 52 hoặc 4.4.0 update 67; Traffic Manager 4.6.0 update 16 hoặc 4.5.0 update 51; Universal Gateway 4.6.0 update 16 hoặc 4.5.0 update 52.
  2. Với bản Community hoặc Open Source, áp dụng bản sửa lỗi carbon-apimgt tương ứng do WSO2 cung cấp và xác minh rằng bản sửa lỗi bao phủ đúng nhánh sản phẩm và package đang triển khai.
  3. Nếu chưa thể áp dụng bản sửa lỗi, chuyển sang phiên bản WSO2 được xác nhận là unaffected cho đúng sản phẩm và nhánh. Không nên suy luận rằng mọi nhánh phát hành song song hoặc mọi phiên bản mới hơn đều an toàn nếu chưa được đối chiếu với dữ liệu affected.
  4. Với các package được liệt kê trong affected_summary, kiểm tra phiên bản thực tế và đưa từng package ra khỏi khoảng affected; đặc biệt cần xác nhận mapping giữa package và update level của sản phẩm.
  5. Trong thời gian chờ cập nhật, áp dụng defense in depth bằng cách giới hạn quyền publisher và hạn chế khả năng truy cập mạng đến System REST API ở các nguồn thực sự cần thiết. Đây là biện pháp giảm rủi ro tạm thời, không thay thế bản sửa lỗi.

Cách phát hiện

  1. Kiểm kê các deployment đang chạy WSO2 API Manager, WSO2 Traffic Manager, WSO2 API Control Plane, WSO2 Universal Gateway và các package Carbon API Management liên quan; đối chiếu từng nhánh với các ranh giới trong mục affected_summary.
  2. Kiểm tra việc System REST API có được công khai hoặc có thể truy cập từ các mạng không cần thiết hay không, đồng thời rà soát tài khoản có quyền publisher và quyền quản trị.
  3. Rà soát audit log và application log để tìm các request đã xác thực của publisher đến các chức năng upload của System REST API, cùng tên tệp hoặc đích ghi nếu hệ thống có ghi nhận các trường này. Đây là biện pháp theo dõi phòng ngừa, không phải IOC đã được WSO2 công bố.
  4. Kiểm tra các vị trí mà máy chủ có thể truy cập để phát hiện tệp mới hoặc bất thường, rồi đối chiếu với thời điểm hoạt động của tài khoản publisher. Không có log hoặc tệp đáng ngờ không chứng minh hệ thống an toàn.
  5. Xác minh update level của sản phẩm và phiên bản package thực tế sau khi khắc phục.
Nguồn (16)
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.