freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

HDwiki二次注入案例分享
2018-07-04 10:00:18

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

0×00概述

近期看到网上公布较多hdwiki最新版的安全漏洞,这里以我自己发现的二次注入漏洞进行分享。

0×01 白盒审计

源码信息:HDWiki-v6.0UTF8-20170209

问题文件: \hdwiki\control\comment.php

漏洞类型:SQL注入

首先进行安装之后主界面如下;

34.png

直接看存在问题的文件,路径为\hdwiki\control\comment.php

以及具体页面为词条评论的地方;

32.png

首先看下写评价部分代码;

31.png

这里的$comment参数就是我们提的评论,可以看到使用过滤函数进行安全处理,还有在/hdwiki/model/hdwiki.class.php文件里发现使用全局转义处理;

35.png

所以这里不存在问题,我们看下有没有会再次利用这个评论$comment参数,

还是在comment.php这个文件里,下面看到doreport()这个函数;

34.png

这个是用来对评论进行举报的,可以看到这段代码会从数据库取出对应评论之后和举报原因一并重新执行数据库操作;具体代码部分为;

44.png

这里的$comment[‘comment’]为评论部分,$report为举报原因合并进入send_ownmessage(),也就是二次注入了。

0×02 漏洞利用

首先看下send_ownmessage()函数为;

45.png

具体数据库操作语句为;

"INSERT INTO".DB_TABLEPRE."pms(`from`,`fromid`,`drafts`,`toid`,`to`,`subject`,`message`,`time`,`new`) VALUES  ('".$sendarray['user']['username']."','".$sendarray['user']['uid']."','".$isdraft."','".$userinfo[$i]['uid']."','".$userinfo[$i]['username']."','".$sendarray['subject']."','".$sendarray['content']."','".$this->base->time."',1)"

可以看到是INSERT语句,还有VALUES结尾有1这个常量,所以具体payload为;

Payload=4444444444’,(1=sleep(6)),1)# 

首先对任意词条进行评论,输入以上payload;

47.png之后点击下面的举报,理由任意填写;

43.png

之后提交,6秒之后将会提示举报成功,burp截图为;

49.png

显示为7秒,其中1秒是网站加载需要的时间,成功二次注入了。

* 本文作者:davichi8282,转载请注明来自FreeBuf.COM

# 漏洞 # 二次注入
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者