LiveActive security incident?Get immediate response
CVE Record

CVE-2016-10591: Prince is a Node API for executing XML/HTML to PDF renderer PrinceXML via prince(1) CLI.

Prince is a Node API for executing XML/HTML to PDF renderer PrinceXML via prince(1) CLI. prince downloads zipped resources over HTTP, which leaves it vulnerable to MITM attacks. It may be possible to cause remote code execution (RCE) by swapping out the requested tarball with an attacker controlled tarball if the attacker is on the network or positioned in between the user and the remote server.

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

This CVE affects the Node.js prince module used to drive PrinceXML PDF rendering. It fetches zipped resources over plain HTTP, so a network-positioned attacker could replace a download and potentially gain code execution. The sources do not provide a CVSS score, patch version, or evidence of active exploitation.

Executive priority

Treat this as a targeted supply-chain and build-environment risk, not a broad internet-facing emergency. Prioritize systems that generate PDFs in automated pipelines or sensitive environments, especially where outbound HTTP is allowed.

Technical view

CVE-2016-10591 is a CWE-311 transport-security issue in the prince Node module. The module downloads zipped resources over HTTP when invoking the PrinceXML CLI. If an attacker can intercept that network path, the downloaded archive may be substituted with attacker-controlled content, creating possible RCE exposure.

Likely exposure

Exposure is likely limited to applications, CI jobs, or PDF-generation services that install or run the affected prince Node module and permit its HTTP resource downloads. The provided data lists all versions as affected but does not identify downstream products or package versions.

Exploitation context

The cited description requires a man-in-the-middle position between the user and remote server. The source bundle does not show KEV status, public exploitation, exploit maturity, or confirmed real-world attacks.

Researcher notes

The provided sources are sparse: no CVSS vector, fixed version, exploit references, or detailed affected-version matrix. The evidence supports MITM-based archive substitution risk in the Node module, not a general claim against all PrinceXML deployments.

Mitigation direction

  • Check current npm, vendor, and Node Security advisory guidance for replacement or remediation.
  • Remove the prince Node module where it is not required.
  • Avoid running affected installs or rendering jobs on untrusted networks.
  • Restrict outbound HTTP downloads from build and rendering environments.
  • Prefer dependencies and workflows that retrieve artifacts over authenticated TLS.

Validation and detection

  • Search dependency manifests and lockfiles for the prince Node module.
  • Identify hosts or CI jobs that execute PrinceXML through Node wrappers.
  • Review network egress logs for HTTP downloads during install or rendering workflows.
  • Confirm whether compensating controls block unauthenticated HTTP artifact retrieval.
  • Document any remaining use and the business owner for remediation tracking.
Prepared
Confidence
medium
Sources
3

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-311: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
description · low confidence lookup

Execution behavior lookup

The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2016-10591 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

0CVSS vectors
0Timeline events
0ADP providers
2Source links

CVSS and timeline data

No CVSS vectors or timeline events were available in the normalized CVE source material.

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
HackerOneprince node moduleAll versionsListed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-311 · source CWE mapping

Missing Encryption of Sensitive Data

Missing Encryption of Sensitive Data represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.