Skip to main content

Aureus ERP EUVDEUVD-2026-83915

| CVE-2026-94387 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-09-21 VulnCheck GHSA-w45j-77g8-wj7w
5.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as user with field-edit rights
  2. Delivery
    Inject script into tracked text field
  3. Exploit
    Payload stored in Chatter change log
  4. Execution
    Admin opens record's Chatter panel
  5. Impact
    Script executes in admin browser session

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated Aureus ERP account (before v1.6.0) that is permitted to edit at least one tracked text field whose changes are recorded in the Chatter field-change log; the attacker stores markup in old_value/new_value via the vulnerable content-text-entry.blade.php rendering path. Exploitation is LIMITED by: (1) prior authentication and edit privilege on tracked fields (PR:L), and (2) required victim interaction (UI:P) - another user, ideally an administrator, must open the affected record's Chatter panel for the stored payload to execute. This is effectively a stored/privilege-escalation XSS scenario within a multi-user deployment, not an unauthenticated internet-facing attack.

Impact

This is a genuine but moderate-risk stored XSS confirmed at the source-code level: the patch diff shows Laravel Blade templates rendering $change['old_value']/$change['new_value'] via the unescaped {!! !!} directive (and unescaped concatenation in ChatterNotificationService), fixed by switching to escaped {{ }} output plus e(). The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N with subsequent SC:L/SI:L) is consistent with the description and I concur - this is not a high-severity issue. Key limiting signals: PR:L means the injector must be an authenticated user already permitted to edit tracked text fields, and UI:P means a victim must actually open the affected record's Chatter panel; impact is capped at VC:L/VI:L (session/UI-level script execution, no direct system compromise). No EPSS score, no CISA KEV listing, and no SSVC decision data were provided, so there is no evidence of active or automatable exploitation. A public technical write-up/POC exists (hackmd @leediay) and VulnCheck published an advisory, which raises the practical likelihood of opportunistic abuse but does NOT equal active exploitation. Net: prioritize as a normal patch (a fixed release exists), not an emergency - the real risk is a privilege-escalation-style attack where a lower-privileged internal user plants script that fires in an administrator's browser.

Exploit ScenarioDerived

A low-privileged but authenticated Aureus ERP user edits a tracked text field (e.g., a record name or description) and enters malicious HTML/JavaScript as the new value. Because the Chatter field-change log renders old_value/new_value without escaping, the payload is stored and later executes in the browser of any user - including an administrator - who opens that record's Chatter panel, enabling session/action abuse in the victim's context. A public write-up describing the flaw exists (hackmd @leediay) alongside a VulnCheck advisory.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 21, 2026

Stored cross-site scripting in Aureus ERP versions before 1.6.0 allows an authenticated user who can edit at least one tracked text field to persist malicious markup inside the Chatter field-change log, which executes in the browser of any other user - including an administrator - who opens the affected record's Chatter panel. The vulnerability is rooted in Laravel Blade templates that render the change log's old_value and new_value entries with the unescaped {!! !!} directive rather than escaped {{ }} output, and it has been confirmed at the source-code level by the vendor's fix commit. Vendor-released patch: 1.6.0; no public exploit identified at time of analysis, though a public technical writeup of the issue exists. Risk is moderate (CVSS 4.0 base 5.1; independent assessment CVSS 3.1 5.1 with S:C) because exploitation requires prior authentication plus victim interaction, but the stored nature and administrator-targeting potential make it a credible privilege-escalation vector inside multi-user deployments.

RemediationAI

Upgrade to Aureus ERP 1.6.0 or later, which is the vendor-released patch for this issue; deployments pinned to an earlier release should apply the upstream fix commit 57cf5cf4c98d82a0ad89003402f27823fbe1e27c or merge pull request https://github.com/aureuserp/aureuserp/pull/1465, both of which replace the unescaped {!! !!} Blade output with escaped {{ }} interpolation and add e() escaping in ChatterNotificationService::summarizeChanges(). If upgrading immediately is not possible, the most effective compensating control is to restrict who can edit Chatter-tracked text fields - since the attacker must hold edit rights on at least one tracked field (PR:L), tightening that permission set to trusted roles removes the injection precondition, at the cost of limiting normal record-editing workflows for those users. A strict Content-Security-Policy that disallows inline and untrusted script sources on the Filament admin area provides secondary defense by preventing injected markup from executing, but this requires careful tuning against Filament's own asset loading and can break UI components if applied aggressively. Disabling the Chatter field-change log entirely (or disabling field tracking on sensitive records) removes the rendering path but eliminates the audit trail that many compliance workflows depend on. Because this is a stored issue, any payloads already written to old_value/new_value before patching will remain in the database and must be reviewed and sanitized after remediation. Advisory references: https://www.vulncheck.com/advisories/aureus-erp-before-1.6.0-stored-xss-via-chatter-field-change-log and https://hackmd.io/@leediay/stored-xss-aureuserp-chatter.

Affected VersionsENISA

aureuserp 0 <1.6.0

Affected Packages

euvd aureuserp fix: 1.6.0

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

Aureus ERP is a Laravel-based enterprise resource planning application that uses Filament for its administrative UI and bundles a Chatter plugin (plugins/webkul/chatter) to provide an activity/audit stream on records. When a user edits a tracked text field, the framework records the previous and new values and renders them in the Chatter panel through the Blade view plugins/webkul/chatter/resources/views/filament/infolists/components/messages/content-text-entry.blade.php. The vulnerable code emitted those values with the raw-output directive {!! ... !!}, and the backend service ChatterNotificationService::summarizeChanges() concatenated the values unescaped when building notification rows. Because Blade's {!! !!} bypasses HTML entity encoding, attacker-controlled markup in old_value/new_value is written verbatim into the DOM, satisfying CWE-79 (Improper Neutralization of Input During Web Page Generation) in its stored/persistent form. The vendor fix (commit 57cf5cf4c98d82a0ad89003402f27823fbe1e27c, PR #1465) changes the two Blade interpolations to escaped {{ }} output and wraps the concatenated notification segments in Laravel's e() helper, closing both rendering paths. The affected product is identified by CPE cpe:2.3:a:aureuserp:aureuserp:*:*:*:*:*:*:*:* (all releases prior to 1.6.0).

Know when Aureuserp 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 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated field editor (PR:L) plants script that runs when a victim views the record (UI:R); stored XSS crosses into the victim's browser context (S:C) with limited confidentiality/integrity impact, no availability effect.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

Aureus ERP before 1.6.0 contains a stored cross-site scripting vulnerability in the Chatter field-change log where old_value and new_value entries are rendered without proper escaping. Any user permitted to edit tracked text fields can inject malicious markup that executes when other users, including administrators, view the record's Chatter panel.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Low
niche open-source Laravel/Filament ERP, limited enterprise deployment 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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

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