Skip to content

Commit b119180

Browse files
committed
more XXE fixes
1 parent 01fcfcc commit b119180

File tree

3 files changed

+12
-3
lines changed

3 files changed

+12
-3
lines changed

soot-infoflow-summaries/src/soot/jimple/infoflow/methodSummary/xml/MetaDataReader.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,10 @@ public SummaryMetaData read(Reader reader) throws XMLStreamException, SummaryXML
3939
SummaryMetaData metaData = new SummaryMetaData();
4040
XMLStreamReader xmlreader = null;
4141
try {
42-
xmlreader = XMLInputFactory.newInstance().createXMLStreamReader(reader);
42+
XMLInputFactory factory = XMLInputFactory.newInstance();
43+
factory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
44+
factory.setProperty(XMLInputFactory.SUPPORT_DTD, false);
45+
xmlreader = factory.createXMLStreamReader(reader);
4346

4447
String name = "";
4548
String type = "";

soot-infoflow-summaries/src/soot/jimple/infoflow/methodSummary/xml/SummaryReader.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,10 @@ public void read(Reader reader, ClassMethodSummaries summaries)
5858
throws XMLStreamException, SummaryXMLException, IOException {
5959
XMLStreamReader xmlreader = null;
6060
try {
61-
xmlreader = XMLInputFactory.newInstance().createXMLStreamReader(reader);
61+
XMLInputFactory factory = XMLInputFactory.newInstance();
62+
factory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
63+
factory.setProperty(XMLInputFactory.SUPPORT_DTD, false);
64+
xmlreader = factory.createXMLStreamReader(reader);
6265
final MethodSummaries summary = summaries.getMethodSummaries();
6366

6467
Map<String, String> sourceAttributes = new HashMap<String, String>();

soot-infoflow/src/soot/jimple/infoflow/results/xml/InfoflowResultsReader.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,10 @@ public SerializedInfoflowResults readResults(String fileName) throws XMLStreamEx
4040

4141
XMLStreamReader reader = null;
4242
try (InputStream in = new FileInputStream(fileName)) {
43-
reader = XMLInputFactory.newInstance().createXMLStreamReader(in);
43+
XMLInputFactory factory = XMLInputFactory.newInstance();
44+
factory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
45+
factory.setProperty(XMLInputFactory.SUPPORT_DTD, false);
46+
reader = factory.createXMLStreamReader(in);
4447

4548
String statement = null;
4649
String method = null;

0 commit comments

Comments
 (0)