-php,java,python-过滤及禁用

方案 1-禁用外部实体

  1. PHP:
  2. libxml_disable_entity_loader(true);
  3. JAVA:
  4. DocumentBuilderFactory dbf
  5. =DocumentBuilderFactory.newInstance();dbf.setExpandEntityReferences(false);
  6. Python
  7. from lxml import etreexmlData = etree.parse(xmlSource,etree.XMLParser(resolve_entities=False))

方案 2-过滤用户提交的 XML 数据

  1. 过滤关键词:<!DOCTYPE 和<!ENTITY,或者 SYSTEM PUBLIC