公司动态

【Web安全】Portswigger 业务逻辑漏洞 Lab: Inconsistent handling of exceptional input 实验:特殊输入处理不一致

📅 2026/7/18 23:28:28
【Web安全】Portswigger 业务逻辑漏洞 Lab: Inconsistent handling of exceptional input 实验:特殊输入处理不一致
目录一.实验环境二.特殊输入处理不一致​编辑漏洞分析注册用户漏洞利用三.小结一.实验环境实验室特殊输入处理不一致 |网络安全学院https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-inconsistent-handling-of-exceptional-input二.特殊输入处理不一致漏洞分析这个实验是利用账户注册过程中的逻辑漏洞获取管理权限我们先来尝试注册并打开burpsuite观察http历史记录。在这里注册时上面给了提示意思是让我们用它的邮箱地址但是这个 dontwannacry不知道是什么我们尝试能不能直接进入admin在url地址后面加上/admin观察可以知道它的意思是就是让我们以它提供的dontwannacry.com地址来尝试登录管理员账号我们注册一个自己的账号上面还有一个email client可以想到后面可能还要进行验证我们就直接使用它提供的email来注册。注册用户需要我们点击验证。提示我们注册成功观察自己的账号这里看到账号再根据上面注册时的提示思路已经很明确了构造一个email使我们既能收到验证又是以dontwannacry.com来登录。漏洞利用这里我们构造一个emailattackerdontwannacry.com.exploit-0ab80089035e2627803416fc01f400d2.exploit-server.net尝试注册。同样收到了验证。验证成功后观察账号。我们的目的是仅仅只要dontwannacry.com该怎么保证既能收取验证码又只显示管理员地址这里有个方法我们可以利用这里的前端展示来绕过后端业务逻辑举个例子可以构造一个很长的邮箱AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdontwannacry.com.exploit-0ab80089035e2627803416fc01f400d2.exploit-server.net但是由于前端可能只展示255个字符(具体展示多少个要进行测试)最后这里的my-account页面可能就只展示了AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdontwannacry.com从而绕过。进行测试。将register的请求发送到intruder里。在email前面添加payload并将类型设置为字符块最小长度为100最大为1000间隔100开始攻击。看看email client的验证。它实际上发了10个我们就使用这个长的来注册观察。观察登录之后果然出现了这个问题。只显示了前255个。那么我们只需要在注册里把前面的字符串加上dontwannacry凑成255个字符即可最后注册验证即可进入管理员页面。通过admin panel删除carlos。三.小结该实验室的漏洞源于应用程序在账号注册流程中对用户输入的异常数据如超长字符串处理不一致。攻击者可以构造一个超长的电子邮件地址使得前端展示与后端业务逻辑对同一输入产生不同的解析结果。具体而言当注册邮箱为超长字符串dontwannacry.com.exploit-实验室域名.web-security-academy.net时用于发送确认邮件的邮件系统可能会截断该字符串将邮件发送至攻击者可控制的地址而业务系统却仍将其识别为来自dontwannacry.com的合法用户从而授予攻击者本不具备的管理员权限。为防范此类风险首先需在服务端对所有用户输入实施严格且一致的校验不能仅依赖前端验证其次应对关键字段如邮箱设置合理的长度限制并确保整个系统中对该字段的处理方式如截断规则保持完全一致避免因不同组件的解析差异而产生安全缝隙此外权限控制应基于服务端最终认定的用户身份而非客户端提交的原始数据最后应记录并监控异常的注册行为如超长邮箱以便及时发现并阻断此类绕过尝试。