Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with non-observer role on any book
-
ExploitCall DocumentController.Content naming target private book
-
ExecutionIterate sequential document IDs
-
ImpactExfiltrate private markdown and HTML
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | The attacker must be an authenticated MinDoc user holding at least a non-observer role (e.g., editor) on any one book in the instance; a pure observer or fully unauthenticated user cannot exploit it. Given such access, exploitation requires only naming a target private book and iterating sequential, predictable document IDs against DocumentController.Content - no further configuration is needed. Limiting factors: exploitation is bounded by the need for a valid low-privileged account (risk rises sharply where self-registration is enabled or many low-trust collaborators exist) and is read-only, exposing document markdown/HTML without granting write, integrity, or availability impact. |
| Impact | This is an authenticated insecure direct object reference (IDOR / CWE-639) in MinDoc's DocumentController.Content endpoint. The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N) is internally consistent with the description: network-reachable, low attack complexity, requires low privileges (PR:L - the attacker must already hold a non-observer role on at least one book), no user interaction, and a high confidentiality impact with no integrity or availability impact. The 7.1 score is driven purely by data exposure, not system compromise. No EPSS score, CISA KEV entry, or explicit POC flag was supplied in the input; absence of EPSS/KEV data means widespread automated exploitation cannot be confirmed from these signals. One reference (the hackmd writeup) documents the exact technique in detail, which lowers the barrier to reproduction even though no packaged exploit code is flagged. Net: a genuine but moderate-priority authorization flaw - real and easily reproducible by any authenticated collaborator, but gated behind requiring a valid non-observer account and limited to read-only confidentiality disclosure, so it is not a drop-everything unauthenticated RCE. Prioritize for instances with open registration or many low-trust collaborators; deprioritize for tightly controlled single-tenant deployments. |
| Exploit ScenarioDerived | An attacker registers or is granted a non-observer role (e.g., editor) on any single book in a shared MinDoc instance. They then call the Content API naming a different, private book they have no access to and iterate through sequential document IDs, harvesting the markdown and rendered HTML of confidential documents. A detailed public technical writeup of the method exists (hackmd), making reproduction straightforward, though no packaged exploit tool is flagged in the input. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Authenticated insecure direct object reference in MinDoc through 2.2-beta.2 lets any user holding a non-observer role on at least one book read markdown and HTML documents belonging to private books they were never granted access to. Because the DocumentController.Content endpoint authorizes the caller only by document ID and not by the book the document belongs to, an attacker can name any target book and iterate predictable, sequential document IDs to harvest its contents. Exploitation requires a valid low-privileged account (authentication requirements confirmed as authenticated per the CVSS vector, PR:L) and is read-only, with no write, integrity, or availability impact; no public exploit code was identified at time of analysis, though a detailed public technical writeup of the flaw exists.
RemediationAI
No vendor-released patch identified at time of analysis; MinDoc 2.2-beta.2 is the latest confirmed affected release, so administrators should track the upstream project (https://github.com/mindoc-org/mindoc) for a fixed release and treat the vulnerable behavior as unfixed until a version above 2.2-beta.2 is verified to enforce per-book authorization in DocumentController.Content - do not assume a newer tag is safe without checking that handler. Actionable interim controls, with their trade-offs: first, add a book-scoped ownership/ACL check in front of the Content route (for example enforce that the requested document's book_id is one the session user can read, or restrict the endpoint to the owner/author of the record) - this is the correct fix but requires Go code changes and redeployment; second, at the reverse proxy, restrict or block the api/content/{id} style routes for all but trusted accounts, accepting that legitimate document rendering for those restricted users will break; third, disable self-registration and audit/reduce accounts holding editor or higher roles on any book, and review per-book membership so that the number of principals who can reach a non-observer role is minimized - this shrinks but does not eliminate the attack surface; fourth, treat all content in private books as potentially disclosed and rotate or move sensitive material out of MinDoc, since the exposure is read-only but complete for enumerable IDs. Because the flaw is IDOR-style, monitor web logs for sequential or high-volume accesses to the content endpoint from a single low-privileged session as a detection signal.
Affected VersionsENISA
Affected Packages
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
MinDoc is a Go-based (Beego framework) open-source document and wiki management system, tracked under the CPE cpe:2.3:a:mindoc-org:mindoc:*:*:*:*:*:*:*:*. The issue is CWE-639 (Authorization Bypass Through User-Controlled Key), a classic IDOR: the Content handler in controllers/DocumentController.go (lines 847-973), exposed via the route registered in routers/router.go line 242, retrieves a document by its numeric ID without verifying that the requesting user has read permission on the book that owns that document. The permission model in MinDoc grants roles per book, but the Content endpoint checks only that the caller is an authenticated, non-observer role somewhere in the instance rather than that they are authorized for the specific book, so a low-privileged collaborator on one book can cross the object boundary into any other book. Since document IDs are sequential and enumerable, the attacker can walk the ID space and retrieve raw markdown/HTML source for documents in private books, disclosing potentially sensitive internal documentation without any write, integrity, or availability effect (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N).
Know when Mindoc 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Authenticated non-observer role gives PR:L; network API with trivial sequential-ID iteration gives AV:N/AC:L; read-only document disclosure gives C:H, I:N, A:N, scope unchanged.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
MinDoc through 2.2-beta.2 contains an insecure direct object reference vulnerability in DocumentController.Content that allows authenticated users to read documents from unauthorized books. Attackers holding a non-observer role on any book can name that book and iterate sequential document ids to read markdown and HTML from private books.
Executive ViewAI
MinDoc deployments running version 2.2-beta.2 or earlier allow any authenticated user who holds a non-observer role on even one book to read private documents belonging to books they were never granted access to, because the content endpoint validates only the document ID rather than the book it belongs to. The exposure is read-only, so the risk to the organization is confidentiality of sensitive internal documentation rather than operational disruption, but the sequential document IDs make bulk retrieval of another team's or business unit's private content straightforward for a low-privileged insider or any user with a valid account. No vendor-released patch is available, so leadership should treat containment as an access-management and monitoring problem until a fix ships.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict all affected MinDoc instances (through 2.2-beta.2) to trusted internal networks or place them behind an authenticating reverse proxy; minimize and audit non-observer role assignments so users hold elevated roles only on books they legitimately need; enforce web-tier rate limiting and alerting on rapid sequential document ID requests to the DocumentController.Content endpoint; retain and review access logs for enumeration patterns; and if the content is highly sensitive, backport a book-scoped authorization check or migrate to an alternative platform until the vendor issues a fix.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
An arbitrary file upload vulnerability in Mindoc v2.1-beta.5 allows attackers to execute arbitrary commands via a crafte
An issue was discovered in MinDoc through v1.0.2. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit
EUVD-2026-102504
GHSA-c99c-gh3j-2mp4
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB