Web 攻防之业务安全:接口未授权访问/调用测试

业务安全是指保护业务系统免受安全威胁的措施或手段。广义的业务安全应包括业务运行的软硬件平台(操作系统、数据库,中间件等)、业务系统自身(软件或设备)、业务所提供的服务安全狭义的业务安全指业务系统自有的软件与服务的安全


目录

验证码绕过测试:

测试原理和方法:

测试过程:

第一步:在网站登陆后使用 Burp Suite 的爬虫功能,从重点关注的目录一般为网站根目录开始爬取,在 HTTP history 选项卡中选中要开始爬取的项,右键选择 “Spider from here” 爬取的结果会在 Target –> Site map 中显示,在爬取完毕后使用Burp Suite 的 HIME Type 过滤功能筛选出接口相关的 HTTP 请求重点关注 json,script,xml,text MIMEType等.(这里只是步骤说明)

第二步:对接口相关的请求进行查看,查看响应中是否包含想要的敏感信息,如个人电话,IP地址,兴趣爱好,网站的浏览记录,身份证,手机号,地址等信息.(这里只是步骤说明)

第三步:将完整的请求 URL 复制到未登录的浏览器中,查看能否访问对应的 URL 的内容,如果能够返回敏感信息,则存在漏洞,如果需要登录后才能访问,则漏洞不存在.(这里只是步骤说明)

修复建议:


免责声明:

严禁利用本文章中所提到的技术进行非法攻击,否则后果自负,上传者不承担任何责任。


验证码绕过测试:

测试原理和方法:

在正常的业务中,敏感功能的接口需要对访问者的身份进行验证,验证后才允许调用接口进行操作,如果敏感功能接口没有身份校验,那么攻击者无需登录或者验证即可调用接口进行操作,在安全测试中,我们可以使用Burp Suite 作为 HTTP 代理,在登录状态下记录所有请求和响应的信息,筛选出敏感功能,返回敏感数据的请求,在未登录的情况下使用,浏览器访问对应敏感功能的请求,如果返回的数据与登录状态后的一致则存在漏洞或缺陷。


测试过程:

攻击者在测试前,使用 Burp Suite 的爬虫功能对网站进行爬取,通过 HIME Type筛选出与接口相关的请求,对筛选后的每一个请求进行判断是否包含敏感信息,如果包含敏感信息,则复制请求URL到未进行登录的浏览器中进行访问,如果访问后返回之前的敏感信息,则存在漏洞。

第一步:在网站登陆后使用 Burp Suite 的爬虫功能,从重点关注的目录一般为网站根目录开始爬取,在 HTTP history 选项卡中选中要开始爬取的项,右键选择 “Spider from here” 爬取的结果会在 Target –> Site map 中显示,在爬取完毕后使用Burp Suite 的 HIME Type 过滤功能筛选出接口相关的 HTTP 请求重点关注 json,script,xml,text MIMEType等.(这里只是步骤说明)


第二步:对接口相关的请求进行查看,查看响应中是否包含想要的敏感信息,如个人电话,IP地址,兴趣爱好,网站的浏览记录,身份证,手机号,地址等信息.(这里只是步骤说明)


第三步:将完整的请求 URL 复制到未登录的浏览器中,查看能否访问对应的 URL 的内容,如果能够返回敏感信息,则存在漏洞,如果需要登录后才能访问,则漏洞不存在.(这里只是步骤说明)


修复建议:

(1)采用 Token校验的方式,在 URL 中添加一个 Token 参数,只有 Token 验证通过才返回接口数据且 Token 使用一次后失效。

(2)在接口被调用时,后端对会话状态进行验证,如果已经登陆,便返回接口数据;如果未登录,则返回自定义的错误信息。

学习的书籍:Web 攻防之业务安全实战指南.