安全运维笔记


业务逻辑漏洞

业务逻辑漏洞

1.任意口令重置

(1)验证码不失效 漏洞原因:验证码未设置时效限制,仅判断验证码是否正确,未判断验证码是否已失效。 漏洞测试:枚举爆破,找到正确验证码。 (2)验证码直接返回 漏洞原因:客户端生成验证码,服务器响应包返回了正确的验证码与客户端验证码进行比对。 漏洞测试:本机走流程,拦截响应包返回的验证码,拿到正确验证码进行重置。 (3)验证码未绑定用户 漏洞原因:仅判断了验证码是否正确,未判断验证码是否与手机号相匹配。 漏洞测试:使用本机获取的验证码,拦截提交请求,修改目标手机号。 (4)修改接收的收集或邮箱 漏洞原因:仅判断了手机与验证码是否匹配,未判断手机与用户是否匹配。 漏洞测试:使用本机获取的验证码,拦截提交请求,修改目标用户名。 (5)本地验证绕过 漏洞原因:验证码校验在客户端生成判断结果发送给服务器,判断结果可被修改。 漏洞测试:通过拦截修改返回包的判断结果,然后发包。 (6)跳过验证步骤 漏洞原因:对整个验证步骤没有校验是否成功通过验证,导致可绕过验证步骤,直接跳转到重置密码界面。 漏洞测试:本机走流程,获取每个步骤地址链接,在重置时,获取验证码后直接跳转至重置密码界面,补齐链接参数 (7)未校验用户字段的值 漏洞原因:仅判断了手机号与验证码是否匹配,未校验最后提交重置密码时手机号是否与手机验证的对应。 漏洞测试:通过本机手机验证,拦截重置密码提交,修改目标手机号 (8)修改密码处id可替换 漏洞原因:未判断id跟用户名是否匹配,也未判断id跟用户原密码是否匹配。 漏洞测试:拦截提交,修改目标id。 (9)cookies值得替换 漏洞原因:未验证该cookie值是否与验证过程的cookie是否匹配,仅验证了cookie是否存在或正确。 漏洞测试:本机走流程,获取Cookie,通过拦截包修改目标用户,替换刚获取的cookie,发包。 (10)修改信息时替换字段值 漏洞原因:用户修改信息通过隐藏参数例如loginid来执行,通过修改loginid来修改他人信息。 漏洞测试:抓包,添加隐藏参数信息,参数修改为目标用户,发包。

页面列表

ITEM_HTML