·引言
叮隆,一则消息打破了斯叔短暂的平静
怎么回事,都4202年了,斯叔不允许还有人不会对API接口进行渗透测试。
·show time
其实这种api的测试各大厂商都有对应的自动化工具了,以绿盟为例,我看在绿盟的朋友用的EZ(类似于xray的一款工具)里面就直接集成了对api的扫描测试,可以通过调用对应的参数实现躺着收洞。
斯叔也是有幸使用过一次,效果还是蛮不错的,对于常规的漏洞基本都会探测。
但是这类工具一般都是厂商内部共享或者需要一些门槛才能使用,对于其他白帽子很不“友好”,有没有啥法子可以不受大厂的限制进行测试呢?这时候就需要打开国际大型交友平台,Github了。
斯叔平时喜欢使用swagger-exp这款工具,项目地址
https://github.com/lijiejie/swagger-exp
用swagger-exp结合xray也能达到绿盟的EZ工具API扫描的效果。Let's look look how to use!
首先来看看swagger-exp的README文档是如何介绍的,看起来用法很简单,只需要在py文件后面直接跟上api文档的地址就好了。
下载好工具,安装完依赖就可以使用了。我们可以将swagger-exp的数据包代理到burp,这样就可以看到所有发送的请求包报文信息了,然后再在burp上设置代理,将流量代理给xray,让xray给我们自动化检测漏洞信息,还可以对应看看burp上的接口流量是否存在未授权访问或者信息泄露的情况。
首先设置cmd的代理,在swagger-exp目录的cmd里分别输入两行代码将当前cmd的流量全部转发给burp
set http_proxy=http://127.0.0.1:8080set https_proxy=http://127.0.0.1:8080
然后在burp里面的设置xray的代理信息
开启祖传的xray
下面就可以运行swagger-exp了,坐等xray报洞ing
还有一种方式,通过postman自动发包测试,思路也是相同的,将postman代理给burp,再在burp上设置代理给xray。
首先,官网下载一个postman,导入我们需要测试的api文档地址
导入完地址之后,设置接口的服务器地址
设置指向burp的代理,点击齿轮,选择setting,设置代理
下面就可以进行自动化批量测试了,点击导入的接口文件夹,点击Run按钮
最后点击Run,