P小二 P小二
← 返回文章 公众号 约 5 分钟

API安全测试31个Tips(二)

tip11: 检查API 是否使用授权头?忘了 CSRF 吧!如果身份验证机制不支持 cookie,则这个 API 就被设计为了防止 CSRF 的攻击。 tip12: 对 BO

tip11:

检查API 是否使用授权头?忘了 CSRF 吧!如果身份验证机制不支持 cookie,则这个 API 就被设计为了防止 CSRF 的攻击。

tip12:

对 BOLA (IDOR)的测试?即使ID是GUID或非数字类型的值,渗透测试人员也要尝试发送一个数字值。

例如: 

/?user_id=111


使用 

- ```
[email protected]

代替

有时身份认证机制同时支持这两种方式,而且暴力破解数字更容易。

tip13:

** **

使用批量尝试绕过安全机制。例如,“输入密码”机制:

  • POST /api/reset_pass requires old password.

  • PUT /api/update_user is vulnerable to MA == can be used to update pass without sending the old one (For CSRF)*

比如: 上面的重设密码需要旧密码,但是更新用户的API 就不需要发送旧密码

tip14:

** **

在API测试期间卡住了?

扩大你的攻击面!

查找同级域名或者子域名,使用

http://Virustotal.comhttp://Censys.io。其中一些域可能使用不同的配置/版本公开相同的api。

tip15:

** **

静态资源包括照片、视频等等,Web服务器(IIS、Apache)在授权时对静态资源的方式是不同的。即使开发人员实现了良好的授权,也有很好的机会访问其他用户的静态资源。

tip16:

** **

即使你使用另一个web代理,应该始终在后台使用Burp。@PortSwigger的人在帮助你管理测试用例方面做得非常好。使用“树视图”(免费版本)功能查看你访问过的所有API端点。

**

**

tip17:

** **

移动证书锁定?在你开始逆向工程和修补客户端应用程序之前,检查iOS和Android客户端以及它们的旧版本。很有可能其中一个没有启用证书锁定。这样可以节约时间。

tip18:

** **

公司和开发人员倾向于将更多的资源(包括安全性)投入到主要的api中。那些很少被人们使用过的API 接口可以发掘一些有趣的漏洞。

比如 

POST /api/profile/upload_christmas_voice_greeting


## **tip19:**

**
**

你觉得哪些功能更容易受到攻击?

- Organization’s user management

- Export to CSV/HTML/PDF

- Custom views of dashboards

- Sub user creation&management

- Object sharing (photos, posts,etc)

上面的都容易被攻击吧,最容易的就是有权限访问的。像组织用户管理,子用户创建和管理。对象共享,也有权限问题。

输出CSV/HTML/PDF 这个功能可能比前面的几个要好一点。

##

## **tip20:**

**
**

测试AuthN api ? 如果您在生产环境中进行测试,那么很有可能AuthN端点具有抗暴力破解保护。无论如何,DevOps工程师倾向于在非生产环境中禁用速率限制。不要忘记测试它们。

更多的例子:

WHY FACEBOOK HACKERS ARE A REAL THREAT AND HOW TO PROTECT YOURSELF

链接:

https://www.scoopbyte.com/why-facebook-hackers-are-a-real-threat-and-how-to-protect-yourself/

**系列推荐:**

[API安全测试31个Tips(一)](http://mp.weixin.qq.com/s?__biz=MzAwNzc4MDgwNQ==&mid=2653125713&idx=1&sn=abeebe9a2f50c850bce9c18d579a04ef&chksm=80af3cfbb7d8b5ed6c165c48d3dddd4b0cac10ce324731d5c4cdd7bf3606810a53a59508263a&scene=21#wechat_redirect)