← Back to Feed CACHED · 2026-06-29 11:57:22 · CACHE_KEY CVE-2026-13543
CVE-2026-13543 · CWE-287 · Disclosed 2026-06-29

A vulnerability was detected in Documenso up to 2

ASSESSED — NOISGATE V0.5
Vendor
Reassessed
Verdict:
Do you agree?
01 · The Real Story

A lockpick that only works on one obscure brand of mailbox and only when the mailman is whistling

Documenso is an open-source, self-hosted alternative to DocuSign for e-signing contracts. CVE-2026-13543 is an improper authentication flaw (CWE-287) affecting all releases through 2.11.0. The vendor description is intentionally thin — the CVSS vector tells the real story: network-reachable (AV:N), no privileges (PR:N), no user interaction (UI:N), but high attack complexity (AC:H) and only low impact on confidentiality, integrity, and availability. That points to an edge-case auth path — likely a token-handling, session-binding, or signer-link verification weakness — that leaks or partially manipulates a single signing session rather than handing over the whole tenant.

The vendor's MEDIUM/5.6 rating is fair to slightly generous. AC:H plus three Low impact ratings is the textbook profile of a contestable, race-condition-flavored auth bug — not a credential bypass. We're nudging the score down to 4.5 because Documenso's enterprise install base is small, prod deployments are almost always behind SSO/VPN, and there is no public PoC or exploitation chatter as of disclosure day.

"Niche signing platform, high-complexity auth flaw, only partial CIA impact — patch on normal cadence, no fire drill."
02 · The Attack Path

3 steps from start to impact.

STEP 01

Locate a reachable Documenso instance

Attacker enumerates internet-exposed Documenso deployments via Shodan/Censys favicon hash or the default /signin route. Most enterprise installs are behind a corporate IdP or VPN gateway, so the candidate pool is small SaaS-style hobby and SMB deployments.
Conditions required:
  • Documenso ≤ 2.11.0 reachable over HTTP(S)
  • No upstream auth proxy (Cloudflare Access, Tailscale, etc.)
Where this breaks in practice:
  • Enterprise tenants almost universally front Documenso with Okta/Azure AD or place it on a private network
  • Shodan exposure population for Documenso is in the low hundreds globally
Detection/coverage: Censys query services.http.response.html_title: "Documenso" enumerates exposed instances; no specific scanner check yet.
STEP 02

Trigger the high-complexity auth path

The CVSS AC:H indicates the attacker must win a race, predict a value, or manipulate a transient state — typical patterns include token reuse across signing sessions, IDOR on a signer link, or signature verification bypass during webhook replay. The attacker crafts repeated requests against the affected endpoint until the precondition lands.
Conditions required:
  • Knowledge of a valid document/signer ID or guessable token format
  • Ability to send high-volume crafted requests
Where this breaks in practice:
  • High-complexity exploitation generally requires bespoke scripting and reliable timing — not opportunistic
  • WAFs with anomaly-rate rules will flag the burst traffic
