Skip to main content

Dradis Community Edition EUVDEUVD-2026-65700

| CVE-2026-79788 HIGH
Server-Side Request Forgery (SSRF) (CWE-918)
2026-08-25 VulnCheck GHSA-cmm3-fp9x-p8hx
7.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 low-privilege Dradis user
  2. Delivery
    Navigate to AI Providers configuration in dradis-echo
  3. Exploit
    Create provider with internal or cloud-metadata URL
  4. Execution
    Reassign Roslin agent to malicious provider
  5. Persist
    Trigger AI interaction to initiate server-side fetch
  6. Impact
    Receive reflected response body via ActionCable/Turbo Stream error message

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Exploitation requires a valid authenticated user account in Dradis Community Edition - admin privileges are explicitly not required, which is the core of the vulnerability. The attack is gated on the dradis-echo AI plugin being installed and the AI Providers/Agents management interface being accessible; installations that have not deployed this plugin or have disabled AI features are not exposed. After configuring the malicious provider, the attacker must trigger an AI interaction to cause the server-side fetch - this can be done directly by the attacker or by influencing another user. The most critical limiting factor is authentication: unauthenticated exploitation is not possible. Deployments restricted to a single administrator or a small, fully-trusted user base face significantly lower practical risk. Cloud-hosted deployments face the highest risk due to accessible link-local instance metadata endpoints (169.254.169.254) reachable from the server's network, enabling credential theft beyond just SSRF.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L) accurately reflects the threat model: exploitation is straightforward, requires only a low-privilege authenticated session, and imposes no additional attack prerequisites. The VC:H rating is well-founded given that cloud-hosted deployments expose link-local metadata endpoints (e.g., AWS IMDSv1 at 169.254.169.254) that yield IAM role credentials when read, enabling lateral movement well beyond the Dradis application itself. The VI:L rating captures the ability to issue arbitrary HTTP requests to internal services, which may trigger unintended state changes even without reading responses. The provided CVSS 4.0 vector sets SC:N (no subsequent-system confidentiality impact), which conflicts with the description's explicit mention of reaching internal hosts - this discrepancy should be verified with the reporter, as an independent assessment would set SC:H to reflect that internal network services beyond the vulnerable component are reachable and their responses extractable. EPSS data was not provided in the available intelligence, preventing quantitative exploitation-probability assessment. No CISA KEV listing and no public POC have been identified, suggesting exploitation remains opportunistic rather than widespread at time of analysis. Real-world risk is highest in cloud-hosted or enterprise-VPN-connected Dradis deployments with multiple non-admin users, where the implicit trust in authenticated-but-unprivileged accounts is high and internal network segmentation at the egress layer may be absent.

Exploit ScenarioDerived

An attacker with a valid non-admin Dradis account navigates to the AI Providers configuration page, creates a new provider pointing to http://169.254.169.254/latest/meta-data/iam/security-credentials/ (AWS IMDSv1 endpoint), and reassigns the built-in Roslin agent to use it. When any AI-assisted operation is triggered, the Dradis server issues an HTTP GET to the metadata endpoint; if the response returns a non-2xx status or is otherwise flagged as an error, the full response body is reflected to the attacker's browser via ActionCable/Turbo Stream, disclosing IAM role names and temporary credentials. No public exploit code has been identified at time of analysis.

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

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

Alert me

AnalysisAIv1 – Aug 25, 2026

Server-side request forgery in Dradis Community Edition 5.1.0-5.2.0 allows any authenticated non-admin user to hijack the AI provider configuration and redirect server-initiated HTTP requests to arbitrary URLs, including internal cloud metadata endpoints such as 169.254.169.254. A broken authorization gate in ProvidersController and AgentsController is conditioned on the Ruby constant Dradis::Pro, which is never defined in CE builds, so the admin_required filter is silently skipped for all CE installations. Non-2xx responses from attacker-supplied URLs are reflected verbatim to the attacker's browser via ActionCable/Turbo Stream, enabling exfiltration of internal service content. No public exploit code or CISA KEV listing has been identified at time of analysis.

RemediationAI

