Alpha_h4ck
- 关注
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
关于GraphCrawler
GraphCrawler是一款功能强大的自动化安全测试工具,在该工具的帮助下,广大研究人员可以轻松对任意GraphQL节点进行安全测试。
工具运行机制
GraphCrawler基于Escape Technology强大的Graphinder工具来进行GraphQL节点搜索。我们只需要将其指向一个域名,并添加-e选项,Graphinder便会对目标GraphQL节点执行子域名枚举和热门目录搜索。接下来,所有的扫描结果都将会传递给GraphCrawler以进行更加深入地分析。
随后,GraphCrawler将检测是否启用了变异选项,并检查任何可用的敏感查询,例如用户和文件等。如果目标节点是否是Apollo Server,如果是的话,则运行Clairvoyance实现暴力破解。工具会对目标节点给出一个安全评级(1-10),10分为高危。
工具要求
1、Python3
2、Docker
3、使用pip命令安装所有的Python依赖
4、从google-10000-english获取字典文件
工具下载
由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/gsmith257-cyber/GraphCrawler.git
接下来,切换到项目目录,并通过pip3命令和项目提供的requirements.txt文件安装该工具所需的依赖组件:
cd GraphCrawler pip3 install -r requirements.txt
工具使用
python graphCrawler.py -u https://test.com/graphql/api -o <fileName> -a "<headers>"
我们在使用该工具的时候,可以不指定输出选项,默认配置下工具会将输出结果保存到schema.json文件中。
工具输出样例
许可证协议
本项目的开发与发布遵循MIT开源许可证协议。
项目地址
GraphCrawler:【GitHub传送门】
参考资料
https://github.com/Escape-Technologies/graphinder
https://github.com/nikitastupin/clairvoyance
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