Detection/coverage: Anomalous POST volume to /api/signing/* or /api/v1/documents/* endpoints is the cleanest signal.
STEP 03

Partial compromise of a signing session

Successful exploit yields Low confidentiality (snippet of a document or signer email), Low integrity (modify one field in transit), or Low availability (kill a specific signing session). Scope is S:U — the attacker stays within the Documenso authentication context and does not pivot to host or DB.
Conditions required:
  • Step 2 succeeded
Where this breaks in practice:
  • No code execution, no credential theft, no admin takeover documented
  • Audit log entries for the affected document remain visible to the legitimate owner
Detection/coverage: Documenso audit log shows document state changes from unexpected IPs; correlate with WAF telemetry.
03 · Intelligence Metadata

The supporting signals.

In-the-wild exploitationNone observed. Not in CISA KEV; no GreyNoise tag as of 2026-06-29.
Public PoCNone published. No GitHub PoC repo, no Metasploit module, no writeup on Twitter/X or Mastodon infosec circles.
EPSSPre-scoring window — expect <0.5% given AC:H, low impact, and niche deployment footprint.
KEV statusNot listed.
CVSS vectorCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L — network reach offset by high complexity; only Low impact across CIA.
Affected versionsDocumenso ≤ 2.11.0 (all prior releases per vendor advisory wording).
Fixed versionPatched release expected in the 2.11.x or 2.12.0 line — confirm via Documenso GitHub releases before deploying.
Exposure / populationShodan/Censys show a low-hundreds internet-exposed footprint globally; vast majority of enterprise installs are behind SSO/VPN.
Disclosure date2026-06-29 (today).
ReporterNot publicly attributed in the initial advisory; likely community-reported via Documenso's GitHub Security Advisory channel.
04 · The Call

noisgate verdict.

Final Verdict
= UNCHANGED to MEDIUM (4.5/10)

The single most decisive factor is bounded blast radius — S:U plus Low/Low/Low CIA means a successful exploit leaks fragments of one signing session, not the tenant, host, or document store. Documenso is not a high-value-role component in the noisgate catalog (not an IdP, hypervisor, CA, PAM, backup, or kernel agent), so there is no role multiplier forcing a floor above MEDIUM.

MEDIUM vulnerability scope (advisory is intentionally thin pending patch adoption)
HIGH absence of in-the-wild exploitation
HIGH exposure population estimate

Why this verdict

  • High attack complexity (AC:H) — exploitation requires winning a race or predicting state, not a one-shot curl, so opportunistic mass exploitation is unlikely.
  • Low impact across CIA — vendor explicitly scores C:L/I:L/A:L, capping realistic damage at one signing session, not the tenant or host.
  • Narrow exposure population — Documenso enterprise installs are overwhelmingly behind SSO or private network; internet-facing footprint is in the low hundreds globally.
  • Role multiplier: Documenso is a document-signing application — not in the high-value-role catalog (no IdP, hypervisor, CA, PAM, backup, or kernel agent characteristics). Worst plausible role outcome: leakage of signed legal documents from one tenant — serious for the affected business, but not fleet-scale.
  • No KEV, no PoC, no chatter — disclosure-day baseline with zero exploitation evidence keeps the urgency dial low.

Why not higher?

HIGH would require either fleet-scale blast radius or active exploitation. Neither exists: the bug is bounded to a single signing session (S:U + Low impacts) and there is no PoC, KEV listing, or telemetry of in-the-wild use. Documenso does not occupy a high-value role that forces a HIGH floor.

Why not lower?

LOW would understate the regulatory and contractual sensitivity of e-signed documents. A confidentiality leak from a signing flow can expose contract terms, signer identity, or legal positioning — material harm even at C:L. The network-reachable, no-auth-required precondition also means the bug is probeable from the public internet wherever the instance is exposed, which keeps it above pure backlog hygiene.

05 · Compensating Control

What to do — in priority order.

  1. Front Documenso with an authenticating reverse proxy — Put Cloudflare Access, Tailscale, Pomerium, or oauth2-proxy in front of /api/* and /signin so unauthenticated network reach is impossible. This neutralizes the AV:N + PR:N preconditions entirely. MEDIUM verdict carries no mitigation SLA — fold this into the 365-day remediation window or do it now if you happen to have an exposed instance.
  2. Rate-limit and alert on signing endpoints — The AC:H exploit profile means an attacker must hammer the endpoint to win the race. A 10 req/sec per-IP cap on /api/signing/* and an alert at 100 req/min raises exploitation cost to near-zero return. Deploy alongside the patch.
  3. Audit recent signing-flow telemetry — Pull the last 90 days of Documenso audit logs and correlate signing events against expected signer source IPs. Anomalies here are your only retroactive detection if the bug was exploited pre-disclosure.
  4. Subscribe to Documenso's GitHub Security Advisories — The vendor publishes via GHSA; subscribing gives you the fixed-version tag the moment it ships so you can close the remediation loop.
What doesn't work
  • WAF signature rules — there is no public PoC pattern yet to write a signature against; only behavioral/rate rules help.
  • EDR on the host — the exploit is application-layer and produces no on-disk artifacts; host-based detection is blind here.
  • MFA on user accounts — the affected path is PR:N (no authentication required), so MFA on logged-in users does nothing.
06 · Verification

Crowdsourced verification payload.

Run on the Documenso host (or any host with curl that can reach the instance) as any user. Invoke with the base URL of your deployment, e.g. ./check_documenso.sh https://sign.corp.example.com. No privileges required beyond network reach.

noisgate-verify.sh
BASHREAD-ONLYSAFE
#!/usr/bin/env bash
# CVE-2026-13543 — Documenso ≤ 2.11.0 improper authentication check
# Usage: ./check_documenso.sh <base_url>
# Exit: 0 PATCHED, 1 VULNERABLE, 2 UNKNOWN

set -u
BASE="${1:-}"
if [ -z "$BASE" ]; then
  echo "UNKNOWN: usage $0 <base_url>" >&2
  exit 2
fi

# Documenso exposes build metadata at /api/health or surfaces version in the
# footer / og:meta tags. Try the API endpoint first, fall back to HTML scrape.
VER=$(curl -fsSL --max-time 10 "$BASE/api/health" 2>/dev/null \
      | grep -oE '"version"[[:space:]]*:[[:space:]]*"[^"]+"' \
      | head -1 \
      | sed -E 's/.*"([^"]+)"$/\1/')

if [ -z "$VER" ]; then
  VER=$(curl -fsSL --max-time 10 "$BASE/" 2>/dev/null \
        | grep -oE 'documenso[/-]v?[0-9]+\.[0-9]+\.[0-9]+' \
        | head -1 \
        | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
fi

if [ -z "$VER" ]; then
  echo "UNKNOWN: could not determine Documenso version at $BASE"
  exit 2
fi

# semver compare against 2.11.0
IFS=. read -r MA MI PA <<< "$VER"
if [ "$MA" -lt 2 ] || { [ "$MA" -eq 2 ] && [ "$MI" -lt 11 ]; } || { [ "$MA" -eq 2 ] && [ "$MI" -eq 11 ] && [ "$PA" -le 0 ]; }; then
  echo "VULNERABLE: Documenso $VER ≤ 2.11.0 — CVE-2026-13543 applies"
  exit 1
fi

echo "PATCHED: Documenso $VER > 2.11.0"
exit 0
07 · Bottom Line

If you remember one thing.

TL;DR
Monday morning: don't break cadence for this one. Inventory your Documenso footprint, run the version check, and confirm none of those instances is on the open internet without an authenticating proxy in front. MEDIUM carries no noisgate mitigation SLA — skip the 30-day fire drill and go straight to the noisgate remediation SLA of ≤ 365 days for the vendor patch (target the next quarterly maintenance window once Documenso ships the 2.11.x/2.12.0 fix). The one exception: if your Documenso instance is internet-exposed without SSO/VPN in front, fix the exposure today regardless of this CVE — that's pre-existing hygiene debt this bug just highlights.

Sources

  1. GitHub Advisory Database (unreviewed)
  2. Documenso GitHub repository
  3. Documenso GitHub Security Advisories
  4. CISA Known Exploited Vulnerabilities Catalog
  5. MITRE CWE-287: Improper Authentication
  6. NVD CVE-2026-13543
  7. FIRST EPSS lookup
  8. VulDB CVE index
Peer Review

What defenders are saying.

Submit a review attribution: handle + country only
0 flags selected · stored anonymously
Validation Results

Crowdsourced verification outputs.

Results submitted by users who ran the verification payload against their environment.