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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2022-46364-Proof-of-the-concept — Эта уязвимость позволяет злоумышленнику выполнять атаки типа SSRF (Server-Side Request Forgery) на веб-сервисы Apache CXF, которые принимают запросы MTOM/XOP. Проблема заключается в том, как анализируется атрибут href элемента xop:Include, что позволяет серверу запрашивать произвольные URL. | Kitploit
Инструменты/GitHubGitHub/cybermaksx/cve-2022-46364-proof-of-the-concept
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийСбор информацииТестирование на ПроникновениеОбучение и Образование
GitHubcybermaksx/cve-2022-46364-proof-of-the-concept

CVE-2022-46364-Proof-of-the-concept

Репозиторий
25 месяцев назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →

Описание

Эта уязвимость позволяет злоумышленнику выполнять атаки типа SSRF (Server-Side Request Forgery) на веб-сервисы Apache CXF, которые принимают запросы MTOM/XOP. Проблема заключается в том, как анализируется атрибут href элемента xop:Include, что позволяет серверу запрашивать произвольные URL.

Поделиться

CVE-2022-46364: Эксплойт SSRF-to-LFI для Apache CXF MTOM XOP:Include

⚠️ ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

ЭТОТ ИНСТРУМЕНТ ПРЕДНАЗНАЧЕН ТОЛЬКО ДЛЯ ОБРАЗОВАТЕЛЬНОГО И АВТОРИЗОВАННОГО ТЕСТИРОВАНИЯ БЕЗОПАСНОСТИ

Этот эксплойт (proof-of-concept) предоставлен в образовательных целях, чтобы помочь специалистам по безопасности понять уязвимость и защитить свои системы. Несанкционированный доступ к компьютерным системам незаконен. Автор не несет ответственности за любое неправомерное использование или ущерб, причиненный этим инструментом. Вы должны получить явное письменное разрешение от владельца системы перед тестированием. Используя этот инструмент, вы соглашаетесь соблюдать все применимые законы.


📋 СОДЕРЖАНИЕ

  1. Обзор
  2. Детали уязвимости
  3. Технический разбор
  4. Использование эксплойта
  5. Установка и требования 6 Митигация
  6. Ссылки и авторы

📌 ОБЗОР

АтрибутЗначение
CVE IDCVE-2022-46364
GHSA IDGHSA-x3x3-qwjq-8gj4
Тип уязвимостиПодделка запросов на стороне сервера (SSRF) → Локальное включение файлов (LFI)
Затронутое ПОApache CXF < 3.5.5, Apache CXF < 3.4.10
СерьёзностьКритическая
Оценка CVSS9.8 (критическая)
Вектор атакиСеть
АутентификацияНе требуется
Версии с исправлениемApache CXF 3.5.5+, 3.4.10+

Этот эксплойт использует критическую уязвимость SSRF в реализации MTOM (Message Transmission Optimization Mechanism) в Apache CXF для достижения локального включения файлов (LFI) и возможности сканирования внутренней сети.


🔬 ДЕТАЛИ УЯЗВИМОСТИ

Суть проблемы

Apache CXF некорректно проверяет атрибут href внутри элементов xop:Include при обработке MTOM-кодированных SOAP-сообщений. Библиотека использует URLConnection из Java для разыменования URI без надлежащих ограничений протоколов, что позволяет атакующим указывать:

  • file:// — чтение локальных файлов (LFI)
  • http:// / https:// — запросы во внутреннюю сеть (SSRF)
  • ftp:// — FTP-запросы (потенциальная возможность дальнейшей эксплуатации)

Почему это важно

Эта уязвимость особенно опасна, потому что:

  1. Не требуется аутентификация — атакующие могут нацелиться на любой доступный SOAP-эндпоинт
  2. Не требуются особые привилегии — сервер выполняет запросы с собственными привилегиями
  3. Раскрытие информации — может раскрыть метаданные облака (AWS, GCP, Azure), конфигурационные файлы и исходный код
  4. Сетевое пивотирование — уязвимый сервер становится прокси для разведки внутренней сети

Подверженные конфигурации

Любое развертывание Apache CXF, которое:

  • Принимает MTOM-кодированные SOAP-сообщения
  • Имеет хотя бы один метод веб-сервиса с параметром (любого типа)
  • Использует версии до 3.5.5 (основная ветка) или 3.4.10 (устаревшая ветка)

🧠 ТЕХНИЧЕСКИЙ РАЗБОР

Обзор протокола: MTOM и XOP

MTOM (Message Transmission Optimization Mechanism) — это стандарт W3C для оптимизации передачи двоичных данных в SOAP-сообщениях. Он использует XOP (XML-binary Optimized Packaging) для включения ссылок на двоичные данные:

root@kitploit:~
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <myData>
            <xop:Include href="cid:[email protected]" 
                        xmlns:xop="http://www.w3.org/2004/08/xop/include"/>
        </myData>
    </soap:Body>
</soap:Envelope>

Обычно href содержит ссылку CID (Content-ID) на часть MIME. Однако класс AttachmentUtil в Apache CXF обрабатывает значения href как универсальные URI без надлежащей санитизации.

Уязвимый путь выполнения кода

  1. Разбор запроса:

    • CXF получает HTTP-запрос multipart/related с Content-Type: application/xop+xml
    • AttachmentUtil.getAttachmentObject() обрабатывает элементы xop:Include
  2. Разыменование URI:

    • Уязвимый метод напрямую вызывает new URL(href).openStream()
    • Не выполняется блокировка протокола file://
    • Нет ограничений сети (например, нет проверки внутренних IP-диапазонов)
  3. Встраивание в ответ:

    • Полученное содержимое кодируется в Base64 и встраивается в SOAP-ответ
    • Атакующий получает данные в SOAP-конверте

