java 模板引擎_Xcheck之Java安全检查引擎

d7b3e82264ba0e3e0cec415324a7001d.png

Java安全检查引擎

Xcheck的java安全检查引擎支持Spring RequestMappingJAX-RSWebServiceJava Servlet几种常用web接口的代码安全检查,目前内部误报率数据统计低于10%,扫描速度1w+行每秒。

覆盖漏洞类别包括但不限于以下:

  • 系统命令注入
  • 模板注入
  • 反序列化
  • 路径穿越漏洞
  • SQL注入
  • XML实体注入
  • XPATH注入
da30def1da033c78bd46bfe7bbb10450.png

OWASP Benchemark评测结果

OWASP benchmark是OWASP组织下的一个开源项目,又叫作OWASP基准测试项目,它是免费且开放的测试套件。可用来评估那些自动化安全扫描工具的速度、覆盖范围和准确性

919b2095155f87639b62d2c2a799f893.png
xcheck-java benchmark评测结果

从上图结果可以看出,对注入类漏洞(LDAPI、PATH Traversal、SQLI、XPATHI、CMDI)Xcheck的召回率均达到了100%

5c8dd68f967082fcf79898af8b16c6bd.png
某商业化产品benchmark评测结果

从上图可以看出,对于基于benchmark评测,Xcheck的测试结果是与现有的某些商业化的代码检查工具的测试结果是不相上下的。

151b7b3125fbf4a288a3e2fbb8b89649.png

Apache Ambari任意代码执行漏洞:CVE-2014-3582 检测

在对内部项目的代码检查中,发现一个项目存在命令注入漏洞,经过查找,确认是已经披露出来的Apache Ambari任意代码执行漏洞——CVE-2014-3582。

47b756f321d5ac6a4eec3d5ef97c28e7.png
发现漏洞
cb96005f65b76c95706a9efd0b65e19a.png
CVE-2014-3582

漏洞分析如下:

  1. 污点引入,java/org/apache/ambari/server/security/unsecured/rest/CertificateSign.java,63行
b3d7049b6c8365dd9ecde9937b7529ef.png
污点引入
  1. 跟进signAgentCrt函数,java/org/apache/ambari/server/security/CertificateManager.java,187行。在192行将污点传递给agentHostname,在239行agentHostname传递给agentCrtName,然后又到scriptArgs当中。
f1db9b5e9eb064782416b295d29209b2.png
signAgentCrt函数
90a77c4841f735d827561a723c5b51f0.png
污点传递
  1. java/org/apache/ambari/server/security/CertificateManager.java,271行。调用runCommand函数,然后触发漏洞。
20ba9644b754d79c00617d47756c3220.png
调用runCommand函数
fee90bf3856473d23f526063d21e652b.png
runCommand执行命令触发漏洞

整理数据流分析图如下:

3c97c8f107558986021a8c1a3bd00a5c.png
数据流分析

最后

Xcheck的Java引擎还在不断优化提升过程中,期间也发现不少开源项目的0day漏洞,待修复之后会分享出来,敬请期待。


想了解Xcheck更多信息或者代码安全审计相关技术欢迎关注xcheck公众号~57c0b12aa43ebd7365541795a8c086e2.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值