This is a side door into the mailroom filing cabinets, but only if you built the new vestibule
CVE-2026-44127 is an unauthenticated path traversal / local file read in SEPPmail Secure Email Gateway before 15.0.4, specifically in the identifier parameter of /api.app/attachment/preview. InfoGuard shows the handler prepends /tmp/ and then trusts attacker-controlled path input, allowing traversal to arbitrary local files; after reading, it also attempts to delete the parent folder. The vulnerable surface sits in GINA V2 / api.app, not the classic core mail flow.
In practice this is serious but not universal. The impact is strong—InfoGuard says attackers can pull mail content, LDAP data, password hashes, and keys from the appliance—but the biggest real-world brake is deployment friction: GINA V2 requires explicit activation and is off by default in SEPPmail documentation. So this is not a blanket 'all SEPPmail boxes are instant internet loot' event; it is a high-priority exposure check for internet-facing GINA V2 deployments.
5 steps from start to impact.
Find a reachable GINA V2 surface
api.app surface. InfoGuard notes there are several thousand public instances on Censys, but this CVE is tied to GINA V2, which SEPPmail documents as an explicitly enabled feature. Typical tooling here is censys, Shodan, httpx, or plain curl.- Target runs SEPPmail Secure Email Gateway before 15.0.4
- GINA V2 /
api.appis enabled - The interface is reachable from the attacker network, usually the internet
- GINA V2 is documented as inactive by default and must be deliberately enabled
- Some deployments only expose SMTP and keep web UI access internal or partner-restricted
- Reverse proxies, IP allowlists, or VPN front doors can remove internet reachability entirely
Send traversal to attachment/preview
identifier to /api.app/attachment/preview, using tools like curl, Burp Suite, or a short Python requests script. InfoGuard's code excerpt shows uri_unescape on attacker input and direct file reads after concatenation, so exploitation is straightforward once the endpoint is reachable.- No authentication required
- Attacker can reach
/api.app/attachment/previewover HTTPS
- WAF/IPS rules looking for traversal sequences may interrupt obvious payloads
- Custom reverse proxies may normalize or reject malformed encoded paths
identifier.Read sensitive local files
api.app process. InfoGuard explicitly calls out LDAP database contents, mails, users, password hashes, and keys as realistic targets, which is why this matters more than a random LFI on a low-value app server.- Target files are readable by the
api.appprocess - Requested data resides on the appliance filesystem
- The process runs as
nobody, so unreadable root-only files remain out of reach - If the most sensitive key material is protected by stricter filesystem ACLs, blast radius drops
Trigger folder cleanup side effect
- Chosen parent directory is writable/deletable by
nobody - The target directory structure maps to something operationally useful
- InfoGuard states most directories cannot be deleted because the process runs as
nobody - This is not an easy full-device wipe primitive
Use stolen gateway data for follow-on access
- Sensitive credentials, hashes, or message data are actually exposed
- Attacker has infrastructure to operationalize stolen data
- This CVE by itself is not remote code execution
- Pivoting beyond the appliance depends on what data is stored locally and how well downstream identities are protected
The supporting signals.
| In-the-wild status | No public evidence of active exploitation found in the sources reviewed. No KEV listing. |
|---|---|
| Public exploit / PoC | Technical exploit details are public via InfoGuard Labs, including vulnerable code paths and impact notes. I did not find a mature standalone GitHub exploit repository in the sources reviewed. |
| EPSS | 0.0006 from the user-supplied intel, which is extremely low. A third-party mirror reports roughly 0.15% / P35, reinforcing that broad opportunistic exploitation pressure is currently low. |
| KEV | Not listed in CISA's Known Exploited Vulnerabilities Catalog. |
| Authority scoring context | There is no vendor score in the material reviewed, so this verdict is a first practical assessment. NVD currently shows a CNA CVSS v4.0 Base 8.8 / HIGH from the Switzerland Government CVP: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:L/SC:N/SI:N/SA:N. |
| Affected versions | SEPPmail Secure Email Gateway before 15.0.4. InfoGuard attributes this specifically to the GINA V2 / api.app attachment preview path. |
| Fixed versions | 15.0.4 fixes CVE-2026-44127 per InfoGuard's disclosure summary. No distro backport packaging was identified because this is an appliance product, not a mainstream OS package. |
| Exposure reality | InfoGuard says there are several thousand public SEPPmail instances on Censys, but SEPPmail docs say 'Use the new GINA V2x' is inactive by default and must be activated. That is the key narrowing factor. |
| Disclosure timeline | Disclosed 2026-05-08. InfoGuard's timeline shows reports beginning in February 2026 and public release of the remaining CVEs on 2026-05-08. |
| Researcher / reporting org | InfoGuard Labs disclosed the issue and published the technical write-up. |
noisgate verdict.
The decisive factor is reachability: exploitation is pre-auth and low-complexity, but it only matters where GINA V2 is actually enabled and exposed. On those gateways the confidentiality impact is too high to wave away—mail content, LDAP data, and cryptographic material live on a high-trust choke point—so this lands in HIGH, not MEDIUM.
Why this verdict
- Pre-auth remote read on a mail gateway: no authentication, no user interaction, and direct access to a sensitive appliance role raises the floor immediately.
- Exposure is narrowed by product configuration: SEPPmail documents
Use the new GINA V2xas inactive by default, so this is not equally reachable across the whole installed base. - Not RCE, and deletion is privilege-limited: the
remove_folderside effect matters, but InfoGuard notes the process runs asnobody, which sharply limits destructive outcomes compared with true admin-level arbitrary file delete.
Why not higher?
This is not an instant-own primitive. There is no demonstrated remote code execution in this CVE alone, and the deletion side effect is bounded by the low-privilege runtime context. The biggest downgrade pressure is that GINA V2 must be explicitly enabled, which materially shrinks the exposed population.
Why not lower?
If you do run exposed GINA V2, this is an unauthenticated file-read bug against an email security gateway, which is one of the worst places to leak secrets from. The appliance can hold message content, directory data, hashes, and key material; that blast radius is too meaningful for a MEDIUM backlog item.
What to do — in priority order.
- Restrict GINA V2 exposure — Put
api.appbehind VPN, reverse-proxy allowlists, or partner-only source controls where business workflow allows. For a HIGH verdict, deploy this within 30 days on any internet-facing SEPPmail instance that cannot be patched immediately. - Enable IPS/WAF signatures for traversal — Use product-aware protections that inspect requests to
/api.app/attachment/previewand block traversal patterns inidentifier; Check Point already ships a dedicated signature. Treat this as an interim reduction step and get it in place within 30 days. - Disable GINA V2 if unused — If the organization does not actively need the new GINA V2 workflow, turning it off removes the vulnerable surface entirely. Because SEPPmail documents it as an explicit setting, this is often the cleanest compensating control to apply within 30 days.
- Monitor preview endpoint abuse — Alert on repeated hits to
/api.app/attachment/preview, URL-decoding anomalies, and traversal tokens such as../or encoded equivalents. This will not stop first exploitation, but it gives you a chance to scope internet noise and verify whether exposed systems are being probed within the 30-day mitigation window.
- MFA on the admin GUI does not help because this endpoint is described as unauthenticated.
- Email AV / spam filtering does not help because the attack lands on the web application surface, not via message content inspection.
- Relying on low EPSS alone is a mistake; EPSS says little about the business impact of leaking mail, LDAP, and key material from a gateway you purposely exposed.
Crowdsourced verification payload.
Run this on the SEPPmail appliance itself from a local console or support shell. Save it as check_cve_2026_44127.sh, run chmod +x check_cve_2026_44127.sh && ./check_cve_2026_44127.sh; no root is required for the basic file checks, but a privileged shell improves coverage if version files are restricted.
#!/usr/bin/env bash
# check_cve_2026_44127.sh
# Purpose: Determine whether a SEPPmail appliance appears vulnerable to CVE-2026-44127
# Logic: Find installed firmware version from common local markers and compare to 15.0.4
# Output: VULNERABLE / PATCHED / UNKNOWN
# Exit codes: 0=PATCHED, 1=VULNERABLE, 2=UNKNOWN
set -u
TARGET_FIXED="15.0.4"
FOUND_VERSION=""
extract_version() {
sed -nE 's/.*([0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?).*/\1/p' "$1" 2>/dev/null | head -n1
}
# Compare dotted versions: returns 0 if $1 >= $2
version_ge() {
awk -v A="$1" -v B="$2" '
function splitver(v, arr, i, n, t) {
n = split(v, t, ".")
for (i = 1; i <= 4; i++) arr[i] = (i <= n ? t[i] + 0 : 0)
}
BEGIN {
splitver(A, a); splitver(B, b)
for (i = 1; i <= 4; i++) {
if (a[i] > b[i]) exit 0
if (a[i] < b[i]) exit 1
}
exit 0
}'
}
# Common candidate files on appliance-like systems
CANDIDATES=(
"/etc/version"
"/etc/seppmail-release"
"/etc/motd"
"/usr/local/etc/seppmail-release"
"/usr/local/share/seppmail/version"
"/opt/seppmail/version"
)
for f in "${CANDIDATES[@]}"; do
if [ -r "$f" ]; then
v="$(extract_version "$f")"
if [ -n "$v" ]; then
FOUND_VERSION="$v"
break
fi
fi
done
# Optional fallback: try local web root files if present
if [ -z "$FOUND_VERSION" ]; then
for f in /var/www/htdocs/index.html /var/www/htdocs/*.html /usr/local/www/htdocs/*.html; do
[ -r "$f" ] || continue
v="$(extract_version "$f")"
if [ -n "$v" ]; then
FOUND_VERSION="$v"
break
fi
done
fi
if [ -z "$FOUND_VERSION" ]; then
echo "UNKNOWN - could not determine installed SEPPmail firmware version from local markers"
exit 2
fi
if version_ge "$FOUND_VERSION" "$TARGET_FIXED"; then
echo "PATCHED - detected SEPPmail version $FOUND_VERSION (fixed in $TARGET_FIXED or later)"
exit 0
else
echo "VULNERABLE - detected SEPPmail version $FOUND_VERSION (fixed in $TARGET_FIXED)"
exit 1
fi
If you remember one thing.
Sources
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.