Фрагмент кода (уязвимый шаблон)

root@kitploit:~
// Simplified representation of vulnerable code in CXF < 3.5.5
public DataHandler getAttachmentObject(String href) {
    URL url = new URL(href);  // No protocol validation!
    return new DataHandler(url.openStream());
}

Почему работает LFI

Протокол file:// следует тому же пути выполнения кода:

  • file:///etc/passwd → Java открывает /etc/passwd как файловый поток
  • Содержимое файла возвращается в качестве вложения
  • Нет ограничений файловой системы, кроме прав пользователя процесса CXF

Возможность сканирования сети

Перебирая IP-адреса и порты, атакующие могут:

  • Обнаруживать внутренние сервисы
  • Получать доступ к эндпоинтам метаданных облака (169.254.169.254)
  • Обходить средства сегментации сети

🛠️ ИСПОЛЬЗОВАНИЕ ЭКСПЛОЙТА

Синтаксис команды

root@kitploit:~
usage: exploit.py [-h] -t TARGET [-e ENDPOINT] [-u URL] [-f FILE] [-s SCAN]

CVE-2022-46364 Apache CXF SSRF to LFI Exploit - Educational Purpose Only

options:
  -h, --help            Show this help message and exit
  -t TARGET, --target TARGET
                        Target base URL (e.g., http://192.168.1.100:8080)
  -e ENDPOINT, --endpoint ENDPOINT
                        Web service endpoint path (default: /services/Service)
  -u URL, --url URL     External URL for SSRF (e.g., http://169.254.169.254/latest/meta-data/)
  -f FILE, --file FILE  Local file path for LFI (e.g., /etc/passwd, C:\\Windows\\win.ini)
  -s SCAN, --scan SCAN  Scan internal network range in CIDR notation (e.g., 192.168.1.0/24)

Описание аргументов

АргументОписаниеПример
-t, --targetОбязательный. Базовый URL целевого сервиса Apache CXFhttp://10.10.10.50:8080
-e, --endpointНеобязательный. Путь к SOAP-эндпоинту/services/UserManagement
-u, --urlHTTP/HTTPS URL для загрузки через SSRFhttp://169.254.169.254/latest/user-data
-f, --fileПуть к локальному файлу для чтения через LFI/etc/shadow, C:\ProgramData\secret.txt

📦 УСТАНОВКА И ТРЕБОВАНИЯ

Предварительные требования

root@kitploit:~
# Python 3.6 or higher required
python --version

Шаги установки

root@kitploit:~
# Clone the repository
git clone https://github.com/cybermaksxx/CVE-2022-46364-Proof-of-the-concept
cd CVE-2022-46364-PoC

### requirements

requests>=2.28.0 urllib3>=1.26.0

root@kitploit:~

---



### Ключевые детали реализации

#### 1. Создание MTOM-полезной нагрузки
```python
def create_mtom_payload(uri):
    """Create a multipart/related MTOM message with xop:Include"""
    soap_part = f"""--MIME_BOUNDARY
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: binary

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <vulnerableParam>
            <xop:Include href="{uri}" 
                        xmlns:xop="http://www.w3.org/2004/08/xop/include"/>
        </vulnerableParam>
    </soap:Body>
</soap:Envelope>
--MIME_BOUNDARY--"""
    return soap_part

🛡️ МИТИГАЦИЯ

Официальное исправление

Обновитесь до исправленной версии:

root@kitploit:~
<!-- For Maven projects -->
<dependency>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-rt-frontend-jaxws</artifactId>
    <version>3.5.5</version> <!-- or 3.4.10 for legacy -->
</dependency>

Обходные пути (если установка исправления невозможна)

  1. Полностью отключите MTOM (если он не требуется):

    root@kitploit:~
    <jaxws:endpoint ...>
        <jaxws:properties>
            <entry key="mtom-enabled" value="false"/>
        </jaxws:properties>
    </jaxws:endpoint>
    
  2. Контроль на уровне сети:

    • Ограничьте исходящие соединения с сервера приложений CXF
    • Используйте межсетевые экраны для предотвращения доступа к внутренним IP-диапазонам с уровня приложений
    • Внедрите фильтрацию исходящего трафика
  3. Правила межсетевого экрана для веб-приложений (WAF):

    • Блокируйте запросы, содержащие xop:Include с href, указывающим на file:// или внутренние IP-адреса

📚 ССЫЛКИ И АВТОРЫ

Первоначальные исследователи

Эта уязвимость была обнаружена и ответственно раскрыта:

  • Jonathan Leitschuh — исследователь безопасности
  • Nick Tait — исследователь безопасности

Официальные уведомления

  • Консультация по безопасности Apache CXF
  • База данных консультаций GitHub: GHSA-x3x3-qwjq-8gj4
  • NVD: CVE-2022-46364

Связанные ресурсы

  • Спецификация MTOM (W3C)
  • Спецификация XOP (W3C)
  • Документация Apache CXF

Благодарности

  • Команде Apache CXF за быструю реакцию и исправление
  • GitHub Security Lab за публикацию уведомления
  • Сообществу специалистов по безопасности за практики ответственного раскрытия

📄 ЛИЦЕНЗИЯ

Этот инструмент предоставлен только в образовательных целях. Несанкционированное использование запрещено.

root@kitploit:~
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Последнее обновление: март 2026
Версия: 1.0
Контакт: По вопросам безопасности или другим вопросам, пожалуйста, создайте issue на GitHub.


Этот документ является частью ответственного исследования безопасности. Всегда получайте надлежащее разрешение перед тестированием.

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