javaweb代码审计记录(三)

admin 2022年5月16日02:45:16评论45 views字数 764阅读2分32秒阅读模式

欢迎转发,请勿抄袭

一、前言

        项目代码源自炼石计划的代码审计系统三

二、使用到的工具

            idea

            idea插件(Free MyBatis Too)

            mysql

三、漏洞挖掘过程

        将代码部署完成后,进行正常访问,该系统是仿天猫的ui做的

javaweb代码审计记录(三)

        当浏览到一个页面参数category_id是整数时,页面正常

javaweb代码审计记录(三)

        当category_id传入一个字符串时,是一个报错的信息

javaweb代码审计记录(三)

        本来这是一个很正常的报错信息,数据类型的一个报错,跟进代码,发现是定义了category_id为整数类型,传入进来是字符类型,因此报错。

javaweb代码审计记录(三)

        那么,按照正常来说,这种的报错信息无害,但是,log4j的扫描工具检测到log4j远程命令执行。继续跟进代码,并在下方下断点。防止往下执行。

javaweb代码审计记录(三)

        这里直接报错,未进行下一步执行,也就没有类似logger.info()这些的触发方法。通过排查发现log4j的配置文件可能有问题。以下是两处相对可疑的地方:

        可疑点一:

javaweb代码审计记录(三)

        可疑点二:

javaweb代码审计记录(三)

       这两个加起来,猜测是不是等于logger.info()????


javaweb代码审计记录(三)

       尝试使用log4j的dnslog攻击语句

javaweb代码审计记录(三)

        测试dnslog回显结果

javaweb代码审计记录(三)

        测试远程命令执行touch /tmp/123

javaweb代码审计记录(三)

        ldap收到请求

javaweb代码审计记录(三)

        查看tmp下的文件

javaweb代码审计记录(三)

        命令已经执行,idea日志输出

javaweb代码审计记录(三)

        相关代码回复:"审计3"

文章声明:文章涉及到的工具、及教程仅供学习参考,请勿非法使用。否则与作者无关!

原文始发于微信公众号(yudays实验室):javaweb代码审计记录(三)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月16日02:45:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   javaweb代码审计记录(三)https://cn-sec.com/archives/1009558.html

发表评论

匿名网友 填写信息