XML&XXE 安全&无回显方案&OOB 盲注&DTD 外部实体&黑白盒挖掘

详细点:

XML 被设计为传输和存储数据, XML 文档结构包括 XML 声明、 DTD 文档类型定义(可
选)、文档元素,其焦点是数据的内容,其把数据从 HTML 分离,是独立于软件和硬件的
信息传输工具。等同于 JSON 传输。 XXE 漏洞 XML External Entity Injection ,
即 xml 外部实体注入漏洞, XXE 漏洞发生在应用程序解析 XML 输入时,没禁止外部实体
的加载,导致可加载恶意外部文件,造成文件读取、命令执行、内网扫描、攻击内网等危
害。
XML 与 HTML 的主要差异:
XML 被设计为传输和存储数据,其焦点是数据的内容。
HTML 被设计用来显示数据,其焦点是数据的外观。
HTML 旨在显示信息 ,而 XML 旨在传输存储信息。
Example :网站的 xml 文件解析
-XXE 黑盒发现:
1 、获取得到 Content-Type 或数据类型为 xml 时,尝试 xml 语言 payload 进行测试
2 、不管获取的 Content-Type 类型或数据传输类型,均可尝试修改后提交测试 xxe
3 、 XXE 不仅在数据传输上可能存在漏洞,同样在文件上传引用插件解析或预览也会造成
文件中的 XXE Payload 被执行
-XXE 白盒发现:
1 、可通过应用功能追踪代码定位审计
2 、可通过脚本特定函数搜索定位审计
3 、可通过伪协议玩法绕过相关修复等

XXE 修复防御方案:

  • 方案 1- 禁用外部实体
    PHP:
    libxml_disable_entity_loader(true);
    JAVA:
    DocumentBuilderFactory dbf
    =DocumentBuilderFactory.newInstance();dbf.setExpandEntityReferenc
    es(false);
    Python :
    from lxml import etreexmlData =
    etree.parse(xmlSource,etree.XMLParser(resolve_entities=False))
  • 方案 2- 过滤用户提交的 XML 数据
    过滤关键词: <!DOCTYPE 和 <!ENTITY ,或者 SYSTEM 和 PUBLIC
相关推荐
chenyulin454537 分钟前
企业微信API二次开发:万级并发回调下的极致幂等性设计与防重放架构实战
大数据·人工智能·安全·架构·企业微信
雨白2 小时前
嵌套 ScrollView 滑动冲突实战:实现内部优先滚动
android
阿pin2 小时前
Android随笔-IntentService详解(了解)
android·intentservice
海天鹰2 小时前
content://com.android.externalstorage.documents/document/primary%3A
android
前网易架构师-高司机3 小时前
带标注的山体滑坡塌方数据集数据集,识别率78.1%,974张图,支持yolo,coco json,voc xml,文末有模型训练代码
xml·yolo·json·数据集·自然灾害·山体滑坡
CypressTel3 小时前
JADEPUFFER暴露企业安全防御新挑战——赛柏特安全观察
安全
阿pin3 小时前
Android随笔-WorkManager 与 AlarmManager
android·alarmmanager·workmanager
帅帅的记忆3 小时前
uniapp项目调用原生android studio的sdk文件(即aar文件)
android·uni-app·android studio
上海云盾-小余4 小时前
流量攻击详解:区分带宽耗尽与资源耗尽两类攻击
爬虫·安全·ddos
用户69371750013844 小时前
Kimi K3 综合能力处于全球第一梯队
android·前端·后端