欢迎使用 InQL,一款开源的 GraphQL 测试工具。本工具旨在增强您的 GraphQL 测试体验,使其更加高效和有效。
感谢您对 InQL 的信任。祝测试愉快!
InQL 用户界面配备三大核心组件:扫描器、批量查询 和 引擎指纹识别 选项卡。

扫描器是 InQL 的核心,您可以使用它分析 GraphQL 端点或本地内省模式文件。它会自动生成所有可能的查询、变更和订阅,并组织为结构化视图供您分析。
✅ 可定制扫描
InQL 提供灵活的扫描定制选项。您可以调整生成查询的深度或缩进使用的空格数。还可以执行“关注点”扫描,以检测 GraphQL 模式中的潜在漏洞。
✅ 关注点分析
运行“关注点”扫描后,您将获得涵盖多种潜在漏洞的丰富数据集。您可以根据需要启用或禁用这些分类。
✅ 循环引用检测
InQL 实现了循环引用检测。分析模式后,它会在扫描结果视图中显示可能存在漏洞的查询。
✅ 与 Burp 的增强交互
InQL 与 Burp 无缝集成,使您能够直接从 Burp 中的任何 GraphQL 请求生成查询。您还可以将自动生成的查询发送到其他 Burp 工具进行进一步分析。
✅ 自定义请求头
您可以为每个域名设置自定义请求头,域名列表会根据观察到的流量自动填充。
批量查询选项卡允许您运行批量 GraphQL 攻击,这对于绕过实现不佳的速率限制非常有用。
Burp 的原生消息编辑器现在增加了一个“GraphQL (InQL)”选项卡,提供了一种查看和修改 GraphQL 请求的高效方式。它还支持模式高亮显示,以提高可读性。
InQL 现在集成了 GraphiQL 和 GraphQL Voyager 服务器。您可以将分析后的模式发送到这些服务器,以进一步加深分析。
此选项卡允许您扫描 GraphQL URL 以获取后端服务器技术信息。
该扫描器旨在内省功能禁用时重建模式。它基于 Clairvoyance CLI 工具,使用正则表达式模式匹配来发现模式细节。
要成功安装 InQL,请确保满足以下要求:
Burp:
Java:
$ sudo apt install -y openjdk-17-jdk
$ java --version
openjdk 17.0.6 2023-01-17
$ # Mac OS & Homebrew:
$ brew install go-task
$ # Debian
$ sudo apt install -y task
$ git clone https://github.com/doyensec/inql
$ cd inql
$ # 可选:切换到 dev 分支(可能不稳定/已损坏!)
$ git checkout dev
$ task all
这将生成一个名为 InQL.jar(或类似)的文件,位于仓库根目录。将其作为 Java 扩展加载到 Burp 中。
开发环境
如果您想为项目做贡献,无需特殊环境。每次实现更改后,只需重新构建项目即可。
为了加快代码开发速度,您可能希望在每次更改时自动重建扩展。只需使用 --watch / -w 标志运行 kotlin 任务即可:
$ task kotlin -w
InQL 因社区贡献而蓬勃发展。无论您是开发者、研究员、设计师还是漏洞猎人,您的专业知识对我们都至关重要。我们欢迎错误报告、反馈和拉取请求。您的参与有助于我们持续改进 InQL,使其成为社区更强大的工具。
最好通过 GitHub 问题跟踪器进行互动,但您也可以通过社交媒体 (@Doyensec) 联系我们。期待您的反馈!
特别感谢我们的贡献者。你们的奉献和承诺对于 InQL 的今天至关重要。
当前:
历史:
本项目由 Doyensec 支持完成。