High severityNVD Advisory· Published Jul 22, 2014· Updated May 6, 2026
CVE-2014-3530
CVE-2014-3530
Description
The org.picketlink.common.util.DocumentUtil.getDocumentBuilderFactory method in PicketLink, as used in Red Hat JBoss Enterprise Application Platform (JBEAP) 5.2.0 and 6.2.4, expands entity references, which allows remote attackers to read arbitrary code and possibly have other unspecified impact via unspecified vectors, related to an XML External Entity (XXE) issue.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
org.picketlink:picketlink-commonMaven | < 2.7.0.Final | 2.7.0.Final |
Patches
18c78668e4f08[PLINK-509] setting required parser features
3 files changed · +22 −0
modules/common/src/main/java/org/picketlink/common/DefaultPicketLinkLogger.java+5 −0 modified@@ -2374,4 +2374,9 @@ public RuntimeException cannotSetMaxPoolSizeToNegative(String max) { return new RuntimeException("Cannot set maximum STS client pool size to negative number (" + max + ")"); } + @Override + public RuntimeException parserFeatureNotSupported(String feature) { + return new RuntimeException("Parser feature " + feature + " not supported."); + } + }
modules/common/src/main/java/org/picketlink/common/PicketLinkLogger.java+2 −0 modified@@ -1215,4 +1215,6 @@ public interface PicketLinkLogger { RuntimeException cannotSetMaxPoolSizeToNegative(String max); + RuntimeException parserFeatureNotSupported(String feature); + } \ No newline at end of file
modules/common/src/main/java/org/picketlink/common/util/DocumentUtil.java+15 −0 modified@@ -66,6 +66,10 @@ public class DocumentUtil { private static DocumentBuilderFactory documentBuilderFactory; + public static final String feature_external_general_entities = "http://xml.org/sax/features/external-general-entities"; + public static final String feature_external_parameter_entities = "http://xml.org/sax/features/external-parameter-entities"; + public static final String feature_disallow_doctype_decl = "http://apache.org/xml/features/disallow-doctype-decl"; + /** * Check whether a node belongs to a document * @@ -517,6 +521,17 @@ private static DocumentBuilderFactory getDocumentBuilderFactory() { documentBuilderFactory = DocumentBuilderFactory.newInstance(); documentBuilderFactory.setNamespaceAware(true); documentBuilderFactory.setXIncludeAware(true); + String feature = ""; + try { + feature = feature_disallow_doctype_decl; + documentBuilderFactory.setFeature(feature, true); + feature = feature_external_general_entities; + documentBuilderFactory.setFeature(feature, false); + feature = feature_external_parameter_entities; + documentBuilderFactory.setFeature(feature, false); + } catch (ParserConfigurationException e) { + throw logger.parserFeatureNotSupported(feature); + } } finally { if (tccl_jaxp) { SecurityActions.setTCCL(prevTCCL);
Vulnerability mechanics
Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
18- rhn.redhat.com/errata/RHSA-2014-0883.htmlnvdVendor AdvisoryWEB
- rhn.redhat.com/errata/RHSA-2014-0884.htmlnvdVendor AdvisoryWEB
- rhn.redhat.com/errata/RHSA-2014-0885.htmlnvdVendor AdvisoryWEB
- rhn.redhat.com/errata/RHSA-2014-0886.htmlnvdVendor AdvisoryWEB
- github.com/advisories/GHSA-2c9q-qwrc-f486ghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2014-3530ghsaADVISORY
- rhn.redhat.com/errata/RHSA-2015-0091.htmlnvdWEB
- rhn.redhat.com/errata/RHSA-2015-0675.htmlnvdWEB
- rhn.redhat.com/errata/RHSA-2015-0720.htmlnvdWEB
- rhn.redhat.com/errata/RHSA-2015-0765.htmlnvdWEB
- rhn.redhat.com/errata/RHSA-2015-1888.htmlnvdWEB
- secunia.com/advisories/60047nvdWEB
- secunia.com/advisories/60124nvdWEB
- www.securitytracker.com/id/1030607nvdWEB
- bugzilla.redhat.com/bugzilla/show_bug.cgighsaWEB
- exchange.xforce.ibmcloud.com/vulnerabilities/94700nvdWEB
- github.com/picketlink/picketlink/commit/8c78668e4f08cf3c4ed14d8a36d402dcf02cb057ghsaWEB
- issues.jboss.org/browse/PLINK-509ghsaWEB
News mentions
0No linked articles in our index yet.