关于Graphicator
工具安装
本地安装
git
clone
https:
//github.com/cybervelia/graphicator.git
cd
graphicator
python3
-m pip install -r requirements.txt
Docker使用
docker run --rm -it -p8005:
80
cybervelia/graphicator --target http:
//the-target:port/graphql --verbose
(向右滑动,查看更多) 任务执行完成后,工具会将所有结果打包压缩,并可以通过Web服务器的端口8005访问。如需终止容器运行,直接按下CTRL + C即可。容器终止运行后,对应的数据也会直接删除。 工具使用
设置目标
首先我们需要设置目标GraphQL节点,可以通过--target选项提供单个目标或通过--file提供一个包含目标的文件列表。 通过参数设置一个目标:
python3 graphicator.py --target https:
//subdomain.domain:port/graphql
(向右滑动,查看更多) 设置多个目标:
python3
graphicator.py --target https://subdomain.domain:port/graphql --target https://target2.tld/graphql
(向右滑动,查看更多) 通过文件列表设置目标:
python3
graphicator
.py
--file
file
.txt
(向右滑动,查看更多) 目标文件列表格式如下:
http:
//target1.tld/graphql
http:
//sub.target2.tld/graphql
http:
//subxyz.target3.tld:8080/graphql
使用代理
该工具也支持使用任意代理。 连接至默认Burp设置(端口8080):
python3 graphicator.py --target target --
default
-burp-proxy
(向右滑动,查看更多) 连接自己的代理:
python3
graphicator
.py
--target
target
--use-proxy
(向右滑动,查看更多) 通过Tor连接:
python3
graphicator
.py
--target
target
--use-tor
(向右滑动,查看更多) 使用Header
python3
graphicator
.py
--target
target
--header
"
x-api-key
:60b725f10c9c85c70d97880dfe8191b3"
(向右滑动,查看更多) 启用Verbose模式
python3
graphicator
.py
--target
target
--verbose
(向右滑动,查看更多) 启用多线程
python3
graphicator
.py
--target
target
--multi
(向右滑动,查看更多) 禁用不安全的(自签名)证书警告
python3
graphicator
.py
--target
target
--insecure
(向右滑动,查看更多) 不使用缓存结果
python3
graphicator.py --target target --
no
-cache
(向右滑动,查看更多) 工具使用样例
python3 graphicator.py --target
http:
/
/localhost:8000/graphql
--verbose --multi
____
_
_
_
_
_
_
/ __
_
/___
_
__
_
_
__
_
/
/ (_)____ ___ _ /
/
_
__
_
___
_
/ (
_
/
/ __/
/ _ `/
/ _ /
_
/
//
_
_
/
/ _ `/
/ __/
/ _ /
_
_
/
__
_
/
/_/
_
,
_
/
/ .__/
/_/
/_/
/_/
_
_
/
_
,
_
/ _
_
/ __
_
/
/_/
/
_
/
By @fand0mas
[-]
Targets:
1
[-]
Headers:
'Content-Type'
,
'User-Agent'
[-] Verbose
[-] Using
cache:
True
************************************************************
0
%| |
0
/
1
[
00
:
00
<?, ?it/s][*] Enumerating...
http:
/
/localhost:8000/graphql
[*] Retrieving... => query {getArticles { id,title,views } }
[*] Retrieving... => query {getUsers { id,username,email,password,level } }
100
%|█████████████████████████████████████████████|
1
/
1
[
00
:
00
<
00
:
00
,
35.78
it/s]
$ cat reqcache/
9652
f1e7c02639d8f78d1c5263093072fb4fd06c.json
{
"data"
: {
"getUsers"
: [
{
"id"
:
1
,
"username"
:
"theo"
,
"email"
:
"[email protected]"
,
"password"
:
"1234"
,
"level"
:
1
},
{
"id"
:
2
,
"username"
:
"john"
,
"email"
:
"[email protected]"
,
"password"
:
"5678"
,
"level"
:
1
}
]
}
}
$ cat reqcache-queries/
9652
f1e7c02639d8f78d1c5263093072fb4fd06c.query
query {getUsers { id,username,email,password,level } }
(向右滑动,查看更多) 许可证协议
本项目的开发与发布遵循MIT开源许可证协议。 项目地址
Graphicator:https://github.com/cybervelia/graphicator 参考资料
https://cybervelia.com/?p=736&preview=true 精彩推荐
原文始发于微信公众号(FreeBuf):Graphicator:一款功能强大的GraphQL枚举与提取工具
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论