No vendor-released patch version has been independently confirmed from the available references; the open GitHub issue #1641 (https://github.com/dradis/dradis-ce/issues/1641) and VulnCheck advisory (https://www.vulncheck.com/advisories/dradis-community-edition-5.1.0-through-5.2.0-server-side-request-forgery-via-unrestricted-ai-provider-address) should be monitored for an official fix. The root cause is precisely identified: the defined?(Dradis::Pro) conditional guard in ProvidersController and AgentsController should be replaced with an unconditional admin_required before_action; organizations capable of patching their own deployment can apply this change directly from the referenced source file. As an immediate compensating control, administrators should restrict Dradis access to fully trusted users only, eliminating the non-admin attacker surface without service disruption. Deploying egress filtering at the host or network level to block requests to RFC-1918 addresses and link-local ranges (169.254.0.0/16) prevents cloud metadata enumeration, though it does not address SSRF to external or intranet URLs reachable from the server. If the AI provider and agent features (dradis-echo) are not operationally required, disabling or removing the plugin entirely eliminates the attack surface while a patch is pending.

Affected VersionsENISA

dradis-ce 5.1.0 <5.3.0

Affected Packages

euvd dradis_ce fix: 5.3.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

Dradis Community Edition is a Ruby on Rails-based collaborative security reporting and project management platform used primarily by penetration testers. The vulnerability resides in the dradis-echo plugin engine, specifically in ProvidersController and AgentsController (source visible at dradis-ce/engines/dradis-echo/app/controllers/dradis/plugins/echo/providers_controller.rb). These controllers manage AI provider endpoint registration and agent-to-provider assignment. The authorization enforcement uses a Ruby constant existence check - defined?(Dradis::Pro) - to conditionally apply the admin_required before_action filter. Because Dradis::Pro is a constant that only exists in the commercial Pro edition, it is never defined in CE, causing the conditional to evaluate to falsy and the admin check to be entirely bypassed. CWE-918 (Server-Side Request Forgery) captures the resulting weakness: user-supplied URLs are accepted into provider configuration without server-side allowlist validation and are subsequently fetched by the application server, exposing the server's internal network context to attacker control. CPE cpe:2.3:a:dradis:dradis-ce:*:*:*:*:*:*:*:* spans the full CE product line, with versions 5.1.0 through 5.2.0 cited explicitly in the VulnCheck advisory.

Know when Dradis 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 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 8.5 HIGH

Network-accessible Rails app, PR:L for required authentication; S:C because SSRF reaches internal hosts beyond the vulnerable component; C:H for metadata/internal service read; I:L for potential HTTP side-effects on internal services.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Aug 25, 2026 - 20:06 EUVD
CVE Published
Aug 25, 2026 - 18:23 cve.org
HIGH 7.1

DescriptionCVE.org

In Dradis Community Edition, the ProvidersController and AgentsController gate their admin_required before_action on defined?(Dradis::Pro), a constant that is never defined in CE, so the authorization check is never applied. As a result, any authenticated (non-admin) user can create an AI provider pointing to an arbitrary HTTP/HTTPS address (including internal/link-local hosts such as http://169.254.169.254) and reassign the built-in Roslin agent to use it. When an AI interaction is triggered, the server issues a request to the attacker-supplied URL (server-side request forgery). For non-2xx responses, the target's response body is reflected verbatim to the attacker's browser via ActionCable/Turbo Stream error messages, making the SSRF readable.

Executive ViewAI

Why It Matters

Dradis Community Edition versions 5.1.0-5.2.0 contain a server-side request forgery vulnerability that allows any authenticated non-admin user to redirect the server's HTTP requests to arbitrary internal URLs, including cloud metadata endpoints, and exfiltrate sensitive credentials and service data. This creates a direct attack vector for any organization with multiple users accessing Dradis CE in cloud environments, potentially exposing cloud infrastructure credentials.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: restrict network access to metadata endpoints (169.254.169.254) at the firewall level; limit non-admin user creation and audit existing accounts for necessity; disable AI provider configuration features via application settings if operationally dispensable; isolate Dradis instances on private networks; implement continuous monitoring of outbound requests for attempts to contact internal metadata endpoints.

Threat Intelligence Overview

EPSS Score
0.3%
Top 79% exploitable
Prevalence
Low
niche penetration-testing reporting tool, limited enterprise 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.3%
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
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

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