CVE-2026-49979
Analyzed Analyzed - Analysis Complete

Email Server Connection Bypass in Appsmith

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

Publication date: 2026-06-24

Last updated on: 2026-06-29

Assigner: GitHub, Inc.

Description

Appsmith is a platform to build admin panels, internal tools, and dashboards. Prior to 1.99, the POST /api/v1/admin/send-test-email endpoint accepts attacker-controlled smtpHost and smtpPort values and establishes a raw JavaMail TCP connection without any IP validation. This completely bypasses WebClientUtils.IP_CHECK_FILTER, which only applies to Spring WebClient HTTP requests. Additionally, the raw MailException.getMessage() is returned verbatim in the API error response, enabling error-based internal port scanning and service banner enumeration. This vulnerability is fixed in 1.99.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-06-24
Last Modified
2026-06-29
Generated
2026-07-15
AI Q&A
2026-06-25
EPSS Evaluated
2026-07-13
NVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
appsmith appsmith to 1.99 (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.
CWE-209 The product generates an error message that includes sensitive information about its environment, users, or associated data.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Compliance Impact

The provided information does not specify how this vulnerability impacts compliance with common standards and regulations such as GDPR or HIPAA.

Executive Summary

This vulnerability exists in Appsmith versions prior to 1.99 in the POST /api/v1/admin/send-test-email endpoint. The endpoint accepts attacker-controlled smtpHost and smtpPort values and establishes a raw JavaMail TCP connection without validating the IP address. This bypasses the WebClientUtils.IP_CHECK_FILTER, which only applies to Spring WebClient HTTP requests, not raw TCP connections.

Additionally, the raw error message from MailException.getMessage() is returned directly in the API error response. This behavior allows attackers to perform error-based internal port scanning and service banner enumeration.

The vulnerability is fixed in Appsmith version 1.99.

Impact Analysis

An attacker can exploit this vulnerability to bypass IP validation controls and establish unauthorized TCP connections to internal services using the smtpHost and smtpPort parameters.

By receiving raw error messages, the attacker can perform internal port scanning and enumerate service banners, potentially revealing sensitive information about internal network services.

This can lead to increased risk of further attacks targeting internal infrastructure that is otherwise protected by IP filtering.

Mitigation Strategies

The vulnerability is fixed in Appsmith version 1.99. Immediate mitigation involves upgrading your Appsmith installation to version 1.99 or later.

Since the vulnerability involves the POST /api/v1/admin/send-test-email endpoint accepting attacker-controlled smtpHost and smtpPort values without IP validation, restricting access to this endpoint and monitoring for suspicious usage may help reduce risk until the upgrade is applied.

Detection Guidance

This vulnerability can be detected by testing the POST /api/v1/admin/send-test-email endpoint with controlled smtpHost and smtpPort values to observe if raw JavaMail TCP connections are established without IP validation and if raw MailException messages are returned in the API error responses.

To detect exploitation or presence of this vulnerability, you can attempt to send crafted requests to the endpoint and analyze the responses for error messages that reveal internal port scanning or service banners.

  • Use curl or similar tools to send POST requests with different smtpHost and smtpPort values to the vulnerable endpoint, for example:
  • curl -X POST https://<appsmith-server>/api/v1/admin/send-test-email -H 'Content-Type: application/json' -d '{"smtpHost":"127.0.0.1","smtpPort":6379}'
  • Check the response for raw error messages indicating connection attempts to internal services like Redis (port 6379) or others.
  • Monitor network traffic for outgoing TCP connections initiated by the Appsmith server to the specified smtpHost and smtpPort values.

Chat Assistant

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

EPSS Chart