Joern In RealWorld (1) - Acutators + CVE-2022-21724

Joern In RealWorld (1) - Acutators + CVE-2022-21724

💡 原文中文,约9600字,阅读约需23分钟。
📝

内容提要

本文记录了作者使用Joern复现真实漏洞的过程,选择了Java-sec-code的范例代码作为第一部分,并介绍了Springboot Acutators导致命令执行和postgreSQL jdbc反序列化漏洞。作者详细介绍了Joern分析Java代码的方法和防御措施,并详细介绍了这两个漏洞的利用链和修复方法。最后,作者提到了Joern在分析漏洞时的局限性。

🎯

关键要点

  • 作者使用Joern复现真实漏洞的过程,选择Java-sec-code的范例代码。
  • 介绍了Springboot Acutators导致命令执行和postgreSQL jdbc反序列化漏洞。
  • Joern分析Java代码的方法可以选择用代码文件夹或直接分析jar包。
  • SpringBoot Actuator是内置的监控管理插件,配置不当可能导致信息泄露。
  • Actuator接口配合组件可能导致RCE,防御方法主要是增加鉴权限制。
  • Joern在分析漏洞时的局限性,无法读取所有配置文件,尤其是pom.xml。
  • PostgreSQL jdbc反序列化漏洞的核心在于jdbc连接链接可控。
  • 利用链的构造需要从代码的角度验证漏洞存在,分析postgresql的组件代码。
  • Joern的CPG结构中没有执行流概念,节点之间的链接仅为AST指向。
  • 修复漏洞的方法是限制获取的类名必须是指定类的子类。
➡️

继续阅读