什么是绕过
逻辑漏洞是指程序设计中逻辑不严密,使攻击者能篡改、绕过或中断程序,令其偏离开发人员预期的执行。
常见表现形式
1、接口(功能类)绕过:即接口或功能中通过某参数,绕过程序校验
2、流程类绕过:通过修改程序参数的形式绕过某验证步骤,其本质还是功能类绕过
绕过问题的本质
本质为后端在设计关键检测函数逻辑不严密,没有对所有应该进行检验的信息进行有效校验。
不要相信任何前端校验,因为整个前端校验都是攻击者可以轻易操控的
测试形式
1、白盒测试、即通过审计对应代码的方式判断是否存在问题
2、灰盒测试、接通过接口与设计文档,逆向思考开发的可能的实现方式并通过接口测试的方式进行反复尝试
常用工具Burp Suite介绍
Burp Suite是PortSwigger公司开发的集成化渗透测试工具,可自动化或手动完成Web应用的安全测试。它拦截HTTP和HTTPS流量,以中间人方式处理客户端和服务端数据,实现安全评估。Burp Suite具有跨平台性,并提供免费版下载。
工具原理
作为浏览器与服务端的中间人,可以随意篡改
社区版获取方式
拦截并修改请求
用法:
1、用于观察请求参数
2、修改参数观察返回
3、发送打其他控制器
1、进入【proxy】页签;
2、打开工具预置Chromium浏览器(使用预置浏览器可以免去手工配置代理的步骤)。
3、开启拦截【Intercept on】。
1、修改对应参数
2、放行给后端
拦截并修改返回
用法:
1、用于观察响应参数
2、修改响应参数绕过前端限制
1、调整字体的字符集
2、开启响应拦截
修改请求并放行
重放请求
用法:
1、用于针对一个请求进行反复测试
发送给Repeater(可以使用快捷键Ctrl+R)
修改参数并重新发送