前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[代码审计]从0开始学习之bluecms(1)

[代码审计]从0开始学习之bluecms(1)

作者头像
YanXia
发布2023-04-07 16:42:07
7960
发布2023-04-07 16:42:07
举报
文章被收录于专栏:YX’blog

0x00前言

02292-rg935iyn4ll.png
02292-rg935iyn4ll.png

距离上一次更新,还是在三月份。主要是我最近太忙了无时间更新(挖src,挖cnvd,学业and so on),近期开始会陆续更新了。 在最近跟学长一起挖cnvd之中也是学到了不少关于代码审计的知识,这里手动@Xpr0a.c yyds。挖SQL和rce如喝水。 想看我5月份cnvd证书照片的请于一段时间后到我空间看看(还没归档)。 好了,言归正传。入门代码审计,大家通常会选择从bluecms开始审计,我也就从这个cms开始更新吧(我也是边学边更新)

0x01正文

我使用的环境php5.4.45+apache

  • 重装覆盖漏洞

我们先走正常流程搭建好网站如下

09927-fgvv4u6h3ia.png
09927-fgvv4u6h3ia.png

由于很多网站会存在重装覆盖的漏洞,所以我们先访问下install文件

27357-ijvgu0w68r.png
27357-ijvgu0w68r.png

可以发现这里确实可以重新安装该网站,漏洞+1(这里还和代审无关)

  • SQL注入

这里,我们需要用上seay源代码审计工具

72525-nw1s1grst28.png
72525-nw1s1grst28.png

别看这里好像漏洞很多,大多其实是误报,需要我们人工核实。 这里我们先学习挖掘select类型的SQL漏洞吧。 首先先挑选/ad_js.php文件

28679-7rt1nrifxrb.png
28679-7rt1nrifxrb.png
代码语言:javascript
复制
$ad = $db->getone("SELECT * FROM ".table('ad')." WHERE ad_id =".$ad_id);

先追踪一下getgone函数,这一看就是自定义函数

25378-0or4bgl9qgin.png
25378-0or4bgl9qgin.png
85988-fybnwafj7c5.png
85988-fybnwafj7c5.png

这里没什么大碍,就是执行sql语句的。让我们回到刚才的文件

13827-l6evllrk2zd.png
13827-l6evllrk2zd.png

可以发现数据是从这里利用GET方式进入的,当参数不为空时,trim函数会去除字符串两侧的空格,所以对我们没什么影响

47156-2bhez6132sv.png
47156-2bhez6132sv.png

这里可以发现文件上方引用了另外一个文件

84593-fgin78bgzdf.png
84593-fgin78bgzdf.png

可以发现,当没有开启魔术引号的时候就进入下面这处对数据的输入进行一定地处理 定位deep_addslashes进入/include/common.fun.php文件

03540-xs1shxuu7lb.png
03540-xs1shxuu7lb.png

addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。

25404-9z9bckxclft.png
25404-9z9bckxclft.png

最后我们在该处存在注入的地方看到

74000-8ujue0mtwfj.png
74000-8ujue0mtwfj.png

所以说,我们需要在源代码里查看输出。 Okey,我们来复现下这块漏洞,联合查询这些反复的操作就不多叙述了 由于这里存在魔术引号,当我们爆表以及接下来操作的时候难免会用到引号,但是这里又存在魔术引号无法在该处绕过,所以说我们可以通过把表名转化为16进制即可如下: /ad_js.php?ad_id=-1%20union%20select%201,2,3,4,5,6,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=0x626c7565

89070-iy5fczi8au.png
89070-iy5fczi8au.png

----------------------------待更新-----------------------------------

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年05月27日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00前言
  • 0x01正文
相关产品与服务
代码审计
代码审计(Code Audit,CA)提供通过自动化分析工具和人工审查的组合审计方式,对程序源代码逐条进行检查、分析,发现其中的错误信息、安全隐患和规范性缺陷问题,以及由这些问题引发的安全漏洞,提供代码修订措施和建议。支持脚本类语言源码以及有内存控制类源码。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档