
InQL — это надежное расширение Burp Suite с открытым исходным кодом для продвинутого тестирования GraphQL, предлагающее интуитивно понятное обнаружение уязвимостей, настраиваемые сканирования и бесшовную интеграцию с Burp.
Добро пожаловать в InQL — инструмент с открытым исходным кодом для тестирования GraphQL. Этот инструмент предоставляет функции, призванные улучшить ваш опыт тестирования GraphQL, делая его более эффективным и результативным.
Мы ценим ваше доверие к InQL. Удачного тестирования!
Пользовательский интерфейс InQL включает три основных компонента: вкладки Scanner, Batch Queries и Engine Fingerprinting.

Scanner — это ядро InQL, где вы можете анализировать конечную точку GraphQL или локальный файл схемы интроспекции. Он автоматически генерирует все возможные запросы, мутации и подписки, организуя их в структурированное представление для вашего анализа.
✅ Настраиваемые сканирования
InQL предлагает гибкость настройки сканирований. Вы можете регулировать глубину генерируемых запросов или количество пробелов для отступов. Также можно выполнять сканирование «точек интереса» для обнаружения потенциальных уязвимостей в схеме GraphQL.
✅ Анализ точек интереса
После выполнения сканирования точек интереса вы получаете богатый набор данных, охватывающий различные потенциальные уязвимости. Вы можете включать или отключать эти категории в соответствии с вашими потребностями.
✅ Обнаружение циклических ссылок
InQL реализует обнаружение циклических ссылок. После анализа схемы он отображает потенциально уязвимые запросы в представлении результатов сканера.
✅ Расширенное взаимодействие с Burp
InQL бесшовно интегрируется с Burp, позволяя генерировать запросы непосредственно из любого GraphQL-запроса в Burp. Вы также можете отправлять автоматически сгенерированные запросы в другие инструменты Burp для дальнейшего анализа.
✅ Пользовательские заголовки
У вас есть возможность устанавливать пользовательские заголовки для каждого домена, при этом список доменов автоматически заполняется на основе наблюдаемого трафика.
Вкладка Batch Queries позволяет выполнять пакетные GraphQL-атаки, что может быть полезно для обхода плохо реализованных ограничений скорости.
Родные редакторы сообщений Burp теперь имеют дополнительную вкладку «GraphQL (InQL)», предоставляющую эффективный способ просмотра и изменения GraphQL-запросов. Она также поддерживает подсветку схемы для лучшей читаемости.
InQL теперь реализует серверы GraphiQL и GraphQL Voyager. Вы можете отправить проанализированную схему в них для ещё более глубокого анализа!
Эта вкладка позволяет сканировать URL GraphQL для получения информации о технологии бэкенд-сервера.
Этот сканер предназначен для восстановления схемы, когда интроспекция отключена. Он основан на инструменте 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 или похожим в корне репозитория. Загрузите его в Burp как Java-расширение.
Среда разработки
Если вы хотите внести свой вклад в проект, специальная среда не требуется. Вы можете просто пересобирать проект каждый раз, когда вносите изменения.
Чтобы ускорить работу над кодом, вы можете включить авто-пересборку расширения при каждом изменении. Просто запустите задачу kotlin с флагом --watch / -w, и всё готово:
$ task kotlin -w
InQL процветает благодаря вкладу сообщества. Будь вы разработчиком, исследователем, дизайнером или охотником за багами, ваш опыт бесценен для нас. Мы приветствуем сообщения об ошибках, отзывы и pull request'ы. Ваше участие помогает нам продолжать улучшать InQL, делая его более мощным инструментом для сообщества.
Наилучший способ взаимодействия — через трекер задач GitHub, но вы также можете связаться с нами в социальных сетях (@Doyensec). Ждём ваших сообщений!
Особая благодарность нашим участникам. Ваша самоотдача и приверженность сыграли ключевую роль в том, каким InQL является сегодня.
Текущие:
Исторические:
Этот проект был создан при поддержке Doyensec.