Skip to main content

stoatchat January CVE-2026-100676

| EUVDEUVD-2026-87649 HIGH
Protection Mechanism Failure (CWE-693)
2026-09-26 VulnCheck GHSA-4h96-wm2q-h7fw
8.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Attacker hosts malicious SVG with local href
  2. Delivery
    Request /proxy to fetch the SVG
  3. Exploit
    Service resolves href as local path
  4. Execution
    Reads local files in full, no limit
  5. Persist
    Timing oracle + image disclosure + unbounded I/O
  6. Impact
    Local file disclosure and denial of service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Protection mechanism completeness
Exploitation Conditions

Requires that the target runs the January media proxy/embed service (stoatchat) with a reachable proxy endpoint such as /proxy that will fetch attacker-supplied URLs, and that fetched resources served as image/svg+xml have their SVG <image href> values resolved against the local filesystem - behavior present by default before version 0.15.5. No authentication, user interaction, or non-default configuration is required beyond exposing the proxy endpoint to the attacker (AV:N/PR:N/UI:N). Limiting factors: confidentiality disclosure is constrained to files that decode as supported image formats (re-encoded output) plus a boolean existence/timing oracle; arbitrary text/secret files are not directly readable, and the primary high-severity impact is the unbounded-read denial of service.

Impact

The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N, score 8.8) describes a genuinely low-friction flaw: network-reachable, no authentication, no user interaction, low attack complexity. The impact split is the key nuance - VC:L (only 'supported local image files' are disclosable after re-encoding, plus a file-existence timing oracle) and VA:H (unbounded reads, ~4.34 GB per the published PoC, exhaust I/O and memory). Integrity is untouched (VI:N). This is a real, actionable priority rather than an inflated score: the DoS primitive is trivially triggerable and unauthenticated, and a working PoC exists. Tempering factors: no EPSS score, no CISA KEV listing, and no evidence of active exploitation were provided, so exploitation should be treated as demonstrated-but-not-yet-observed-in-the-wild. The confidentiality side is limited to image-decodable files and an existence oracle rather than arbitrary text/secret exfiltration, which is why C is Low, not High. Overall: credible, easy-to-abuse DoS plus limited local file disclosure on an internet-facing proxy - patch promptly, but the product's small deployment footprint bounds aggregate risk.

Exploit ScenarioDerived

An unauthenticated attacker hosts a malicious SVG containing <image href> values pointing at local filesystem paths and then induces the January media proxy to fetch it via the /proxy endpoint. When the response is served as image/svg+xml, the service resolves those hrefs as local files, letting the attacker use response-timing differences to test file existence and recover supported local image files after re-encoding; the same request can chain many/large reads (~4.34 GB in the published PoC) to exhaust I/O and memory. A public proof of concept exists (publicly available exploit code exists).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 26, 2026

Unauthenticated remote attackers can use the January media proxy/embed service in stoatchat before 0.15.5 to probe the host filesystem and drain server resources. When January fetches an attacker-hosted resource served as image/svg+xml, the SVG <image href> values are resolved as local filesystem paths, so observable response-time differences reveal whether local files exist and supported local image files are disclosed after re-encoding, while unbounded reads of each referenced file generate large amounts of filesystem I/O and memory pressure (a published proof of concept drives roughly 4.34 GB of reads) causing denial of service. Publicly available exploit code exists, no authentication or user interaction is required, and the issue is fixed in version 0.15.5.

RemediationAI

Upgrade stoatchat to version 0.15.5 or later, which is the vendor-released patch that fixes the improper resolution of SVG <image href> values; the authoritative advisory is https://github.com/stoatchat/stoatchat/security/advisories/GHSA-qv38-hwhv-jm49 and a secondary write-up is available at https://www.vulncheck.com/advisories/stoatchat-before-0.15.5-local-filesystem-read-via-svg. Where immediate upgrading is not possible, the most direct compensating control is to disable or restrict the January proxy/embed endpoint (for example blocking external access to /proxy or requiring authentication in front of it), accepting that this breaks legitimate link-preview and media-embed functionality for whoever loses access; alternatively, refuse or strip SVG responses from proxied fetches, or force re-encoding through a sanitizing pipeline that drops <image href> resolution, though this may break legitimate SVG embeds and requires review of the sanitizer for bypasses. Because the unbounded-read behavior drives the denial of service, apply hard caps on the number of referenced resources and total bytes read per request, plus aggressive fetch timeouts and response/memory limits on the proxy worker, but note that such limits are only partial mitigations since a single request can still consume the configured maximum and the local-file timing oracle remains until the upgrade is applied.

Affected VersionsENISA

stoatchat 0 <0.15.5

Affected Packages

