CVE-2026-94028
Received Received - Intake

Server-Side Request Forgery in Mealie Recipe Actions

Vulnerability report for CVE-2026-94028, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-20

Last updated on: 2026-09-20

Assigner: VulDB

Description

A weakness has been identified in mealie-recipes Mealie up to 3.25.1. Affected is the function payload.model_dump of the file mealie/routes/households/controller_group_recipe_actions.py of the component Recipe Action Trigger. Executing a manipulation of the argument url can lead to server-side request forgery. The attack can be executed remotely. The exploit has been made available to the public and could be used for attacks. Upgrading to version 3.26.0 is able to address this issue. This patch is called fb221afa258c8dd2c4ac95b1996c33ef9db3f477. The affected component should be upgraded.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-20
Last Modified
2026-09-20
Generated
2026-09-20
AI Q&A
2026-09-20
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 3 associated CPEs
Vendor Product Version / Range
mealie-recipes mealie to 3.25.1 (inc)
mealie-recipes mealie 3.26.0
mealie-recipes mealie to 3.26.0 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-918 The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-94028 is a Server-Side Request Forgery (SSRF) vulnerability in Mealie up to version 3.25.1. It allows authenticated users to trigger recipe actions with arbitrary URLs, causing the server to make POST requests to those URLs without proper SSRF protections. The vulnerability bypasses existing security measures that block requests to private or reserved IP ranges.

Detection Guidance

To detect this SSRF vulnerability in Mealie, monitor network traffic for unauthorized outbound requests from the Mealie server to internal or private IP ranges. Check logs for recipe actions or webhooks triggering POST requests to unexpected URLs. Use network scanning tools like nmap to identify if Mealie is making requests to internal services or cloud metadata endpoints (e.g., 169.254.169.254 for AWS).

Commands to check for suspicious activity: 1) Inspect Mealie logs for outgoing HTTP requests: grep -r 'POST' /var/log/mealie/ or docker logs <mealie-container>. 2) Use tcpdump or Wireshark to capture outbound traffic from the Mealie server: tcpdump -i any host <mealie-server-ip> and port 80 or 443. 3) Check for DNS rebinding attempts by analyzing DNS logs for repeated resolutions of the same domain to different IPs.

Impact Analysis

An attacker could exploit this to access internal services, retrieve cloud metadata like AWS IMDS credentials, or interact with private network hosts. The impact is severe in cloud deployments where metadata endpoints return sensitive credentials. The exploit requires only authenticated user access, not admin privileges.

Compliance Impact

This SSRF vulnerability could lead to unauthorized access to internal services or cloud metadata endpoints, potentially exposing sensitive data such as IAM credentials. For GDPR, this may violate data protection principles by enabling unauthorized data access. For HIPAA, it could risk exposing protected health information if internal systems are compromised.

Mitigation Strategies

Immediately upgrade Mealie to version 3.26.0 or later to apply the SSRF protection patch. This version includes stricter validation for outgoing requests and blocks access to private/internal networks by default.

If upgrading is not immediately possible, restrict network access to the Mealie server by configuring a firewall to block outbound requests to private IP ranges (e.g., 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 169.254.0.0/16). Disable or audit any existing recipe actions or webhooks that allow arbitrary URLs.

Review and update environment variables to explicitly allow only trusted internal hosts if necessary: set HTTP_ALLOW_LIST to permit specific internal services and HTTP_DISALLOW_LIST to block known risky ranges. Monitor logs for blocked requests and investigate any anomalies.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-94028. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart