逻辑漏洞

逻辑越权

逻辑越权分为水平越权、垂直越权与未授权访问

水平越权:通过更换的某个 ID 之类的身份标识,从而使 A 账号获取(修改、删除等)B 账号数据。

垂直越权:使用低权限身份的账号,发送高权限账号才能有的请求,获得其高权限的操作。

未授权访问:通过删除请求中的认证信息后重放该请求,依旧可以访问或者完成操作。

如果在访问网站的数据包中有传输用户的编号、用户组编号或者类型编号的时候,那么尝试对这个值进行修改就是测试越权漏洞的基本。

image-20211206213830709

image-20211206214138091

墨者学院实战:

image-20211206222039178

登录后抓包,发现ID这种身份标识,

image-20211206222128936

尝试更换成ID,结果返回他人信息

image-20211206222335605

进行穷举爆破,得到所有人的信息

image-20211206222722603

得到了所有人的ID,密码等信息,但是怎么知道题目要求的人物的账号ID呢,要找页面中有关人物的所有信息,查看网页源代码

image-20211206223040142

发现人物的ID为20128880316,根据爆破得到的信息

image-20211206223207152

密码经过MD5加密,解密得到密码,登录拿到flag。

逻辑越权之登录脆弱

登录脆弱

如果网站采用的协议是http,那么大多数情况下其数据包中登录的账号与密码是不加密的,但不是绝对,此时可以看一下其加密的方式是什么,目前大多是MD5和Base64,此时就可以利用burpsuite进行爆破,但是如果是https协议的话一般加密方式是其自己定义的,所以难以判断加密类型。

其漏洞原理是由于在登陆过程中对用户的cookie进行简单的验证,例如:登录之前会对cookie进行验证,由于方式很过于简单只是对cookie是否为空进行判断,也就是说传递的值不是为空程序就认为你是登录了,因此这就形成了弱cookie登录的漏洞。存在另一种情况就是cookie设置的很简单,我们可以尝试更改cookie的值来达到访问。例如如下图:

image-20211208133313325

这里的cookie很简单,所以可以伪造cookie来达到越权访问,或者未授权访问。

找回机制与接口安全

找回重置机制:客户端回显(验证码可以通过在客户端浏览器抓包得到),Response 状态值(根据状态值来确定验证码是否正确,可以通过修改状态值来验证通过),验证码爆破,找回流程绕过(绕过验证码验证)等

验证码验证时要确定网站时前端验证还是后端验证。

客户端回显

接口安全:接口调用乱用,短信轰炸,来电轰炸等