euvd stoatchat fix: 0.15.5

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The flaw is classified as CWE-693 (Protection Mechanism Failure): January, the media proxy/embed component of stoatchat, fetches remote URLs on behalf of users (for example through a /proxy endpoint) and, when the fetched resource is served with the image/svg+xml content type, processes the SVG without neutralizing its <image href> references. Those href values are improperly resolved as local filesystem paths instead of being rejected or treated as remote/opaque references, so the proxy effectively becomes a local file reader with a timing side channel. The affected product is captured by CPE cpe:2.3:a:stoatchat:stoatchat:*:*:*:*:*:*:*:*, with ENISA EUVD listing affected versions as stoatchat 0 through <0.15.5. The confidentiality impact is bounded - an attacker gains a boolean existence/timing oracle plus the contents of local files that decode as supported image formats and survive re-encoding; arbitrary text or secret files are not directly readable. The dominant high-severity effect is availability: because each referenced file is read in full with no effective cap on the number or total volume of reads, a single request can amplify into very large local filesystem reads and memory consumption, which is why the assessed CVSS:3.1 vector is AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H and the vendor CVSS 4.0 score is 8.8.

Know when Stoatchat gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.8 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.2 HIGH

Unauthenticated remote request to the proxy (AV:N/AC:L/PR:N/UI:N); disclosure limited to image files plus existence oracle (C:L), no integrity impact, unbounded reads cause DoS (A:H).

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 26, 2026 - 14:02 EUVD
CVE Published
Sep 26, 2026 - 13:23 cve.org
HIGH 8.8

DescriptionCVE.org

January, the media proxy/embed service of stoatchat (stoatchat/stoatchat), before version 0.15.5 improperly resolves SVG <image href> values as local filesystem paths when a fetched resource is served as image/svg+xml. An unauthenticated remote attacker who causes the service to proxy an attacker-hosted SVG (e.g. via the /proxy endpoint) can determine whether local files exist through observable response-time differences, and can cause supported local image files to be disclosed after re-encoding. Because each referenced file is read in full with no effective limit on the number or total volume of reads, a single request can also generate an unbounded amount of local filesystem I/O and memory pressure (the published proof of concept drives about 4.34 GB of reads), leading to denial of service. The issue is fixed in 0.15.5.

Technical POC Analysis

CWE-693 (Protection Mechanism Failure) primary, with CWE-770 (Allocation of Resources Without Limits or Throttling) as the DoS half.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Stoatchat instances running versions prior to 0.15.5 expose a flaw in the January media proxy/embed service that allows attackers to probe the host filesystem for the existence of local files and to retrieve some local images through re-encoding, while simultaneously forcing heavy disk read and memory load that can take the service offline. Publicly available exploit code exists, so any internet-reachable deployment should be treated as a realistic target rather than a theoretical one. Leadership should care because the exposure combines confidentiality loss on the hosting server with a demonstrable denial-of-service path that can disrupt all users of the chat platform and any co-hosted workloads.

Business Impact: High
Compensating Controls

Apply vendor patch. Until stoatchat 0.15.5 is deployed, restrict network access to the January media proxy, block outbound fetching of untrusted SVG resources, and run the service with least-privilege filesystem access and resource limits to blunt the disclosure and denial-of-service effects.

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Low
niche self-hosted open-source chat platform, small production footprint
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2026-63306 CRITICAL
9.2 Jul 16

Server-side request forgery in stoatchat before 0.13.5 allows remote unauthenticated attackers to coerce the server into

CVE-2025-71377 HIGH
8.7 Jul 16

Denial of service in stoatchat (delta) versions before 20250210-1 (0.8.2) lets a remote unauthenticated attacker exhaust

CVE-2026-73057 HIGH
8.7 Aug 16

Memory exhaustion denial of service in stoatchat before 0.15.0 allows unauthenticated remote attackers to crash the serv

CVE-2026-74869 HIGH
8.3 Aug 17

Missing authorization in stoatchat's Subscribe message handler exposes private server membership data to any authenticat

CVE-2026-100678 HIGH
8.3 Sep 26

MFA enforcement in Stoatchat before 0.15.5 can be bypassed by an attacker who already holds the victim's password, becau

CVE-2026-63088 HIGH
7.7 Jul 16

Server-side request forgery in Stoatchat before 0.14.0 lets unauthenticated, network-accessible attackers reach internal

CVE-2025-71388 HIGH
7.6 Jul 16

Webhook token disclosure in stoatchat (the Rust 'delta' backend of the Revolt/stoatchat platform) lets any channel membe

CVE-2026-100679 HIGH
7.1 Sep 26

MFA bypass in StoatChat before 0.15.5 allows an authenticated attacker to satisfy the MFA step-up re-authentication chal

CVE-2026-100675 HIGH
7.1 Sep 26

Authenticated members of a Stoat Chat deployment can permanently (until restart) disable push notifications and mention

CVE-2026-73059 HIGH
7.1 Aug 16

Permission bypass in stoatchat before 0.15.0 allows authenticated users holding only ViewChannel access to read individu

CVE-2026-100677 MEDIUM
6.9 Sep 26

Stoatchat releases prior to 0.15.5 hand unauthenticated remote attackers an account-existence oracle: POST /api/auth/ses

CVE-2026-73058 MEDIUM
6.9 Aug 16

SSRF protection bypass in stoatchat before 0.15.0 exposes loopback-bound services to unauthenticated remote attackers th

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy