常见逻辑漏洞详记

Posted 涂柠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常见逻辑漏洞详记相关的知识,希望对你有一定的参考价值。

目录

0x00 前言

0x01 越权

0x02 任意注册

0x02 密码重置

0x03 支付漏洞

0x04 信息轰炸

0x 后记


0x00 前言

不安全的对象引用,以及功能级访问控制缺失。--逻辑漏洞

0x01 越权

1、水平越权:权限类型不变,权限id改变,导致同级间越权访问。

2、垂直越权:权限id不变,权限类型改变,常为权限上升。

3、常见位置:个人信息、收获地址、本人提交文档查看等。

4、防护

        ①cookie中参数组合验证,通过校对判定是否返回数据。

        ②优化cookie的加密算法,注意密钥管理。

        ③用户密码作为参数写入cookie中,保证账户密码与cookie相匹配。

        ④设定session参数到cookie中,防止cookie长期有效。

0x02 任意注册

1、概念:注册模块中参数校验不严格而导致的漏洞。

2、常见位置:注册口。

3、食用方法

        ①验证码回传。

        ②验证码(4位)爆破。

        ③修改请求回显绕过。

        ④仅改变手机号,重放数据包,获取相同验证码。

        ⑤注册步骤未校验,修改url可绕过验证。。

4、防护

        ①6位验证码。

        ②验证码限时。

        ③验证码限次数。

        ④验证码多次错误,加图片校验。

        ⑤验证码与手机号绑定,即用即销毁。

        ⑥后端校验注册信息。

0x02 密码重置

1、概念:无

2、常见位置:忘记密码口,登陆后重置密码口。

3、食用方法

        ①验证码回传/明文验证码。

        ②验证码爆破。

        ③手机号与验证码二者未绑定,改成他人手机号以重置。

        ④账户、手机号、验证码三者未绑定,改成他人手机号/账户以重置。

        ⑤重置步骤未校验,修改url可绕过验证。

        ⑥前端验证,修改请求回显绕过。

        ⑦登陆后修改密码仅需新密码,直接越权。

        ⑧唯一cookie校验,直接替换cookie绕过。

        ⑨MVC数据对象自动绑定漏洞,即没有身份标识时,可增加参数窃取校验信息。

4、防护

        ①6位验证码。

        ②验证码限时。

        ③验证码限次数。

        ④验证码多次错误,加图片校验。

        ⑤验证码与手机号绑定,使用即销毁。

        ⑥响应包中去掉短信验证码

        ⑦修改信息时校验旧密码,需提供手机验证码。

        ⑧服务端二次校验。

        ⑨验证信息加密。

        ⑩使用token验证。

0x03 支付漏洞

1、概念:无

2、常见位置:购买、充值界面。

3、食用方法

        ①修改支付价格,在订购、订单、付款三步中尝试修改金额。

        ②修改支付状态,替换为已支付单号,实现已支付效果。

        ③修改订单数量,计算方式未校验,导致可以输入负数等。

        ④修改附属值(优惠卷),修改优惠金额/商品价格/优惠折扣来造成低额购买。

        ⑤越权支付,一次性支付时,若未校验用户信息,可利用他人账户支付。

        ⑥无限制试用,调用试用接口参数,使待支付产品错判为试用产品。

        ⑦修改支付接口,支付接口不存在时,处理不妥导致支付成功。

        ⑧多重替换,在两个订单中,以低价订单参数替换高价,造成低额支付。

        ⑨重复支付,试用令牌试用商品,若试用完/取消试用时令牌回到账户,可尝试用一个令牌多次提交订单。

4、防护

        ①后端校验各个参数,确保订单参数与产品参数一致。

        ②修改相应函数,杜绝输入负数,设定商城产品最低金额等。

        ③与第三方支付平台合作,校验订单金额与与实际支付金额。

        ④支付参数进行算法加密。减少数据篡改的可能。

        ⑤支付流程中校验各个环节,防止跳过某环节。

        ⑥金额超过阈值,需要人工审核订单。

0x04 信息轰炸

1、分类:①单id多次轰炸。②多id单次轰炸。

2、常见位置:发送信息验证处,如注册口、登录口、等

3、食用方法

        ①验证码不刷新,重放数据包不断获取短信。

        ②删除cookie。

        ③修改cookie等参数,当其唯一且固定时,修改以伪造新请求。

        ④手机号分割,如加点/加号/减号/分号/逗号/86/%00等。

        ⑤无效验证,如任意输入图片码可绕过。

4、防护

        ①获取短信请求与图片验证唯一绑定,即用即失效。

        ②设置获取频控,拒绝持续请求验证码。

        ③限制ip单位时间请求次数。

        ④限制手机验证码单日请求次数。

        ⑤后端二重验证,确保请求唯一。

        ⑥减少返回包中数据,以减少可控点。

        ⑦验证模块确保与业务功能关联,杜绝无效验证的产生。

0x 后记

再回头,你依旧在;再看着你,又有新的认识。--涂寐

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46318141/article/details/121000924

以上是关于常见逻辑漏洞详记的主要内容,如果未能解决你的问题,请参考以下文章

一次SRC实战 逻辑漏洞

逻辑漏洞挖掘入门之 简单的任意账户密码重置

nginx文件名逻辑漏洞_CVE-2013-4547漏洞复现

基于Openresty实现业务安全防护

逻辑漏洞基于BurpSuite的越权测试实战教程

web安全测试主要都有哪些漏洞