『代码审计』某博客系统 1day 审计

admin 2022年3月4日17:53:56评论94 views字数 1455阅读4分51秒阅读模式

点击蓝字

『代码审计』某博客系统 1day 审计

关注我们



日期:2022-03-04

作者:jgk01

介绍:又一次代码审计实录。


0x00 前言

好久没有代码审计了,之前写过一篇代码审计入门的文章,总结了一些代码审计需要的准备工作和用到的应用软件,并且用一个比较简单的cms作为事例来进行了详细的代码审计分析,这次文章在写一个博客程序的代码审计。

0x01 准备工作

代码审计的水平提升是一个循循渐进的过程,当我们学习完所需的基础知识之后,最开始我们可以选择一些公开的大家研究比较多的cms或者框架进行代码审计,通过前人的脚步,去累积代码量,加深对基础知识的理解和掌握,在复现一定数量的代码以后,如果你还是挖不到0day,那么我认为可以去cnvd找一些别人已经发现漏洞但是没有完全公开的开源代码挖1day,也是很好的思路。

0x02 漏洞演示

1.目前这个漏洞在最新的代码中已经修复,所以可以拿来给大家做个例子,首先把这个博客系统搭建好,win可以通过使用phpstudy部署环境,mac的可以用MAMP集成环境进行部署,部署方式也很简单,直接把文件夹放到网站目录下然后一键化部署就可以了。

2.该漏洞在管理员后台应用中心新建插件处,存在任意命令执行漏洞具体的攻击如下文所示:

存在漏洞处链接:

http://localhost:8888/zb_users/plugin/AppCentre/plugin_edit.php

『代码审计』某博客系统 1day 审计

3.填写添加应用,最后的可选字段不填,然后抓包:

『代码审计』某博客系统 1day 审计

4.我们修改app_nameapp_path两个地方,下面是修改后的数据包:

『代码审计』某博客系统 1day 审计

5.发送数据包,成功添加插件,然后我们来到插件管理处,找到插入的插件,开启插件。

『代码审计』某博客系统 1day 审计

6.成功写入了phpinfo();执行命令:

『代码审计』某博客系统 1day 审计

这就是整个漏洞的复现过程。

0x03 代码分析

下面我们看代码分析,问题代码出现在zb_userspluginAppCentreplugin_edit.php 第80-85行:

『代码审计』某博客系统 1day 审计

我们可以看到这里app_nameapp_path是通过post传参数并且没有经过任何过滤的,因此我们传入的数据是可以一动不动的传到这个系统中的,我们正常添加一个插件可以看到:

『代码审计』某博客系统 1day 审计

这里我们插入了一个app_namewww的插件,可以发现他没有经过任何的过滤就在新建的插件中将www写入了新的php页面中,那么我们就可以闭合前后的引号写入php代码,在这里我们可以看到之前写入的phpinfo();

『代码审计』某博客系统 1day 审计

可以直接写入。我们写一个';eval($_GET["cmd"]);'发现也可以直接写入并且执行php函数命令:

『代码审计』某博客系统 1day 审计

0x04 后记

该漏洞现在在最新版本已经修复了,也是最近cnvd上已经上报的漏洞,大家有兴趣的可以多去cnvd找这些开源系统,在已知有漏洞的情况下,进行一些代码审计来提高我们的审计水平,然后也可以在这个基础上继续去挖掘,尝试是否能在审计到新的问题,以此慢慢积累,进步。


免责声明:本文仅供安全研究与讨论之用,严禁用于非法用途,违者后果自负。

『代码审计』某博客系统 1day 审计

宸极实验室隶属山东九州信泰信息科技股份有限公司,致力于网络安全对抗技术研究,是山东省发改委认定的“网络安全对抗关键技术山东省工程实验室”。团队成员专注于 Web 安全、移动安全、红蓝对抗等领域,善于利用黑客视角发现和解决网络安全问题。

团队自成立以来,圆满完成了多次国家级、省部级重要网络安全保障和攻防演习活动,并积极参加各类网络安全竞赛,屡获殊荣。

对信息安全感兴趣的小伙伴欢迎加入宸极实验室,关注公众号,回复『招聘』,获取联系方式。


原文始发于微信公众号(宸极实验室):『代码审计』某博客系统 1day 审计

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月4日17:53:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   『代码审计』某博客系统 1day 审计http://cn-sec.com/archives/815929.html

发表评论

匿名网友 填写信息