Frappe Framework bỏ qua kiểm soát truy cập REST API, làm lộ dữ liệu Linked DocType

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

Lỗ hổng CVE-2026-66003 là lỗ hổng Incorrect Authorization ảnh hưởng tới frappe (phiên bản bị ảnh hưởng: < 15.115.0). Lỗ hổng này được xếp hạng ở mức Cao, với điểm CVSS 7.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

Frappe là một framework ứng dụng web full-stack được viết bằng Python và JavaScript. Trước phiên bản 15.115.0, một lỗi bypass kiểm soát truy cập trong REST API cho phép người dùng đọc dữ liệu từ các Linked DocTypes mà họ không được phép truy cập. Khi một tài liệu tham chiếu tài liệu khác thông qua một Link field, framework không thực thi nhất quán quyền riêng của Linked DocType khi bản ghi được truy xuất qua REST API, vì vậy người dùng đã xác thực với quyền thấp có thể lấy được các field từ các bản ghi được liên kết nằm ngoài phạm vi được phép của họ. Vấn đề này được khắc phục trong phiên bản 15.115.0.

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

  • Gói frappe cho Python: các phiên bản < 15.115.0 được xác định là bị ảnh hưởng.
  • Lỗi nằm trong cơ chế REST API xử lý dữ liệu từ Linked DocTypes và các Link field.
  • Bản đã được vá được xác định là v15.115.0.
  • Bằng chứng hiện có không xác nhận trạng thái của các nhánh phát hành song song hoặc các sản phẩm tích hợp khác ngoài phạm vi trên.

Chi tiết kỹ thuật

Frappe không thực thi nhất quán quyền riêng của Linked DocType khi bản ghi được truy xuất qua REST API. Khi một tài liệu tham chiếu tài liệu khác bằng Link field, các field lấy từ tài liệu được liên kết có thể được trả về dù người dùng không có quyền truy cập trực tiếp vào DocType đó. Điều kiện khai thác được hỗ trợ bởi bằng chứng là tài khoản đã xác thực với quyền thấp và khả năng truy cập REST API qua mạng; không cần tương tác của người dùng khác. Đây là lỗi CWE-863: Incorrect Authorization, trong đó ranh giới kiểm soát truy cập của tài liệu gốc không bảo đảm được ranh giới của tài liệu được liên kết. Bằng chứng hiện có không nêu endpoint, tham số hoặc payload cụ thể, cũng không cho biết mọi kiểu truy vấn hoặc mọi cấu hình triển khai đều bị ảnh hưởng.

Khả năng khai thác

Lỗi có thể bị tiếp cận qua mạng thông qua REST API và yêu cầu kẻ tấn công đã đăng nhập bằng tài khoản có quyền thấp. Bằng chứng hiện có cho thấy không cần quyền quản trị, không cần tương tác của người dùng khác và điều kiện khai thác có độ phức tạp thấp. Kẻ tấn công có thể đọc các field từ Linked DocTypes nằm ngoài phạm vi được cấp quyền khi dữ liệu được trả về cùng bản ghi liên quan. Hồ sơ được cung cấp không xác nhận khai thác đang diễn ra hoặc một chiến dịch cụ thể. Không có public exploit được xác định trong hồ sơ; chi tiết endpoint, tham số và chuỗi request khai thác cũng chưa được công bố trong bằng chứng đã kiểm tra.

Tác động kỹ thuật

Tác động kỹ thuật chính là tiết lộ thông tin do người dùng đã xác thực có thể nhận được các field từ Linked DocTypes mà quyền của họ không cho phép truy cập trực tiếp. Lỗi phá vỡ kiểm tra authorization giữa tài liệu được truy xuất và tài liệu được tham chiếu, nhưng không cho thấy khả năng sửa dữ liệu hoặc ảnh hưởng tính sẵn sàng. Về tổ chức, dữ liệu bị lộ có thể dẫn đến vi phạm nguyên tắc least privilege, yêu cầu rà soát truy cập và đánh giá nghĩa vụ thông báo tùy loại dữ liệu thực tế. Phạm vi dữ liệu và mức độ phơi nhiễm cụ thể phụ thuộc vào các DocType, Link field và quyền được cấu hình trong từng triển khai.

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

Lỗi có thể làm lộ dữ liệu từ các bản ghi được liên kết cho người dùng không có quyền xem chúng.

  • Dữ liệu: Các field thuộc Linked DocTypes có thể bị tiết lộ ngoài phạm vi phân quyền dự kiến.
  • Quyền truy cập: Ranh giới giữa dữ liệu mà tài khoản được phép đọc và dữ liệu được tham chiếu gián tiếp có thể bị phá vỡ.
  • Vận hành và tuân thủ: Tổ chức có thể phải đánh giá lại các truy cập đã xảy ra, phạm vi dữ liệu có thể bị xem và nghĩa vụ xử lý sự cố nếu dữ liệu nhạy cảm nằm trong các field bị trả về.
  • Giới hạn: Bằng chứng mô tả tác động đọc dữ liệu; không xác nhận thay đổi dữ liệu hoặc làm gián đoạn dịch vụ.

Cách khắc phục

  1. Nâng cấp gói frappe lên v15.115.0, là bản sửa lỗi được xác nhận trong advisory và dữ liệu affected của hồ sơ.
  2. Sau khi nâng cấp, khởi động lại hoặc triển khai lại các thành phần Frappe theo quy trình vận hành của tổ chức, rồi xác minh phiên bản thực tế đang chạy trên mọi instance REST API.
  3. Thực hiện kiểm thử hồi quy quyền truy cập trên các DocType có Link field, bảo đảm permission của Linked DocType được áp dụng khi đọc dữ liệu qua REST API.
  4. Advisory của nhà cung cấp nêu rằng không có workaround; vì vậy không nên coi việc hạn chế tạm thời quyền người dùng là biện pháp thay thế cho bản vá nếu chưa được xác minh trong môi trường cụ thể.
  5. Đánh giá log truy cập trước khi vá để xác định các request của tài khoản quyền thấp có thể đã đọc field từ Linked DocTypes ngoài phạm vi được cấp quyền. Hồ sơ hiện có không cung cấp IOC cụ thể.

Cách phát hiện

  1. Kiểm kê các dịch vụ đang chạy Frappe và xác định những triển khai cho phép người dùng đã xác thực truy cập REST API.
  2. Kiểm tra phiên bản gói frappe trong từng môi trường và đối chiếu với ranh giới bị ảnh hưởng và bản sửa lỗi trong phần affected_summary.
  3. Lập danh sách các DocType có Link field, đặc biệt nơi người dùng có thể đọc tài liệu gốc nhưng không được đọc Linked DocType tương ứng.
  4. Rà soát log REST API như một biện pháp phòng ngừa, tìm các tài khoản quyền thấp đọc bản ghi có chứa field từ Linked DocType mà chúng không thường được phép truy cập. Đây là dấu hiệu cần điều tra, không phải IOC đã được nhà cung cấp xác nhận.
  5. Thực hiện kiểm thử hồi quy có kiểm soát để xác minh permission của Linked DocType vẫn được áp dụng khi dữ liệu được truy xuất qua REST API. Việc không thấy request phù hợp trong log không chứng minh hệ thống an toàn.
Nguồn (12)
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