# T1056.003 - Web Portal Capture
## Descrição
Adversários injetam código malicioso em **portais web voltados ao exterior** - como páginas de login de VPN, portais de webmail, interfaces de acesso remoto e painéis de administração - para capturar e transmitir credenciais de usuários no momento em que eles se autenticam. A técnica é silenciosa: o usuário conclui o login normalmente, sem perceber que suas credenciais foram interceptadas.
Diferentemente do [[t1056-001-keylogging|Keylogging]] tradicional, o Web Portal Capture opera **no lado do servidor** - modificando o código da aplicação web diretamente ou inserindo scripts maliciosos no fluxo de autenticação. Isso a torna especialmente difícil de detectar via controles no endpoint da vítima.
No contexto **brasileiro e latino-americano**, a técnica representa um risco crítico para organizações que expõem portais de acesso remoto sem autenticação multifator robusta. VPNs SSL (Pulse Secure, Fortinet, Cisco AnyConnect), portais de RDP Gateway e interfaces de administração de firewalls são alvos frequentes. O grupo [[g1035-winter-vivern|Winter Vivern]] documentou o uso da técnica contra webmails governamentais europeus - um padrão replicável contra portais de e-mail de governos estaduais e municipais brasileiros que ainda operam infraestrutura legada exposta.
A técnica pode ser executada como parte do **comprometimento inicial** (ao explorar uma vulnerabilidade no portal - ex.: [[t1190-exploit-public-facing-application|Exploit Public-Facing Application]]) ou **pós-comprometimento**, usando acesso administrativo legítimo como mecanismo de persistência discreta para manter coleta de credenciais a longo prazo - complementando [[t1133-external-remote-services|External Remote Services]] e [[t1078-valid-accounts|Valid Accounts]].
> **Técnica pai:** [[t1056-input-capture|T1056 - Input Capture]]
---
## Attack Flow
```mermaid
graph TB
A([Acesso ao Servidor<br/>ou Exploit Web]) --> B[Modificação do<br/>Código do Portal]
B --> C{Tipo de\nInjeção}
C --> D[Script PHP/ASP<br/>na página de login]
C --> E[Módulo malicioso<br/>no servidor VPN]
C --> F[JavaScript injetado<br/>no webmail]
D --> G(["T1056.003 - Web Portal Capture<br/>(CAPTURAR)"]):::highlight
E --> G
F --> G
G --> H[Credenciais enviadas<br/>para C2 silenciosamente]
H --> I[Uso em<br/>T1078 Valid Accounts ou\nT1133 External Remote Services]
style G fill:#e74c3c,color:#fff
```
---
## Como Funciona
**Passo 1 - Comprometimento do Portal**
O adversário obtém acesso de escrita ao portal web alvo - sejá explorando uma vulnerabilidade conhecida no servidor de aplicação (ex.: CVE em Pulse Secure, Ivanti Connect Secure, Fortinet SSL-VPN), via [[t1078-valid-accounts|credenciais administrativas comprometidas]] ou por meio de um implante pré-existente no servidor. O acesso pode ser tão simples quanto upload de um web shell via CVE de path traversal ou SQLi em um portal de login customizado.
**Passo 2 - Injeção do Código de Captura**
Com acesso ao servidor, o adversário modifica os arquivos de autenticação do portal (ex.: `login.php`, `auth.asp`, `index.cfm`) para adicionar um bloco de código que intercepta as credenciais submetidas antes de passá-las ao processo de autenticação legítimo. O código captura o par usuário/senha e os envia silenciosamente - via requisição HTTP para um servidor C2, escrita em arquivo local, ou envio por e-mail. O usuário é autenticado normalmente; nada indica comprometimento. O [[s1022-iceapple|IceApple]], framework pós-exploração para IIS, inclui módulos específicos para esse tipo de interceptação em portais Microsoft.
**Passo 3 - Coleta Persistente e Uso das Credenciais**
As credenciais capturadas acumulam-se ao longo do tempo, fornecendo ao adversário acesso a múltiplas contas válidas para uso em [[t1078-valid-accounts|Valid Accounts]]. Contas de administradores de rede ou de segurança que acessam o portal comprometido são especialmente valiosas. As credenciais também podem ser usadas para acessar [[t1133-external-remote-services|serviços remotos externos]] adicionais da organização, ampliar o escopo do comprometimento ou ser vendidas em fóruns criminosos.
---
## Detecção
### Event IDs Relevantes
| Event ID | Fonte | Indicador de Comprometimento |
|---|---|---|
| **4663** | Windows Security | Acesso de escrita a arquivos de aplicação web (ex.: `*.php`, `*.asp`, `*.aspx`) por processo não-IIS/Apache |
| **4688** | Windows Security | Criação de processo web server com parâmetros incomuns (ex.: `w3wp.exe` executando `cmd.exe`) |
| **1** (Sysmon) | Sysmon Operational | Criação de processo filho de servidor web (IIS, Apache, nginx) - possível web shell |
| **11** (Sysmon) | Sysmon Operational | Modificação de arquivo em diretório de aplicação web fora de jánela de change management |
| **3** (Sysmon) | Sysmon Operational | Conexão de rede originada por processo do servidor web para IP externo - exfiltração de credenciais |
| **Web Server Access Log** | IIS / Apache / nginx | Requisições POST incomuns para endpoints de login com parâmetros adicionais não documentados |
### Regra Sigma
```yaml
title: Modificação de Arquivo em Portal Web Externo - Possível Web Portal Capture
id: 2c8f4a17-3e9b-4d6c-a1f5-7b2e8d4c9a3f
status: experimental
description: >
Detecta modificação inesperada de arquivos de aplicação web em portais expostos
externamente, possível indicador de injeção de código para captura de credenciais
(T1056.003 - Web Portal Capture).
author: RunkIntel
daté: 2026-03-24
logsource:
product: windows
category: file_event
detection:
selection_webfiles:
TargetFilename|contains:
- '\inetpub\wwwroot\'
- '\htdocs\'
- '\www\'
- '\webroot\'
TargetFilename|endswith:
- '.php'
- '.asp'
- '.aspx'
- '.jsp'
- '.cfm'
filter_legitimate:
Image|contains:
- 'w3wp.exe'
- 'deploy'
- 'msdeploy'
- 'git'
condition: selection_webfiles and not filter_legitimate
falsepositives:
- Deployments legítimos via CI/CD pipeline
- Atualizações manuais por time de desenvolvimento durante jánela de change
- Ferramentas de monitoramento de integridade de arquivos (FIM) em modo ativo
level: high
tags:
- attack.collection
- attack.credential_access
- attack.t1056.003
```
---
## Mitigação
| Controle | Mitigação MITRE | Aplicação para Organizações Brasileiras |
|---|---|---|
| Gestão de contas privilegiadas | [[m1026-privileged-account-management\|M1026 - Privileged Account Management]] | Restringir ao mínimo o número de contas com acesso administrativo aos servidores de portal VPN e webmail. Usar contas dedicadas para administração de infraestrutura - nunca contas de usuário comum. Implementar PAM (Privileged Access Management) para gravação de sessões administrativas. |
| Autenticação multifator | - | Exigir MFA em todos os portais voltados à internet - VPN, webmail, RDP Gateway, painéis de administração. MFA é a mitigação mais eficaz contra abuso de credenciais coletadas via T1056.003. Solução mínima aceitável: TOTP; recomendado: FIDO2/WebAuthn. |
| Monitoramento de integridade de arquivos (FIM) | - | Implantar FIM (ex.: OSSEC, Wazuh, Tripwire) nos servidores que hospedam portais externos. Alertar para qualquer modificação em arquivos de código fora de jánelas de change autorizadas. Fundamental para detecção precoce de injeção de código. |
| Patching de portais externos | - | Manter VPNs, firewalls e portais web atualizados com patches de segurança. Vulnerabilidades em Ivanti, Pulse Secure, Citrix e Fortinet são frequentemente exploradas para comprometimento inicial que antecede T1056.003. Monitorar CISA KEV para CVEs ativos nesses produtos. |
| Segmentação e WAF | - | Posicionar WAF (Web Application Firewall) na frente de todos os portais externos. Configurar regras para detectar modificações anômalas de parâmetros de formulário. Implementar Content Security Policy (CSP) para mitigar injeção de scripts maliciosos. |
| Revisão periódica de código | - | Realizar revisões de integridade do código dos portais de login trimestralmente ou após qualquer incidente de segurança. Comparar hashes de arquivos com baseline pós-deploy. Automatizar com pipelines de verificação de integridade. |
---
## Threat Actors que Usam
### [[g1035-winter-vivern|Winter Vivern]]
O [[g1035-winter-vivern|Winter Vivern]] é o ator mais documentado no uso de T1056.003. O grupo - associado a interesses russos e bielorrussos - tem como alvo preferencial portais de webmail de governos europeus e organizações de segurança, injetando código JavaScript malicioso nas páginas de login para capturar credenciais. Em campanhas documentadas em 2023, o grupo comprometeu portais de e-mail Roundcube de entidades governamentais na Ucrânia e na Polônia, usando scripts `<img>` com src dinâmico para exfiltrar credenciais para servidores C2.
**Relevância LATAM:** O padrão do [[g1035-winter-vivern|Winter Vivern]] é diretamente replicável contra portais de webmail de governos estaduais brasileiros, prefeituras e autarquias que ainda operam servidores Roundcube, Horde ou Squirrelmail com patching deficiente. Organizações que aténdem setores diplomáticos ou de defesa na região devem considerar esse ator como ameaça relevante.
---
## Software Associado
| Software | Tipo | Uso em T1056.003 |
|---|---|---|
| [[s1116-warpwire\|WARPWIRE]] | Malware | Credential harvester injetado em portais Ivanti Connect Secure/Pulse Secure; captura credenciais VPN e as exfiltra via HTTPS para C2. Explorado em conjunto com CVEs críticos da Ivanti. |
| [[s1022-iceapple\|IceApple]] | Framework | Framework pós-exploração para IIS com módulo `CredSearcher` que intercepta credenciais em portais ASP.NET. Detectado em comprometimentos de organizações governamentais e de pesquisa. |
---
*Fonte: [MITRE ATT&CK - T1056.003](https://attack.mitre.org/techniques/T1056/003)*