Guia educativo — o que os pentests acharam (e o que significa)
Para: Renata (Chefe) · FriendlyAI / Sentinel-Hub Alvos: digia.com · cgi.com · eficode.com · q-factory.fi Modo: só superfície pública (sem exploit, sem senha, sem DoS) Data: 28 Jul 2026 · Elaborado para você explicar com confiança
Este guia traduz o relatório técnico em linguagem de 12 anos de idade, com gravidade, impacto no negócio, por que o cliente compraria o report, e o passo a passo + scripts de correção (para o time de TI deles).
Como se você tivesse 12 anos:
Imagine a empresa como uma casa na rua.
• ALTA = porta da frente aberta, ou a fechadura da entrada principal fraca. Qualquer estranho pode tentar entrar ou se passar por você.
• MÉDIA = janela sem tranca: não é o pior, mas ajuda o ladrão se ele já estiver no quintal.
• BAIXA = etiqueta no correio com o nome do cachorro — informação pequena, mas ainda é informação.
• OK = tranca boa; manter e checar de vez em quando.
Diagramas Excalidraw editáveis: diagrams/severity-gravidade-cliente.excalidraw e diagrams/pipeline-correcao.excalidraw (abra em excalidraw.com → Open).
2. Ranking (pior → melhor neste sample)
1
Q-Factory Oy — WordPress conta usuários em público + zero headers + DMARC frouxo
2
Digia — Gateway Citrix na internet + e-mail fácil de falsificar + CSP “de mentirinha”
3
Eficode — Site moderno e limpo; falta fechar o cadeado de scripts (CSP) e security.txt
4
CGI — Mais madura (e-mail e borda fortes); ainda tem CSP frouxa e vazamento DNS de IP privado
Frase de elevador: “Não invadimos ninguém. Olhamos a fachada na internet como um cliente ou um atacante faria — e medimos o que está exposto de graça.”
3. Q-Factory Oy — q-factory.fi PIOR DO LOTE
Stack: WordPress + Elementor + WP Engine + Cloudflare DNS
Q-01 · ALTA
API do WordPress lista usuários (e até parece e-mail no “apelido”)
Em 12 anos: O site tem uma gaveta secreta chamada /wp-json/wp/v2/users.
Qualquer pessoa na internet abre a gaveta e vê a lista de quem tem conta no site — nomes e slugs
(um deles parece e-mail corporativo). É como a lista de moradores do prédio colada no elevador.
Implicação: Atacante monta lista de alvos para phishing (“Oi Petra, sou do RH…”),
tenta senhas comuns nesses logins, ou mapeia a empresa. Não é “hackear o servidor” ainda —
é inteligência grátis para o próximo passo.
Como corrigir (passo a passo):
Instalar mu-plugin scripts/04-wp-disable-user-enum.php (só logado vê users).
Ou no WP Engine / security plugin: desativar REST de usuários para anônimos.
Trocar slugs que são e-mail por nomes neutros (ex.: onni.o).
Re-testar: ./03-check-wp-user-enum.sh https://q-factory.fi deve NÃO retornar 200 com lista.
Q-01b · ALTA
REST aberto (posts, estrutura do site)
Mesma gaveta, outras pastas: o site entrega um mapa de conteúdo em JSON. Útil para apps — perigoso se demais.
Facilita scraping e mapeamento de conteúdo/estrutura.
Restringir endpoints desnecessários; manter só o que o front realmente usa; WAF regras em /wp-json sensíveis.
Q-02 · MÉDIA
Quase nenhum “escudo” no navegador (headers)
Headers são cartazes que o site manda pro browser: “só fale HTTPS”, “não deixe outro site me colocar num quadro”, “não adivinhe o tipo do arquivo”. Q-Factory manda quase nenhum cartaz.
Mais fácil clickjacking, MIME sniff, XSS se houver bug em plugin.
DMARC none = polícia do e-mail só assiste. CAA missing = qualquer autoridade de certificado “pode” ser usada se DNS for sequestrado de forma parcial. security.txt = cartão de visita do time de segurança (quem avisar de bug).
login.digia.com = portão Citrix (VPN/SSO) na internet
Não é só o site de marketing. É a portaria do castelo onde funcionários digita login para entrar na rede. Qualquer um na rua vê a portaria.
Histórico de CVEs Citrix; phishing de página de login; tentativas de senha (fora do nosso escopo). Se a portaria cai, o resto da casa sofre.
Patch contínuo do ADC/NetScaler.
MFA obrigatório (app, não só SMS se possível).
Hardening LogonPoint; monitoramento de spray.
Restringir por geo/IP se o negócio permitir.
Programa de patch em 24–72h quando sair CVE crítica Citrix.
Não há “script mágico” externo que “conserte” Citrix do cliente — é operação interna deles + fornecedor.
D-18 · ALTA
/oauth* e /saml* no gateway devolvem erro 500
As “portas laterais” de login federado (OAuth/SAML) estão com fumaça: o servidor grita “Internal Server Error 43549”. Não exploramos o erro — mas erro barulhento = sistema mal configurado ou quebrado.
Usuários legítimos podem falhar SSO; atacantes usam comportamento de erro para fingerprint e bugs.
Time de identidade Digia: corrigir IdP/SAML/OAuth no NetScaler; retestar fluxos; logs de 500.
D-01 · ALTA
DMARC p=none
Dá para mandar e-mail fingindo ser @digia.com e muitos servidores aceitam (ou só marcam de leve).
Phishing de clientes e funcionários com logo/marca Digia — dano reputacional absurdo para empresa de TI.
DKIM é o carimbo de cera no envelope. 1024 bits é carimbo antigo; o padrão moderno é 2048+.
No M365/admin de e-mail: rotacionar chaves DKIM 2048 e atualizar TXT DNS.
D-02–08, D-20–21 · MÉDIA
CSP fraca no marketing, headers faltando, SPF gordo, Leadoo, sem CAA, portas 8080/8443
O site de brochure tem poucos cartazes de segurança. SPF “gordo” = muitos serviços autorizados a enviar e-mail como Digia (mais confiança = mais risco se um terceiro vazar). Leadoo = chat de terceiros (você confia no JavaScript deles).
CSP real + headers (scripts 05/06/07); enxugar SPF; revisar terceiros; publicar CAA; entender 8080/8443 no Cloudflare (só 403 ou serviço real?).
OK HSTS forte, TLS 1.3, mutators 403, TRACE 405, sem .git aberto no apex.
CSP completa é uma lista do que scripts/imagens podem rodar. A deles só diz “não me embuta em site estranho” (frame-ancestors). Falta a parte de scripts.
Se um dia houver XSS, o browser tem menos freio.
Expandir CSP no Next/Vercel headers (nonce ou allowlist). Cuidado com marketing tags.
E-02 · MÉDIA
Sem security.txt
Não tem o “me liga se achar um buraco” padrão da internet (RFC 9116).
Publicar /.well-known/security.txt com contato e política.
E-03 · MÉDIA
Cookie NEXT_LOCALE sem Secure/HttpOnly
Cookie de idioma. Sem Secure pode ir em HTTP (se existir). Sem HttpOnly, JavaScript da página lê — pequeno risco, mas fácil de endurecer.
Flags Secure; HttpOnly se JS não precisar ler.
OK DMARC quarantine, CAA presente, HSTS, nosniff, mutators/TRACE bloqueados, sem WP REST.
Mensagem comercial: Eficode já está no “time moderno”. O report vende polimento de elite e maturidade de processo — não “seu site está em chamas”.
CSP permite unsafe-inline + unsafe-eval + style-src *
Eles têm o cartaz CSP, mas ele diz “pode rodar script solto e eval”. É como ter alarme na porta e deixar a chave embaixo do tapete.
XSS tem mais espaço para executar se houver falha em conteúdo/terceiro.
Remover unsafe-eval; reduzir inline com nonces; parar style-src *.
C-02 · ALTA
CSP confia em polyfill.io e muitos anúncios/analytics
polyfill.io já teve história feia de supply-chain: se o CDN do amigo for invadido, o script no site da CGI também sofre.
Raio de explosão de terceiros (ZoomInfo, ads, HubSpot, etc.).
Remover polyfill.io; self-host ou CDNs mínimos; revisar Taggrs em mycgi/data.
C-03 · MÉDIA
test.cgi.com aponta para IP privado 10.x
O mapa público da cidade mostra a porta dos fundos da rede interna. Não entrega o ouro sozinho, mas vaza topologia.
Split-horizon DNS: IP privado só na rede interna; público remove ou aponta certo.
C-04–07 · MÉDIA
xmlrpc 502 · /admin 403 Drupal · martech pesado
/admin existe mas nega acesso (mostra “Drupal”). xmlrpc residual 502 = resto de legado. Muitos JS de terceiros = muitas chaves na mesma chaveiro.
404 em xmlrpc; páginas de erro genéricas; reduzir tags.
OK DMARC reject, CAA, security.txt, XFO/nosniff/Permissions/COOP, TRACE 403 — marketing enterprise de verdade.
7. Scripts — o que cada um faz
Regra de ouro: nós não entramos nos servidores dessas empresas. Os scripts são kit para o cliente (ou lab autorizado) verificar e aplicar no ambiente deles.
Arquivo
Tipo
O que faz (simples)
01-check-email-auth.sh
Verificar
Pergunta ao DNS: SPF/DMARC/CAA/DKIM. Diz se e-mail falso passa fácil.
02-check-security-headers.sh
Verificar
Olha os “cartazes” HTTP: HSTS, CSP, XFO…
03-check-wp-user-enum.sh
Verificar
Tenta a gaveta de users do WordPress.
04-wp-disable-user-enum.php
Corrigir
Trava a gaveta: só logado lista users.
05-nginx-security-headers.conf
Corrigir
Cola headers bons no nginx.
06-apache-security-headers.conf
Corrigir
Idem no Apache.
07-cloudflare-transform-headers.json
Guia
O que clicar no Cloudflare para headers.
08-dmarc-upgrade-guide.txt
Guia
none → quarantine → reject sem quebrar e-mail legítimo.
Exemplo de uso (no lab / máquina da Chefe com dig instalado)
cd scripts
./01-check-email-auth.sh q-factory.fi
./02-check-security-headers.sh https://www.eficode.com
./03-check-wp-user-enum.sh https://q-factory.fi
8. Por que o cliente se importa (e como você explica)
Cliente sente…
Você traduz…
Oferta Sentinel / FriendlyAI
Medo de phishing com marca deles
DMARC/DKIM fracos = e-mail falso
Hardening de e-mail + reteste
Medo de ransomware / VPN
Gateway Citrix exposto = porta principal
Review de identidade + patch cadence
Medo de vazamento de funcionários
WP users públicos = lista de alvos
Lockdown CMS + WAF
Compliance / board
security.txt, CAA, headers = maturidade
Scorecard + roadmap 30/60/90
“Já temos Akamai/CF”
Borda boa ≠ política boa (CGI CSP)
Quality pass, não só “tem WAF”
Frase pronta:
“Fizemos um raio-X da fachada pública — o que qualquer pessoa na internet já consegue ver.
Não invadimos. Mostramos portas abertas, e-mail fácil de forjar, e scripts de terceiros.
Entregamos prioridade por gravidade e o passo a passo para o time de vocês fechar.
Depois retestamos e mostramos o antes/depois.”
O que NÃO dizer
“Hackeamos a Digia” — não hackeamos; superfície pública autorizada no nosso RoE.
“Seus dados já vazaram” — não afirmamos breach.
Prometer exploit zero-day — fora do escopo deste pacote.
9. Limites honestos (credibilidade)
Sem login de funcionário, sem fuzz destrutivo, sem password spray.
Visão de uma origem de rede (Hetzner); alguns hosts podem filtrar geo.
Scripts de correção são modelos; cada cliente tem stack diferente.
Relatórios técnicos originais: pasta irmã ../2026-07-28-*.md e ../2026-07-28-email-report-4-companies.html.