php代码审计之bluecms

访客4年前关于黑客接单1273

代码审计

一、审计 ***

审计 *** :

定位敏感关键字,回溯参数传递过程

定位敏感功能点,通读功能代码 (黑盒+白盒)

系统重装

文件上传

文件管理功能

登录认证

密码找回

订单支付

全文代码通读审计(index.php 跟踪调试)

实用工具:

seay 代码审计

rips

xdebug

二、Bluecms审计

2.0 审计环境

phpstudy

php5.2

bluecms1.6 sp1 (安装就不说了)

seay代码审计系统

2.1 ad_js.php sql注入漏洞

seay自动审计

image-20210217120104013

疑似存在 sql注入漏洞

image-20210217120448442

这里包含了网站的配置文件,且配置文件中有统一配置

对$*post、$*get、$*cookies和$*request统一进行gpc处理,对得到的参数转移特定的字符。

但是 ad_js.php 并没有使用单引号,所以可以直接绕过。

查看函数无过滤:

这里确实存在数字型注入。

image-20210217120834716

可根据页面回显,

image-20210217120923694

成功回显 7 的位置。

poc:

image-20210217123345760

2.2 comment.php sql注入漏洞

image-20210217123732625

:

配置文件中对$*post、$*get、$*cookies和$*request统一进行gpc处理,但是遗漏了$_SERVER。而且网站恰恰通过该变量获取ip地址,因此我们就可以对ip通过client-ip或x-forwarded-for等进行伪造。

phpstorm中快捷鍵在項目中搜索在哪調用了函数。

在中调用,

对进行转移避免 xss,

对其他参数进行gpc转译和字符的intval强制转换。

可这个函数就出了问题,没有过滤。那么我们就可以伪造 ip 造成sql注入了,

测试评论功能正常,

image-20210217130206619

我们可以修改源码让其将执行的sql 语句执行出来,然后结束程序。

image-20210217130251250

可以看到可成功伪造 ip

得到sql语句

INSERT INTO blue_comment (com_id, post_id, user_id, type, mood, content, pub_date, ip, is_check) VALUES ('', '1', '1', '1', '6', '123', '1613538389', '1.1.1.1,'1')

image-20210217130425682

那么我们在伪造 ip 的 评论处构造 sql语句,

poc:

发布评论成功

image-20210217131008151

成功注入

image-20210217131029568

2.3 文件包含漏洞

image-20210217131249998

750行

分析代码,我们发现$_POST['pay']并没有做多余的安全检测,直接进行拼接,前文中说道,对post *** 进行了重写,会对%00进行转译,所以利用%00进行截断是不行的。

在这里说一下各个截断的条件吧

应该是我本地环境配置原因,没复现成功,

后续可以上传头像,进行文件包含写shell.

2.4 用户注册xss 漏洞

这次不用Seay挖xss漏洞,我们通过关键功能测试来审计xss漏洞。 在后台->会员管理->会员列表处,管理员是可以查看会员信息的,要是此处信息能从前台插入xss代码,就能盗取管理员cookie。

来到前台会员注册处,尝试注册一个用户,可以看到可控的有用户名,邮箱,密码一般不考虑。

提交注册,抓包具体分析一下,可以看到走的是user.php的do_reg *** 。

image-20210217145213642

这里用户名长度不大于 16 ,邮箱前端验证。

我们选择邮箱处 xss.

image-20210217145956359

成功 xss,

再去看看管理后台,成功弹窗

image-20210217150044291

2.5 用户注册 sql注入

现在本地调一下代码

image-20210217152256880

继续使用 email

image-20210217151611235

可以看到满足 宽字节注入的条件,因为配置文件重写了 post *** ,所以注入的时候要注意单引号。

构造 paylaod

image-20210217154338028

image-20210217154429840

2.6 后台登录 sql 注入

image-20210217154620878

文件 *** do_login

:

宽字节注入,

image-20210217160245502

2.7 任意文件删除

image-20210217161207483

792 行。

要使得为空,

BLUE_ROOT 问当前文件所在路径。

此功能点在用户修改信息处,抓包,填入face_pic3 得值即可删除任意文件。

image-20210217162229379

相关文章

蒋欣微博骂孙俪原图(孙俪拒绝与蒋欣合作)

蒋欣微博骂孙俪原图(孙俪拒绝与蒋欣合作) 1、 2011年,《甄嬛传》火的时候,9岁开始便混迹娱乐圈却一直寂寂无名的蒋欣终于火了一把。她将年世兰的高傲霸气,尖酸刻薄演到了骨子里。 蒋欣饰演的...

远程偷偷监控对方手机(怎样监控别人微信不被发现)

你可以看到微信记录。有一扇后门。来 如何在不被发现的情况下查看我妻子的微信聊天 如何查看我妻子的微信聊天电话记录 我最近一直在查看我丈夫的微信聊天记录,但是我现在技术很差。我没找到。你可以找到它...

为什么手机能计算出我们行走的步数?

为什么手机能计算出我们行走的步数?

随着科技的高速发展,智能手机的功能也越来越强大,很多手机中都有计算步数的功能,为什么手机能计算出我们行走的步数呢?      ▲手机计算行走步数 计步器最早是由意大利的伦纳德·达芬奇想出来的,由...

黑客玩咖,网络黑客害处,2018破解扣扣密码的黑客的

RequestValidationMode 特点指定要运用的 ASP.NET 验证办法。 这可所以在 ASP.NET 版别(早于版别 4)中或在 .NET Framework 4 中运用的版别中运用...

电力金具是什么,电力金具在生活中又常被简称为

电力金具是什么,电力金具在生活中又常被简称为

电力金具在生活中又常被简称为金具。那电力金具真的只是我们字面理解的“金属工具”吗?看完下面的就应该全面的明白了,小编还要提醒,电力金具还是很重要的。 一、金具第一问:什么是金具,谁用,怎么流通...

每天一个伪装黑客的小技巧(怎样伪装成黑客)

每天一个伪装黑客的小技巧(怎样伪装成黑客)

本文目录一览: 1、如何假装自己是个黑客 2、怎么样才可以玩手机让被人以为我是黑客 3、lenovo电脑如何伪装成黑客 如何假装自己是个黑客 开几个CMD窗口,然后用notepad++打开几...