目录
四、越权检测-Burpsuite插件Authz安装测试(插件使用)
四、某商场系统商品支付逻辑测试-数量,订单(购买--截包--改包--放包)
33、逻辑越权之水平垂直越权
原理
一、Pikachu-本地水平垂直越权演示(漏洞成因)
1.水平越权
输入账号kobe,密码123456登录
登陆进去后点击查看个人信息抓包
这里看到有username参数,可以更改用户,这里更改为lucy放包
发现个人信息已经更改,水平越权成功
2.垂直越权
先用admin/123456账户登录,管理界面可以添加删除用户
创建用户后使用用burp抓包发送到repeter模块当中,在proxy模块中将数据包丢弃。
切换普通用户pikachu/000000登录,只有读取权限
浏览器获取cookie,将获取的cookie的替换为repeater中的cookie最后发送
刷新网站发现xiaoD用户创建成功,垂直越权成功(条件,获取管理员添加用户的数据包)
3.越权漏洞产生的原理解析:
#前端安全造成:界面
---代码在这里只有判断用户是不是管理员,然后进行展示(判断用户等级后,代码界面部分进行可选显示)(不安全)
---user.php界面和admin.php界面的区别(可以添加用户)
---但是只是前端解密有区别,并没有说非管理员用户不能编辑添加用户。因为:在adminedit.php文件中,只是判断了是否登录,没有再次判断级别问题就将数据插入数据库(也就是在代码层面判断等级,没有写入数据库)。
---pikachu靶场的垂直越权是通过游客的cookie,去访问管理员的添加用户的文件(也就是adminedit.php文件),由于adminedit.php只验证是否登录,所以存在越权漏洞。而在登录跳转是(login.php文件)存在等级验证,所以跳转到了普通用户的前端界面(PHP前端和脚本写在一个文件里面),因此,普通用户前端无法编辑添加用户。
#后端安全造成:数据库
---user 表(管理员和普通用户同表)中,存在如id,username,password,usertype的列名,其中,通过usertype这种列名来判断用户的等级。
二、墨者水平-身份认证失效漏洞实战(漏洞成因)
身份认证失效漏洞实战_身份认证和会话管理_在线靶场_墨者学院_专注于网络安全人才培养
输入test/test登陆抓包
放包看到uid参数和card_id参数可以利用,这里利用card_id这是每个用户的id
将代码发送给intruder,将后两位设置为攻击参数
长度不一样的有用户
点击马春生的图片发现地址
将card_id 改为相应的值发送
得到用户名和密码,密码用MD5解密
得到密码,登录
成功水平越权,获取key
三、越权检测-小米范越权漏洞检测工具(工具使用)
1.设置监听端口8999,获取数据包
2.更改浏览器代理端口
3. 在pikachu水平越权下登录kobe 123456
4. 在工具的浏览器中登录lucky 123456
获取到了登录信息和cookie
5.将kobe的get路径复制到lucy的浏览器访问
用lucy的cookie(还有post内容)访问kobe个人信息(URL路径)
这里按理说应该更换为kobe的登陆信息
这里报错了真奇怪
四、越权检测-Burpsuite插件Authz安装测试(插件使用)
1.在burpsuite中插件管理找到Authz安装
2.登录mozhe靶场test用户抓包,抓取card_id
发送给intruder设置参数攻击,同上
将攻击结果全部发送给authz,并且将test的cookie复制到authz中
选取所有数据包,右键run
下面没有拦截的,都可能存在越权漏洞
---这里显示都存在,但是有些返回没信息,因为:这里检查的是是否有拦截,而这里都没拦截
---判断越权漏洞的原理:根据状态码200来判断,因为:越权是你用自己的cookie去访问别的用户,如果访问失败,会跳转到登录界面,状态码就是以300或者400开头。
3.pikachu中测试
登录Kobe抓包
---分别将username修改为Kobe,lucy,1,2,lili发送到authz,还有关卡登陆页面
修改authz的cookie为Kobe用户的cookie
选取全部数据包,然后点run
200都能访问到,也就是存在越权漏洞,302不能访问没有越权
34、逻辑越权之支付数据篡改安全
原理
一、HTTP/HTTPS协议密文抓取
(找一个有登录界面的网站,输入账号密码,F12,点击登录,抓包,分析from data中的账号密码信息)
1. HTTP和https区别
#http数据包可能加密,也可能不加密(火狐浏览器好像看不到post提交的内容)
---HTTP和https网站的区别在URL上,数据包貌似都是HTTP/1.1
#https的数据包提交的数据会加密(如果没有加密,也就是http协议,可以直接爆破,而https协议提交的数据加密了,就不能简单的爆破
二、后台登陆账号密码爆破测试
zblog密码爆破
利用admin admin登录抓包
抓包时看到密码被加密,爆破时将密码加密再爆破
发送给intruder,设置密码为爆破参数
自己创建文档写入密码
导入字典
加密(密码一般为MD5加密)
开始攻击
最后一个302为正确密码
利用MD5解密,密码为jia123456
成功登录
三、Cookie脆弱点验证修改测试
搭建网站,进去登陆页面,这里登陆路径传参,可能包含漏洞,参数为login
输入正确账号密码,抓包分析,查看cookie,这里post提交数据没有加密
登录,参数为index
重新打开一个浏览器,后台查看没有cookie
源码分析
这里index传参r,判断传递的参数file是为空还是为index,如果是index,就执行file文件下的传递参数的文件。这里只有等于index路径才能跳转
如果r=index,在跳转管理员执行/files/index.php文件,文件开头包含了验证,防止用户直接登录URL路径进入管理员后台
因为访问的index.php,在审计一下index.php文件,看到的是执行了以下两个文件,对这两文件进行查看。
查看登录验证,判断用户的cookie,如果为空,就跳转到登录界面。(漏洞产生:只要cookie有数据,就可以访问)
重新请求登陆界面抓包,将cook改为user=a(cookie修改user不为空)放包
登陆成功
四、某商场系统商品支付逻辑测试-数量,订单(购买--截包--改包--放包)
利用漏洞:挖洞技巧:支付漏洞之总结 - SecPulse.COM | 安全脉搏
点击购买抓包分析
sku_id=2(多半为商品的编号id)
num=2为要购买商品的数量
将数量改为-1,放包
成功实现0元购
3. 更改订单编号(以b的价格来买a)
假如购买商品a一件,在提交订单的时候抓取数据包
抓取到数据包(获取到了订单编号)
提交后页面回显
购买另外一件产品
抓包,修改为之前商品的订单编号
发现原来998元变成了9999999,这里可以反向操作,将贵的订单变成便宜的订单。
漏洞的产生,要看它有没有订单编号的检测
五、某建站西永商品支付逻辑测试-价格,商品
搭建大米网站,进去产品展示
1.修改价格
点击产品这里购买两个
抓包,这里qty:数量,price:价格
将价格改为1放包
这里可以看到价格更改成功,订单总价变化
2.修改产品
这里id和name代表商品种类
购买大米测试产品抓包,分析id和name
购买大米cms抓包
点击大米测试产品,将大米cms的id和name粘贴过来
这里我们成功用6000块买了5400的产品(反过来也可以低价买高价)
3.替换支付(修改支付接口)
提交订单抓取数据包,提交的路径传递参数s为支付的借接口(这里提交了接口和订单编号)
35、逻辑越权之找回机制与接口爆破
原理
一、找回密码验证码逻辑-爆破测试-实例
phpyun人才管理平台(做完三、四再看)
1.抓取绑定手机,发送短信验证码,随机输入验证码的数据包
2.3.将数据包发送给intruder设置攻击参数,短信验证码
3.设置参数类型和范围(这里为了快速,范围设置的较小)
4.开始攻击,这里状态都一样,可以查看回显状态,这里1为正确,3错误,所以正确的是890348
二、墨者靶场密码重置-验证码套用-靶场
登录密码重置漏洞分析溯源_身份认证和会话管理_在线靶场_墨者学院_专注于网络安全人才培养
1.进去靶场,发现有一个已经注册的号码18868345809,使用已注册的手机号获取验证码(正确的验证码)
2.重新打开一个页面,将手机号换为目标手机号17101304128,点击获取验证码,将刚才的验证码粘贴但下面,点击重置
3.成功重置获取到key
三、手机邮箱验证码逻辑-客户端回显-实例
1.汉川招聘网
汉川招聘网_汉川人才网_汉川人才招聘|0712zpw
先注册账号然后登陆查看邮箱认证
点击获取验证码,抓包分析(可以看到回显数据验证码send_key,不用邮件查询)
post数据包发送目的地应该是网站邮箱接口
输入这个验证码提交错误,发现和邮箱接收的也不一样(迷惑)
这里就理解网站数据包可以回显就行不必深究
2.php云系统
搭建网站,并且注册账号然后登陆
账号绑定里绑定手机,点击立即绑定,点击发送验证码抓包
在cookie里,有mobile_code=这属于客户端回显(验证码回显)
随便输入验证码抓包,将数据包中的code和mobile_code匹配,然后放包
这里绑定成功
这里随便输入错误的验证码,抓包发送给repeater,然后发送,回显3(3对应错误)
输入正确的验证码:随便输验证码,抓取数据包然后将code更改为mobile_code的值,发送给repeater
回显1(1对应正确)
更改状态码:重新输入验证码然后抓包(点击右键选择do intercept>response to the request),放包
将状态码3更改为1,成功绑定
正确的回显不一定是数字,还可能是一段字符串(这里要区分正确的回信和不正确的回信)
四、绑定手机验证码逻辑-Rep 状态值篡改-实例
1.2逍遥模拟器app设置代理,ip为主机ip,端口与火狐浏览器不同
2.在burp suite设置代理
3.点击福利期货app我的页面,个人信息
4.在个人信息中修改个人密码
5.修改密码中随意输入短信验证码,抓包
6.发送给repeater,发送查看回显:错误回显(响应包最后一行)
7. 将手机上接收的正确验证码输入,查看回显:正确回显(响应包最后一行)
8.随意输入验证码,抓包,通过右键do intercept>response to the request,截获返回数据包,放包,将错误的回显改为正确的回显放包
9.绕过验证码,验证成功,进去重置页面,成功重置密码
五、某 APP 短信轰炸接口乱用-实例接口调用发包
利用微盘平台,随意输入接口抓包
这里抓包发送给repeater,查看回显,发送成功
这里对于接口参数设置参数进行爆破(不建议,危害很大,太刑了)
36、逻辑越权之验证码与token及接口
原理
一、验证码识别插件及工具操作演示-实例
1.Pkav_Http_Fuzz工具
识别网站
获取验证码地址,访问
抓包查看数据包
将数据包的首部复制到工具内
更换字典测试(发现每过一次,图片都会更新)
2.captcha-killer插件
使用burp插件captcha-killer识别图片验证码 - _nul1 - 博客园
扩展功能中添加插件
浏览器访问验证数据包,抓包,右键点击captch-killer
后面接口付费,不做演示,具体查看链接文档
二、验证码绕过本地及远程验证-本地及实例
1.on server
随便输入账号密码,输入正确的验证码,提交
提示用户名或密码不存在
随便输用户密码,输入不正确的验证码,提交
显示验证码输入错误
抓包正确的验证码,查看返回,验证码正确
修改用户名发送,还是提示用户和密码不存在,没有提示验证码错误,可以复用
2.on client
查看前端源代码(验证码写入了前端)
源代码也一样
这里我们将前端中的js<script>模块新建到1.js中,然后利用<script src="1.js"></script>引入
在前端里面看不到验证代码,所以我们在抓包的时候要查看是否调用了其他的地址 ,查看1.js响应
这里随意输入验证码绕过(前端代码验证码不执行)
3.真实网站复用爆破
(网站已下线,这里直接截图)
输入手机号,图形验证码,获取手机验证码
查看回应,发送成功,请注意接收
burp抓包
爆破绕过验证码的方法:验证码的复用,只需要发送第一次验证码,然后可以通过数据包爆破密码
三、Token客户端回显绕过登录爆破演示-实例
输入任意账号密码抓包,查看token
重新查看,发现token改变
查看前端里yeyoutoken,发包的token与前端一致
token是用来防爆破的,但是其token值输出在了前端源码中,容易被获取,因此也就失去了防暴力破解的意义。
将密码和token设置为攻击参数,攻击类型选择pitchfork
设置第一个参数,添加字典
设置线程为1(1次只验证一个账号密码)
设置重定向,仅限范围
设置grep extract匹配用法,点击添加,查找到token值选择,点击ok
这里设置第二个参数token,类型为recrusive grep
攻击,发现下面的token值就是上一个的值总结
四、本地某URL下载接口ID值调用遍历测试-实例
接口url
抓包发送给intruder,设置id为变量
设置攻击类型和攻击范围
查看结果,看是否可以发现其他用户的信息,用来水平越权
五、Callback自定义返回调用安全-漏洞测试-实例
2号人事部2号人事部-HR效率软件,为企业实现人力资源全流程在线管理,包括员工管理、招聘流程管理、考勤打卡、薪酬计算、OA审批、培训管理、用工风险管控等,助力企业管理效率翻5倍,1天实现信息化!https://2haohr.com/login?callback=https%3A%2F%2F2haohr.com%2Fpersonnel这里callback后的数据代表微信登陆,然后将微信登陆数据返回给callback
callback参数可以更改,可以和跨站漏洞结合
-在网页源代码搜索传递的参数,如果存在,意味着URL传递的参数会在网页的前端回显,那么,也意味着可以构造XSS漏洞(测试有没有过滤,完不完整)
补:上述在实战中如何做到漏洞发现-bp功能点
用pikachu靶场尝试
---抓包发送到爬虫(这里使用右键点击tools中的find references)
查看抓到的结果
真实目录路径
搜索关键字(这里可以使用 discover content模块过滤搜索内容,相当于帮你筛选)
扫描scan(这里比较普通,建议使用专门的扫描工具爬虫)
导出数据包(save bom)