逻辑漏洞的学习

逻辑漏洞概述

什么是逻辑漏洞
代码之后是人的逻辑,人更容易犯错,所以一直存在逻辑漏洞。
sql注入、xss等漏洞可以通过安全框架等避免,这种攻击流量非法,对原始程序进行了破坏,防火墙可以检测,而逻辑漏洞是通过合法合理的方式达到破坏,比如密码找回由于程序设计不足,会产生很多问题,破坏方式并非向程预防思路

常见的逻辑漏洞:
交易支付,密码修改,密码找回,越权修改,越权查询,,突破限制等各种逻辑漏洞

逻辑漏洞分类

验证机制缺陷
会话管理缺陷
权限管理缺陷
业务逻辑缺陷
登录缺陷
支付逻辑缺陷
API乱用

验证机制:

身份标识:whoknows、who has、who is

最常见的方式是信息系统要求用户提交用户名与密码。

权限控制:

从控制力度看,可以将权限管理分为两大类:

功能级权限管理

数据级权限管理

从控制方向看,也可以将权限管理分为两大类:

从系统获取数据比如查询

向系统提交数据比如删除修改

业务逻辑:

每个业务系统都具有不用的业务逻辑,而业务逻辑在人,充分了解程序员思维有助于找到其中的问题所在。
在这里插入图片描述
会话管理问题:

令牌(或是Request)具有含义的数据,如:
用户名称:user、admin、system
用户标识:0001、0002、0003
用户权限:admin、00101、01000

令牌可预测:
用户令牌具有一定的规律,可被其他人预测,如身份证号、学号、手机号、时间等

思考:十位的时间戳和十位的顺序码是否安全?
理解:每一秒都会产生十的十次方的可能,爆破难度极大。

令牌可获取:
用户令牌采取不安全的传输、存储,易被他人获取:
用户令牌在URL中传输:明文传输、发送给他人。
用户令牌存储在日志中:未授权用户易获取。
令牌不失效(会造成固定会话攻击):
用户令牌采取不安全的传输、存储,易被他人获取:
令牌有效期过长(在一段时间内使令牌失效)、令牌尝试次数过多(提交次数一定时要使令牌无效)、无效令牌的重置。

无效的防重放措施:
比如防止CSRF的token。可以利用Burp Suit Macros(宏)绕过。
无效的登录失败功能处理:
图片验证码绕过:验证码不生效、不更新、不失效,验证码可预测、删除、获取,验证码可识别,寻找其他登录页面。
短信验证码绕过:4/6位暴力破解,篡改手机号,篡改response。
在这里插入图片描述
API逻辑漏洞:
在这里插入图片描述
未加密风险:凭据、传输数据公开、资源信息泄露。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

类型总结

大佬博客一

大佬博客二

猜你喜欢

转载自blog.csdn.net/qq_51558360/article/details/115272211