Security Resilience

CVE-2023-38487

Hedgedoc ≤ 1.9.9

Public PoC
Published
04 August 2023
Modified
21 November 2024
Patch / advisory
CVSS Score v3.1 6.5
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:L
EPSS Score 0.0079 55th percentile
Risk Priority 51 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2023-38487 is a medium-severity Authentication Bypass by Alternate Name (CWE-289) vulnerability in Hedgedoc Hedgedoc. Its CVSS base score is 6.5 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Data Obfuscation (T1001); ranked in the top 45% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

HedgeDoc is software for creating real-time collaborative markdown notes. Prior to version 1.9.9, the API of HedgeDoc 1 can be used to create notes with an alias matching the ID of existing notes. The affected existing note can then not…

more

be accessed anymore and is effectively hidden by the new one. When the freeURL feature is enabled (by setting the `allowFreeURL` config option or the `CMD_ALLOW_FREEURL` environment variable to `true`), any user with the appropriate permissions can create a note by making a POST request to the `/new/<ALIAS>` API endpoint. The `<ALIAS>` parameter can be set to the ID of an existing note. HedgeDoc did not verify whether the provided `<ALIAS>` value corresponds to a valid ID of an existing note and always allowed creation of the new note. When a visitor tried to access the existing note, HedgeDoc will first search for a note with a matching alias before it searches using the ID, therefore only the new note can be accessed. Depending on the permission settings of the HedgeDoc instance, the issue can be exploited only by logged-in users or by all (including non-logged-in) users. The exploit requires knowledge of the ID of the target note. Attackers could use this issue to present a manipulated copy of the original note to the user, e.g. by replacing the links with malicious ones. Attackers can also use this issue to prevent access to the original note, causing a denial of service. No data is lost, as the original content of the affected notes is still present in the database. This issue was fixed in version 1.9.9. As a workaround, disabling freeURL mode prevents the exploitation of this issue. The impact can be limited by restricting freeURL note creation to trusted, logged-in users by enabling `requireFreeURLAuthentication`/`CMD_REQUIRE_FREEURL_AUTHENTICATION`.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1001 Data Obfuscation Command And Control
Adversaries may obfuscate command and control traffic to make it more difficult to detect.
T1003.003 NTDS Credential Access
Adversaries may attempt to access or create a copy of the Active Directory domain database in order to steal credential information, as well as obtain other information about domain members such as devices, users, and access rights.
T1003.004 LSA Secrets Credential Access
Adversaries with SYSTEM access to a host may attempt to access Local Security Authority (LSA) secrets, which can contain a variety of different credential materials, such as credentials for service accounts.
T1003.005 Cached Domain Credentials Credential Access
Adversaries may attempt to access cached domain credentials used to allow authentication to occur in the event a domain controller is unavailable.
T1003.006 DCSync Credential Access
Adversaries may attempt to access credentials and other sensitive information by abusing a Windows Domain Controller's application programming interface (API)(Citation: Microsoft DRSR Dec 2017) (Citation: Microsoft GetNCCChanges) (Citati…
T1010 Application Window Discovery Discovery
Adversaries may attempt to get a listing of open application windows.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-45308Same product: Hedgedoc Hedgedoc
CVE-2025-32391Same product: Hedgedoc Hedgedoc
CVE-2026-25642Same product: Hedgedoc Hedgedoc
CVE-2026-9701Shared CWE-289
CVE-2026-8457Shared CWE-289
CVE-2026-15985Shared CWE-289
CVE-2026-43617Shared CWE-289
CVE-2026-12101Shared CWE-289
CVE-2025-64521Shared CWE-289
CVE-2026-76183Shared CWE-289

Affected Assets

hedgedoc
hedgedoc
≤ 1.9.9

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

—

Detect
Catch it (NIST detect / respond)

—

Harden
Shrink the surface (DISA STIG)
  • 8 hardening rules · 3 OS baselines
Validate
Prove the fix (OWASP ASVS)
  • V8.3.3
  • V10.3.2
  • V6.4.3

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-01 partial match
blocks

Proper identity management reduces alternate-name collisions but does not guarantee canonicalization inside the auth decision.

PR.AA-03 partial match
blocks

Strong authentication mechanisms directly prevent name-based bypass when they enforce canonical name checks.

PR.AA-05 partial match
blocks

Authorization policy enforcement assumes correct identity; the weakness occurs before policy is applied.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

A.5.15 only requires defining and documenting an access control policy plus requirements; it does not itself enforce rules or stop alternate-name authentication bypasses from being exploitable.

blocks

A.5.16 manages the lifecycle, uniqueness, and accountability of identities; it has no bearing on a product that authenticates by name but fails to canonicalize or check alternate names for the same resource/actor, so the weakness remains present and exploitable.

degrades

Proper management of authentication credentials can include rules against duplicate or alias identities.

blocks

A.5.18 governs the provisioning, review, and revocation of already-granted access rights to authenticated identities; it does not address or stop the distinct flaw in which authentication logic accepts an alternate name that bypasses the check.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (higher-evidence rows only; rows rated `none` are excluded).

Oracle Linux 8 (1 rule)
  • V-248538 OL 8 operating systems booted with United Extensible Firmware Interface (UEFI) must have a unique name for the grub superusers account when booting into single-user mode and maintenance. blocks CWE-289
RHEL 7 (1 rule)
  • V-244558 Red Hat Enterprise Linux operating systems version 7.2 or newer booted with United Extensible Firmware Interface (UEFI) must have a unique name for the grub superusers account when booting into single-user mode and maintenance. blocks CWE-289

References