Giả mạo yêu cầu phía máy chủ trong Recipe Action Trigger của mealie-recipes Mealie

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

Lỗ hổng CVE-2026-94028 là lỗ hổng Server-Side Request Forgery (SSRF) ảnh hưởng tới Mealie (phiên bản bị ảnh hưởng: 3.25.0 và 3.25.1). Lỗ hổng này được xếp hạng ở mức Trung bình, với điểm CVSS 5.3. Lỗ hổng này đã có mã hoặc bằng chứng khai thác công khai, nhưng điều đó chưa xác nhận việc khai thác trong thực tế.

Giới thiệu chung

Dữ liệu gốc

Đã xác định một điểm yếu trong mealie-recipes Mealie đến hết phiên bản 3.25.1. Thành phần bị ảnh hưởng là hàm payload.model_dump trong tệp mealie/routes/households/controller_group_recipe_actions.py của Recipe Action Trigger. Việc thao túng tham số url có thể dẫn đến server-side request forgery. Cuộc tấn công có thể được thực hiện từ xa. Exploit đã được công khai và có thể được sử dụng để tấn công. Nâng cấp lên phiên bản 3.26.0 có thể khắc phục vấn đề này. Bản vá này có tên fb221afa258c8dd2c4ac95b1996c33ef9db3f477. Thành phần bị ảnh hưởng nên được nâng cấp.

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

  • mealie-recipes Mealie, Recipe Action Trigger: phiên bản 3.25.0 và 3.25.1 được liệt kê là affected.
  • Mô tả nguồn xác định phạm vi affected là Mealie đến hết phiên bản 3.25.1.
  • Phiên bản 3.26.0 được xác định là bản sửa lỗi. Bằng chứng hiện có không xác nhận trạng thái của các nhánh song song hoặc mọi phiên bản phát hành sau đó, vì vậy không nên tự động suy ra một phạm vi mở rộng hơn.

Chi tiết kỹ thuật

Lỗi nằm trong component Recipe Action Trigger, tại hàm payload.model_dump của tệp mealie/routes/households/controller_group_recipe_actions.py. Tham số url do người dùng kiểm soát được đưa vào luồng gửi yêu cầu HTTP phía máy chủ. Báo cáo của maintainer cho biết trình xác thực hiện tại chỉ kiểm tra scheme http hoặc https, không kiểm tra địa chỉ IP riêng tư, loopback, link-local, metadata hoặc allowlist hostname; đường dẫn này cũng không sử dụng lớp bảo vệ SSRF hiện có. Vì vậy, máy chủ Mealie có thể gửi HTTP POST đến các đích ngoài dự kiến, bao gồm dịch vụ nội bộ hoặc hệ thống có thể truy cập từ mạng của máy chủ. Cuộc tấn công cần một tài khoản Mealie đã xác thực nhưng không yêu cầu quyền quản trị theo báo cáo kỹ thuật. Phản hồi từ đích đến bị loại bỏ bởi tác vụ nền, do đó mức độ thu thập dữ liệu trực tiếp qua phản hồi ứng dụng còn phụ thuộc vào hành vi của dịch vụ đích; bản ghi không xác nhận một kết quả cụ thể trên mọi môi trường.

Khả năng khai thác

Khả năng tiếp cận: Có thể khai thác từ xa qua các chức năng Recipe Action Trigger của Mealie.

Xác thực: Kẻ tấn công cần tài khoản Mealie đã xác thực. Báo cáo kỹ thuật cho biết tài khoản thông thường, không có quyền quản trị, là đủ.

Độ phức tạp và tương tác: Bản ghi đánh giá điều kiện khai thác là đơn giản và không cần người dùng khác tương tác. Kẻ tấn công vẫn phải có khả năng tạo và kích hoạt recipe action.

Tình trạng khai thác: Bản ghi cho biết exploit đã được công khai, và issue của maintainer có mô tả proof of concept. Bằng chứng được cung cấp không xác nhận hoạt động khai thác trong thực tế, chiến dịch cụ thể hoặc nạn nhân cụ thể.

Tác động kỹ thuật

Lỗi cho phép một người dùng đã xác thực điều khiển đích đến của yêu cầu HTTP do máy chủ Mealie khởi tạo, mở rộng phạm vi tiếp cận từ ứng dụng sang mạng mà máy chủ có thể truy cập. Hậu quả kỹ thuật chính là nguy cơ tiết lộ thông tin từ dịch vụ nội bộ hoặc cloud metadata; trong một số môi trường, thông tin lấy được có thể hỗ trợ truy cập tiếp vào tài nguyên khác. Việc gửi POST đến dịch vụ nội bộ cũng có thể tạo ra tác động thay đổi trạng thái nếu dịch vụ đó chấp nhận yêu cầu, nhưng bản ghi không chứng minh được hành vi này. Lỗi không tự nó chứng minh khả năng thực thi mã trên Mealie, và mức độ ảnh hưởng bị giới hạn bởi quyền mạng, xác thực và logic của hệ thống đích.

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

Một tài khoản Mealie đã xác thực có thể biến máy chủ ứng dụng thành điểm trung gian để gửi yêu cầu đến các hệ thống mà tài khoản đó không thể truy cập trực tiếp. Tùy kiến trúc triển khai, việc này có thể làm lộ dịch vụ quản trị nội bộ, cloud metadata hoặc thông tin định danh tạm thời được cung cấp bởi metadata service. Các dịch vụ nội bộ chấp nhận HTTP POST cũng có thể thực hiện thay đổi nếu yêu cầu đáp ứng điều kiện của chúng, nhưng bản ghi không xác nhận việc thay đổi trạng thái thành công. Mức độ ảnh hưởng thực tế phụ thuộc vào quyền truy cập mạng của máy chủ Mealie và cách các dịch vụ đích xử lý yêu cầu.

Cách khắc phục

  1. Nâng cấp Mealie lên đúng phiên bản 3.26.0, là phiên bản được bản ghi xác định có thể khắc phục lỗi. Không tự động diễn giải thông tin này thành mọi phiên bản mới hơn hoặc mọi nhánh song song đều đã được xác minh.
  2. Nếu chưa thể nâng cấp, áp dụng kiểm soát egress ở cấp mạng để ngăn máy chủ Mealie truy cập các dải private, loopback, link-local, reserved và cloud metadata không cần thiết. Đây chỉ là biện pháp giảm thiểu và không thay thế bản cập nhật.
  3. Hạn chế quyền tạo và kích hoạt Recipe Action Trigger cho nhóm người dùng tin cậy, đồng thời rà soát và xóa các recipe action đang trỏ đến đích nội bộ hoặc đích không được phê duyệt.
  4. Sau khi cập nhật, kiểm tra lại cấu hình outbound HTTP và giám sát các yêu cầu bất thường từ máy chủ Mealie để xác nhận biện pháp phòng vệ đã áp dụng đúng.

Cách phát hiện

  1. Kiểm kê các phiên bản Mealie đang chạy và xác định những hệ thống có bật hoặc sử dụng Recipe Action Trigger. Các phiên bản được liệt kê là affected cần được xem xét là phơi nhiễm.
  2. Kiểm tra cấu hình recipe action hiện có, đặc biệt các giá trị url trỏ đến 127.0.0.1, 169.254.169.254, địa chỉ mạng riêng, loopback, link-local, metadata hoặc hostname nội bộ bất thường.
  3. Rà soát access log cho các thao tác tạo và kích hoạt recipe action bởi tài khoản không mong đợi, cùng các lần sử dụng bất thường của chức năng này.
  4. Rà soát network telemetry của máy chủ Mealie để tìm HTTP POST đến mạng riêng, địa chỉ reserved, link-local hoặc dịch vụ cloud metadata. Đâ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. Việc không tìm thấy log phù hợp không chứng minh hệ thống an toàn, vì tác vụ gửi yêu cầu được thực hiện ở background và phản hồi bị loại bỏ.
Nguồn (20)
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á CyStack VulnScan