# Hospedagem Integrada

> **Um guia abrangente sobre hospedagem integrada (hosting compartilhado)** – desde os fundamentos do ambiente multi-tenant e o modelo de responsabilidade até ferramentas de segurança, artefatos forenses e procedimentos de investigação em plataformas como HostGator, GoDaddy, cPanel e similares.

***

## 📌 Índice

1. [Introdução à Hospedagem Integrada](#-introdução-à-hospedagem-integrada)
   * 1.1 [O que é Hospedagem Compartilhada?](#11-o-que-é-hospedagem-compartilhada)
   * 1.2 [O Modelo de Responsabilidade em Hospedagem](#12-o-modelo-de-responsabilidade-em-hospedagem)
   * 1.3 [Arquitetura Multi-tenant e Isolamento](#13-arquitetura-multi-tenant-e-isolamento)
   * 1.4 [Principais Provedores e Suas Características](#14-principais-provedores-e-suas-características)
2. [Arquitetura Técnica da Hospedagem Compartilhada](#-arquitetura-técnica-da-hospedagem-compartilhada)
   * 2.1 [Componentes da Infraestrutura](#21-componentes-da-infraestrutura)
   * 2.2 [Painéis de Controle: cPanel, Plesk, DirectAdmin](#22-painéis-de-controle-cpanel-plesk-directadmin)
   * 2.3 [Pilha LAMP/LEMP e Alternativas](#23-pilha-lamplemp-e-alternativas)
   * 2.4 [Sistemas de Arquivos e Estrutura de Diretórios](#24-sistemas-de-arquivos-e-estrutura-de-diretórios)
3. [Mecanismos de Segurança em Hospedagem Compartilhada](#-mecanismos-de-segurança-em-hospedagem-compartilhada)
   * 3.1 [Isolamento entre Contas (chroot, open\_basedir, CageFS)](#31-isolamento-entre-contas-chroot-open_basedir-cagefs)
   * 3.2 [Proteção contra Ataques Cruzados](#32-proteção-contra-ataques-cruzados)
   * 3.3 [Firewalls de Aplicação Web (WAF) e ModSecurity](#33-firewalls-de-aplicação-web-waf-e-modsecurity)
   * 3.4 [Proteção contra DDoS e Abuso de Recursos](#34-proteção-contra-ddos-e-abuso-de-recursos)
   * 3.5 [Antivírus e Escaneamento de Malware (ClamAV, ImunifyAV)](#35-antivírus-e-escaneamento-de-malware-clamav-imunifyav)
   * 3.6 [Autenticação e Acesso: FTP, SSH, SFTP](#36-autenticação-e-acesso-ftp-ssh-sftp)
4. [Artefatos Forenses em Hospedagem Compartilhada](#-artefatos-forenses-em-hospedagem-compartilhada)
   * 4.1 [Logs de Acesso (HTTP)](#41-logs-de-acesso-http)
   * 4.2 [Logs de Erro](#42-logs-de-erro)
   * 4.3 [Logs de FTP/SFTP](#43-logs-de-ftpsftp)
   * 4.4 [Logs do Painel de Controle](#44-logs-do-painel-de-controle)
   * 4.5 [Logs de E-mail (Exim, Mail Logs)](#45-logs-de-e-mail-exim-mail-logs)
   * 4.6 [Arquivos de Configuração (.htaccess, php.ini, etc.)](#46-arquivos-de-configuração-htaccess-phpini-etc)
   * 4.7 [Arquivos Temporários e Cache](#47-arquivos-temporários-e-cache)
   * 4.8 [Backups e Snapshots](#48-backups-e-snapshots)
5. [Investigação Forense em Ambiente Compartilhado](#-investigação-forense-em-ambiente-compartilhado)
   * 5.1 [Desafios Específicos do Ambiente Multi-tenant](#51-desafios-específicos-do-ambiente-multi-tenant)
   * 5.2 [Metodologia de Investigação para Hospedagem](#52-metodologia-de-investigação-para-hospedagem)
   * 5.3 [Coleta de Evidências via Painel de Controle](#53-coleta-de-evidências-via-painel-de-controle)
   * 5.4 [Análise de Logs: Ferramentas e Técnicas](#54-análise-de-logs-ferramentas-e-técnicas)
   * 5.5 [Identificação de Malware em Sites](#55-identificação-de-malware-em-sites)
   * 5.6 [Cadeia de Custódia em Hospedagem](#56-cadeia-de-custódia-em-hospedagem)
   * 5.7 [Exemplo Prático: Investigação de Site Comprometido](#57-exemplo-prático-investigação-de-site-comprometido)
6. [Melhores Práticas de Segurança para Sites em Hospedagem](#-melhores-práticas-de-segurança-para-sites-em-hospedagem)
   * 6.1 [Hardening de Conta e Acesso](#61-hardening-de-conta-e-acesso)
   * 6.2 [Segurança de Aplicações Web (CMS)](#62-segurança-de-aplicações-web-cms)
   * 6.3 [Backups e Recuperação](#63-backups-e-recuperação)
   * 6.4 [Monitoramento e Alertas](#64-monitoramento-e-alertas)
   * 6.5 [Checklist de Segurança para Sites](#65-checklist-de-segurança-para-sites)
7. [Limitações e Considerações](#-limitações-e-considerações)
   * 7.1 [O Que o Provedor NÃO Faz](#71-o-que-o-provedor-não-faz)
   * 7.2 [Quando Migrar para VPS ou Dedicado](#72-quando-migrar-para-vps-ou-dedicado)
8. [Referências e Ferramentas](#-referências-e-ferramentas)

***

## 🔍 Introdução à Hospedagem Integrada

### 1.1 O que é Hospedagem Compartilhada?

A **hospedagem compartilhada (shared hosting)** é um modelo de serviço onde múltiplos sites residem em um mesmo servidor físico (ou máquina virtual), compartilhando recursos como CPU, memória, espaço em disco e conexão de rede . É a forma mais acessível de hospedagem, ideal para sites de pequeno e médio porte, blogs, portfólios e sites institucionais.

**Benefícios:**

* **Baixo custo**: Recursos compartilhados reduzem o preço
* **Gerenciamento simplificado**: Provedor cuida da infraestrutura
* **Pronto para uso**: Serviços pré-configurados (Apache, MySQL, PHP)
* **Painéis de controle**: Interfaces amigáveis para gerenciamento

**Desafios de segurança:**

* **Risco de contaminação cruzada**: Um site comprometido pode afetar outros
* **Recursos limitados**: Sem isolamento completo entre contas
* **Acesso restrito**: Cliente tem acesso apenas à sua conta, não ao servidor
* **Dependência do provedor**: Políticas de segurança variam por empresa

### 1.2 O Modelo de Responsabilidade em Hospedagem

Diferentemente de cloud providers como AWS ou Azure, na hospedagem compartilhada o modelo de responsabilidade é diferente:

| **Responsabilidade**                   | **Provedor de Hospedagem**       | **Cliente (Proprietário do Site)**      |
| -------------------------------------- | -------------------------------- | --------------------------------------- |
| **Infraestrutura Física**              | Servidores, rede, data center    | -                                       |
| **Sistema Operacional**                | Atualizações, patches, hardening | -                                       |
| **Serviços Core (Apache, PHP, MySQL)** | Configuração, manutenção         | -                                       |
| **Painel de Controle**                 | Disponibilidade, atualizações    | -                                       |
| **Aplicações (CMS, scripts)**          | -                                | Instalação, atualização, hardening      |
| **Arquivos do Site**                   | -                                | Integridade, backups                    |
| **Senhas e Acessos**                   | -                                | Credenciais fortes, MFA (se disponível) |
| **Backups**                            | Geralmente oferece (com limites) | Deve manter cópias próprias             |

> 💡 **Regra de Ouro**: O provedor protege a infraestrutura; o cliente protege o que está *dentro* da sua conta (arquivos, senhas, aplicações).

### 1.3 Arquitetura Multi-tenant e Isolamento

```mermaid
graph TB
    subgraph "Servidor Compartilhado"
        SO[Sistema Operacional Linux]
        CP[Painel de Controle - cPanel/Plesk]
        
        subgraph "Conta Cliente A"
            A1[Document Root: /home/userA/public_html]
            A2[Banco de Dados: userA_db]
            A3[E-mails: userA@dominio.com]
        end
        
        subgraph "Conta Cliente B"
            B1[Document Root: /home/userB/public_html]
            B2[Banco de Dados: userB_db]
            B3[E-mails: userB@dominio.com]
        end
        
        subgraph "Conta Cliente C"
            C1[Document Root: /home/userC/public_html]
            C2[Banco de Dados: userC_db]
            C3[E-mails: userC@dominio.com]
        end
    end
    
    SO --> CP
    CP --> A1 & A2 & A3
    CP --> B1 & B2 & B3
    CP --> C1 & C2 & C3
```

**Mecanismos de Isolamento:**

| **Tecnologia**            | **Função**                              | **Implementação**                                     |
| ------------------------- | --------------------------------------- | ----------------------------------------------------- |
| **chroot**                | Isola o sistema de arquivos por conta   | Cada usuário vê apenas seu diretório                  |
| **open\_basedir**         | Restringe acesso a arquivos no PHP      | Impede scripts de acessar diretórios de outras contas |
| **CageFS (CloudLinux)**   | Sistema de arquivos virtual por usuário | Isolamento avançado em servidores CloudLinux          |
| **MySQL User Privileges** | Bancos de dados separados por usuário   | Cada conta acessa apenas seus bancos                  |
| **PHP-FPM pools**         | Processos PHP separados por usuário     | Isolamento de execução de scripts                     |

### 1.4 Principais Provedores e Suas Características

| **Provedor**   | **Painel**     | **Características de Segurança**                   | **Limitações**                    |
| -------------- | -------------- | -------------------------------------------------- | --------------------------------- |
| **HostGator**  | cPanel         | Imunify360, ModSecurity, backups diários           | Sem SSH em planos básicos         |
| **GoDaddy**    | cPanel         | Firewall WAF, proteção DDoS                        | Políticas de conteúdo restritivas |
| **Locaweb**    | cPanel         | Anti-DDoS, Firewall, antivírus                     | Suporte técnico limitado          |
| **Bluehost**   | cPanel         | SiteLock, CodeGuard, SSL gratuito                  | Suporte prioritário pago          |
| **DreamHost**  | Painel próprio | SSH incluído, firewall customizado                 | Curva de aprendizado maior        |
| **SiteGround** | Site Tools     | AI anti-bot, WAF customizado, isolamento de contas | Mais caro que concorrentes        |

***

## 🏗️ Arquitetura Técnica da Hospedagem Compartilhada

### 2.1 Componentes da Infraestrutura

| **Componente**             | **Função**                          | **Exemplos**               |
| -------------------------- | ----------------------------------- | -------------------------- |
| **Servidor Web**           | Entrega de conteúdo HTTP/HTTPS      | Apache, Nginx, LiteSpeed   |
| **Processador de Scripts** | Executa código dinâmico             | PHP-FPM, PHP-CGI, ModPHP   |
| **Banco de Dados**         | Armazenamento de dados estruturados | MySQL, MariaDB, PostgreSQL |
| **Servidor de E-mail**     | Envio e recebimento de e-mails      | Exim, Postfix, Dovecot     |
| **Servidor DNS**           | Resolução de nomes de domínio       | BIND, PowerDNS             |
| **FTP/SFTP Server**        | Transferência de arquivos           | ProFTPD, vsftpd, Pure-FTPd |
| **Painel de Controle**     | Gerenciamento centralizado          | cPanel, Plesk, DirectAdmin |

### 2.2 Painéis de Controle: cPanel, Plesk, DirectAdmin

**cPanel (mais comum):**

* **Estrutura**: Conta principal + subcontas (addon domains, subdomains)
* **Logs disponíveis**: Raw Access Logs, Error Logs, FTP Logs, Email Logs
* **Ferramentas de segurança**: ImunifyAV, ModSecurity, SSL/TLS Status
* **Backups**: Diários (geralmente 30 dias de retenção)

**Plesk:**

* **Multi-OS**: Windows e Linux
* **Segurança**: Fail2Ban integrado, WAF com ModSecurity
* **Extensões**: Security Advisor, Atomic Secure

**DirectAdmin:**

* **Mais leve**: Consome menos recursos
* **Segurança**: Firewall integrado, mod\_security
* **Customização**: Maior flexibilidade de configuração

### 2.3 Pilha LAMP/LEMP e Alternativas

A **pilha LAMP** (Linux, Apache, MySQL, PHP) é a base da maioria das hospedagens:

```mermaid
graph LR
    A[Browser] --> B[Apache/Nginx]
    B --> C{Arquivo?}
    C -->|Estático| D[HTML/CSS/JS]
    C -->|Dinâmico| E[PHP-FPM]
    E --> F[MySQL/MariaDB]
    F --> G[Dados]
    G --> E
    E --> B
    B --> A
```

| **Pilha**     | **Componentes**                 | **Uso Comum**                                  |
| ------------- | ------------------------------- | ---------------------------------------------- |
| **LAMP**      | Linux + Apache + MySQL + PHP    | WordPress, Joomla, sites PHP tradicionais      |
| **LEMP**      | Linux + Nginx + MySQL + PHP     | Alta performance, sites com muito tráfego      |
| **LiteSpeed** | Linux + LiteSpeed + MySQL + PHP | Hospedagens otimizadas (HostGator, SiteGround) |

### 2.4 Sistemas de Arquivos e Estrutura de Diretórios

**Estrutura típica de uma conta cPanel:**

```
/home/username/
├── access-logs/          # Logs de acesso HTTP
├── etc/                  # Configurações (php.ini, etc.)
├── mail/                 # E-mails da conta
├── public_ftp/           # Arquivos para FTP anônimo
├── public_html/          # RAIZ DO SITE (document root)
│   ├── index.php
│   ├── wp-config.php     # WordPress
│   ├── .htaccess         # Configurações Apache
│   └── ...
├── ssl/                  # Certificados SSL
├── tmp/                  # Arquivos temporários
├── .bashrc               # Configurações do shell
├── .bash_history         # Histórico de comandos (se SSH disponível)
└── .my.cnf               # Credenciais MySQL
```

***

## 🛡️ Mecanismos de Segurança em Hospedagem Compartilhada

### 3.1 Isolamento entre Contas (chroot, open\_basedir, CageFS)

| **Mecanismo**              | **Descrição**                                                                      | **Eficácia**                                            |
| -------------------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------- |
| **open\_basedir**          | Diretiva PHP que restringe acesso a arquivos a diretórios específicos              | Moderada (pode ser contornada em algumas configurações) |
| **chroot**                 | Restringe o sistema de arquivos visível por um processo                            | Alta (amplamente utilizado)                             |
| **CageFS (CloudLinux)**    | Cria sistema de arquivos virtual por usuário, escondendo arquivos de outras contas | Alta (padrão em hospedagens modernas)                   |
| **PHP-FPM pools isoladas** | Cada conta executa PHP em processos separados                                      | Alta (prevê interferência entre contas)                 |

### 3.2 Proteção contra Ataques Cruzados

| **Ameaça**                       | **Descrição**                                                            | **Mitigação**                                          |
| -------------------------------- | ------------------------------------------------------------------------ | ------------------------------------------------------ |
| **Cross-Site Contamination**     | Malware em um site acessa arquivos de outros sites                       | open\_basedir, CageFS, permissões de arquivo adequadas |
| **Symlink Attacks**              | Links simbólicos maliciosos que apontam para diretórios de outras contas | Desabilitar `symlinks` no Apache, CageFS               |
| **MySQL Injection entre contas** | Script malicioso acessa banco de dados de outra conta                    | Privilégios MySQL separados por conta                  |

### 3.3 Firewalls de Aplicação Web (WAF) e ModSecurity

O **ModSecurity** é o WAF mais comum em hospedagens compartilhadas, protegendo contra:

* SQL Injection
* Cross-Site Scripting (XSS)
* Local File Inclusion (LFI)
* Remote File Inclusion (RFI)
* Ataques de força bruta

**Imunify360 (HostGator, muitos provedores):**

* Combina WAF, antivírus, firewall de rede
* Patch automático para vulnerabilidades conhecidas
* Proteção DDoS
* Reputação de IPs

### 3.4 Proteção contra DDoS e Abuso de Recursos

| **Proteção**        | **Descrição**                                   | **Limitação**                                   |
| ------------------- | ----------------------------------------------- | ----------------------------------------------- |
| **Cloudflare**      | CDN com proteção DDoS (frequentemente incluída) | Pode não proteger ataques L7 complexos          |
| **Rate Limiting**   | Limita requisições por IP                       | Pode bloquear usuários legítimos                |
| **Resource Limits** | CPU, memória, I/O por conta                     | Em hospedagem compartilhada, limites são baixos |
| **Imunify360**      | Proteção DDoS em nível de rede                  | Incluído em muitos provedores                   |

### 3.5 Antivírus e Escaneamento de Malware (ClamAV, ImunifyAV)

Os provedores escaneiam continuamente arquivos em busca de malware:

| **Ferramenta** | **Funcionalidade**                  | **Ação**                         |
| -------------- | ----------------------------------- | -------------------------------- |
| **ImunifyAV**  | Escaneamento em tempo real          | Quarentena de arquivos suspeitos |
| **ClamAV**     | Escaneamento sob demanda            | Alertas no painel de controle    |
| **SiteLock**   | Escaneamento externo (serviço pago) | Remoção de malware automatizada  |

**O que os escaneamentos detectam:**

* Backdoors e shells (webshells)
* Código PHP ofuscado
* Injeções de JavaScript malicioso
* Scripts de phishing
* Spam e envio de e-mails não autorizados

### 3.6 Autenticação e Acesso: FTP, SSH, SFTP

| **Método**              | **Segurança**                | **Disponibilidade**              |
| ----------------------- | ---------------------------- | -------------------------------- |
| **FTP**                 | Baixa (senha em texto claro) | Padrão (desabilitar se possível) |
| **SFTP (SSH)**          | Alta (criptografado)         | Disponível em planos superiores  |
| **FTPS (FTP over SSL)** | Média (criptografado)        | Disponível em alguns provedores  |
| **SSH**                 | Alta (acesso shell)          | Restrito a planos específicos    |

**Boas práticas de acesso:**

* Desabilitar FTP (usar apenas SFTP)
* Usar chaves SSH, não senhas
* Limitar IPs de acesso (se disponível)
* Alterar portas padrão (quando possível)

***

## 📀 Artefatos Forenses em Hospedagem Compartilhada

### 4.1 Logs de Acesso (HTTP)

**Localização típica:** `~/access-logs/dominio.com` ou via painel → Métricas → Raw Access Logs

**Exemplo de entrada (Common Log Format):**

```
192.168.1.100 - - [27/Mar/2025:10:30:45 -0300] "GET /wp-admin/admin-ajax.php HTTP/1.1" 200 5487 "https://site.com/wp-admin/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
```

**Campos críticos para investigação:**

| **Campo**        | **Descrição**            | **Valor Forense**             |
| ---------------- | ------------------------ | ----------------------------- |
| IP de origem     | Endereço IP do visitante | Identificar atacante          |
| Data/Hora        | Timestamp da requisição  | Timeline da invasão           |
| Método + URI     | Ação solicitada          | Identificar exploit utilizado |
| Código de status | Resposta do servidor     | Sucesso ou falha do ataque    |
| User-Agent       | Navegador/ferramenta     | Identificar scanners, bots    |

### 4.2 Logs de Erro

**Localização típica:** `~/logs/dominio.com.error.log` ou via painel → Métricas → Error Logs

**Exemplo de entrada:**

```
[27-Mar-2025 10:30:45 UTC] PHP Warning:  include(../config.php): failed to open stream: No such file or directory in /home/user/public_html/index.php on line 12
[27-Mar-2025 10:30:46 UTC] PHP Fatal error:  require_once(): Failed opening required 'wp-load.php' in /home/user/public_html/wp-admin/admin-ajax.php on line 20
```

**Valor forense:**

* Identificar tentativas de LFI/RFI (Local/Remote File Inclusion)
* Detectar plugins ou temas com erros
* Encontrar arquivos backdoor sendo executados

### 4.3 Logs de FTP/SFTP

**Localização:** `/var/log/messages` ou via painel (cPanel → FTP Connections)

**Exemplo:**

```
Mar 27 10:30:45 server proftpd[12345]: user@192.168.1.100 (192.168.1.100[192.168.1.100]) - FTP session opened
Mar 27 10:30:50 server proftpd[12345]: user@192.168.1.100 (192.168.1.100[192.168.1.100]) - FTP session closed
```

**Valor forense:**

* Acessos não autorizados a arquivos
* Upload de arquivos maliciosos
* Tentativas de força bruta

### 4.4 Logs do Painel de Controle

O painel de controle (cPanel/Plesk) registra acessos administrativos.

**cPanel Access Log:** `~/.cpanel/logs/access_log`

**Valor forense:**

* Quem acessou o painel
* Alterações de configuração
* Criação de contas, bancos de dados, e-mails

### 4.5 Logs de E-mail (Exim, Mail Logs)

**Localização:** `/var/log/exim_mainlog` ou via painel → E-mail → Delivery Reports

**Exemplo:**

```
2025-03-27 10:30:45 1tvX1k-000001-ABC => user@dominio.com R=virtual_user T=virtual_delivery
2025-03-27 10:30:46 1tvX1k-000001-ABC Completed
```

**Valor forense:**

* Envio de spam a partir da conta
* Comprometimento de contas de e-mail
* Phishing via e-mail

### 4.6 Arquivos de Configuração (.htaccess, php.ini, etc.)

| **Arquivo**     | **Localização**            | **Valor Forense**                                   |
| --------------- | -------------------------- | --------------------------------------------------- |
| `.htaccess`     | `public_html/`             | Redirecionamentos maliciosos, restrições de acesso  |
| `php.ini`       | `~/etc/` ou `public_html/` | Alterações de configuração PHP (disable\_functions) |
| `wp-config.php` | `public_html/`             | Credenciais do WordPress, pode conter backdoors     |
| `robots.txt`    | `public_html/`             | Ocultação de diretórios maliciosos                  |

**Sinais de comprometimento:**

* Redirecionamentos não autorizados
* Regras `RewriteRule` suspeitas
* `php_value auto_prepend_file` apontando para arquivo malicioso
* Alterações em `disable_functions` para permitir execução de comandos

### 4.7 Arquivos Temporários e Cache

**Localizações:**

* `~/tmp/` – diretório temporário da conta
* `~/public_html/wp-content/cache/` – cache do WordPress
* `~/public_html/wp-content/uploads/` – uploads (podem conter backdoors)

**Valor forense:**

* Arquivos temporários deixados por scanners
* Backdoors disfarçados como imagens (`shell.php.jpg`)
* Scripts de phishing armazenados em diretórios de cache

### 4.8 Backups e Snapshots

A maioria dos provedores mantém backups diários (geralmente 30 dias) .

**Localização:** Painel de controle → Backups

**Valor forense:**

* **Versões anteriores**: Permitem comparar com estado atual
* **Recuperação**: Restauração de estado não comprometido
* **Timeline**: Data do backup vs. data do comprometimento

***

## 🔬 Investigação Forense em Ambiente Compartilhado

### 5.1 Desafios Específicos do Ambiente Multi-tenant

| **Desafio**                     | **Descrição**                                 | **Estratégia de Mitigação**                             |
| ------------------------------- | --------------------------------------------- | ------------------------------------------------------- |
| **Acesso Restrito ao Servidor** | Cliente não tem acesso ao sistema operacional | Coletar evidências via painel e ferramentas disponíveis |
| **Isolamento de Evidências**    | Logs do servidor são compartilhados           | Documentar claramente a conta comprometida              |
| **Provedor como Testemunha**    | Provedor controla logs de sistema             | Solicitar logs adicionais via suporte                   |
| **Volatilidade**                | Logs podem ser rotacionados rapidamente       | Coletar evidências imediatamente                        |
| **Recursos Limitados**          | Ferramentas de análise podem ser restritas    | Utilizar scripts simples, análise offline               |

### 5.2 Metodologia de Investigação para Hospedagem

```mermaid
graph LR
    A[Identificação do Problema] --> B[Isolamento Imediato]
    B --> C[Coleta de Evidências]
    C --> D[Análise de Logs]
    D --> E[Identificação de Arquivos Maliciosos]
    E --> F[Limpeza e Restauração]
    F --> G[Análise Pós-Incidente]
    G --> H[Prevenção]
```

**Fase 1: Identificação**

* Alerta do provedor (ImunifyAV, SiteLock)
* Site desfigurado (defaced)
* Redirecionamentos suspeitos
* Envio de spam a partir da conta

**Fase 2: Isolamento Imediato**

* Alterar senhas (cPanel, FTP, MySQL, CMS)
* Suspender serviços (se necessário)
* Fazer backup antes de qualquer alteração

**Fase 3: Coleta de Evidências**

* Baixar logs completos
* Fazer backup completo dos arquivos
* Registrar data/hora do incidente

**Fase 4: Análise de Logs**

* Identificar primeira ocorrência suspeita
* Mapear IPs e padrões de ataque
* Identificar arquivos criados/modificados

**Fase 5: Identificação de Arquivos Maliciosos**

* Escanear com ferramentas (ClamAV, ImunifyAV)
* Analisar arquivos suspeitos manualmente
* Verificar backdoors e webshells

**Fase 6: Limpeza e Restauração**

* Remover arquivos maliciosos
* Restaurar backup limpo
* Atualizar CMS, plugins, temas

**Fase 7: Análise Pós-Incidente**

* Documentar vetor de invasão
* Identificar falhas de segurança
* Implementar correções

### 5.3 Coleta de Evidências via Painel de Controle

**cPanel:**

1. **Logs** → **Raw Access Logs**: Baixar logs HTTP
2. **Metrics** → **Error Log**: Visualizar logs de erro
3. **Email** → **Email Delivery Reports**: Logs de e-mail
4. **Files** → **Backup**: Criar backup completo
5. **Security** → **Virus Scanner**: Escanear com ImunifyAV

**Plesk:**

1. **Logs** → **Access/Error Logs**
2. **Statistics** → **Web Statistics**
3. **Mail** → **Mail Logs**
4. **Tools & Settings** → **Backup Manager**

### 5.4 Análise de Logs: Ferramentas e Técnicas

**Comandos básicos (se SSH disponível):**

```bash
# Buscar IP suspeito nos logs
grep "203.0.113.45" ~/access-logs/dominio.com

# Encontrar requisições POST para wp-admin
grep "POST /wp-admin" ~/access-logs/dominio.com

# Listar IPs com mais requisições
awk '{print $1}' ~/access-logs/dominio.com | sort | uniq -c | sort -nr | head -20

# Encontrar requisições com código 200 (sucesso) após falhas
grep " 404 " ~/access-logs/dominio.com | awk '{print $7}' | sort | uniq -c | sort -nr
```

**Ferramentas online:**

* **GoAccess**: Analisador de logs com interface web
* **AWStats**: Estatísticas de acesso
* **Log analyzer tools**: cPanel já inclui ferramentas básicas

### 5.5 Identificação de Malware em Sites

**Sinais comuns de arquivos maliciosos:**

| **Sinal**                       | **Exemplo**                                  | **Ação**               |
| ------------------------------- | -------------------------------------------- | ---------------------- |
| **Arquivos com data recente**   | Arquivo criado no dia do incidente           | Verificar conteúdo     |
| **Nomes suspeitos**             | `wp-ajax.php`, `shell.php`, `xmlrpc.php.bak` | Analisar código        |
| **Funções ofuscadas**           | `base64_decode`, `eval`, `gzinflate`         | Indicativo de backdoor |
| **Permissões anômalas**         | Arquivo com 777 (todos podem escrever)       | Revisar permissões     |
| **Arquivos em locais incomuns** | `uploads/shell.php`                          | Remover imediatamente  |

**Comandos para encontrar arquivos maliciosos:**

```bash
# Encontrar arquivos modificados nos últimos 3 dias
find ~/public_html -type f -mtime -3 -ls

# Encontrar arquivos PHP com funções suspeitas
grep -r "eval(" ~/public_html --include="*.php"
grep -r "base64_decode(" ~/public_html --include="*.php"
grep -r "gzinflate(" ~/public_html --include="*.php"

# Encontrar arquivos com permissões 777
find ~/public_html -type f -perm 777 -ls

# Encontrar arquivos suspeitos por nome
find ~/public_html -type f \( -name "*shell*" -o -name "*backdoor*" -o -name "*webshell*" \)
```

### 5.6 Cadeia de Custódia em Hospedagem

Embora ambientes de hospedagem compartilhada raramente exijam cadeia de custódia formal (diferente de investigações criminais), é importante manter registro:

| **Elemento**                 | **Registro**                     | **Forma de Registro**                  |
| ---------------------------- | -------------------------------- | -------------------------------------- |
| **Data/hora da descoberta**  | Quando o incidente foi detectado | Documento, ticket do suporte           |
| **Ações realizadas**         | Cada passo da investigação       | Log de ações, capturas de tela         |
| **Arquivos coletados**       | Logs, backups                    | Nomes de arquivos, data/hora da coleta |
| **Pessoas envolvidas**       | Quem realizou cada ação          | Identificação no documento             |
| **Solicitações ao provedor** | Comunicações com suporte         | Tickets, e-mails                       |

### 5.7 Exemplo Prático: Investigação de Site Comprometido

**Cenário:** Site WordPress exibe redirecionamento para site de spam. Cliente relata que não alterou nada.

**Fase 1: Coleta Inicial**

```bash
# 1. Backup completo via cPanel → Backup
# 2. Baixar logs de acesso dos últimos 7 dias
# 3. Verificar logs de erro
```

**Fase 2: Análise de Logs**

```bash
# Buscar por POST para wp-admin
grep "POST /wp-admin" access-logs/dominio.com | head -20

# Saída típica:
# 45.33.22.11 - - [25/Mar/2025:14:23:10] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 1234
# 45.33.22.11 - - [25/Mar/2025:14:23:15] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 5678

# Identificar IP suspeito (múltiplos POSTs para admin-ajax)
```

**Fase 3: Identificar Arquivos Modificados**

```bash
# Listar arquivos modificados na data do ataque
find ~/public_html -type f -newermt "2025-03-25" ! -newermt "2025-03-26" -ls
```

**Fase 4: Encontrar Backdoor**

```bash
# Buscar por eval em arquivos recentes
grep -r "eval(" ~/public_html/wp-content/uploads/ --include="*.php"

# Resultado: ~/public_html/wp-content/uploads/2025/03/backdoor.php
```

**Arquivo suspeito:**

```php
<?php
eval(base64_decode('ZWNobyAiSGVsbG8gV29ybGQiOw=='));
?>
```

**Fase 5: Análise do Vetor de Invasão**

* Verificar versão do WordPress, plugins, temas
* Identificar plugin com vulnerabilidade conhecida
* Buscar logs de acesso a plugins específicos

**Fase 6: Limpeza e Recuperação**

1. Remover backdoor identificado
2. Atualizar WordPress e plugins
3. Alterar todas as senhas
4. Restaurar backup limpo (se disponível)
5. Monitorar novamente

**Fase 7: Documentação**

* Data do incidente: 27/03/2025
* Vetor: Plugin vulnerável "Slider Revolution"
* IP do atacante: 45.33.22.11
* Arquivos maliciosos: `wp-content/uploads/2025/03/backdoor.php`
* Ações tomadas: Atualização do plugin, remoção de backdoor, alteração de senhas

***

## ✅ Melhores Práticas de Segurança para Sites em Hospedagem

### 6.1 Hardening de Conta e Acesso

| **Prática**                 | **Descrição**                           | **Implementação**                           |
| --------------------------- | --------------------------------------- | ------------------------------------------- |
| **Senhas fortes**           | Mínimo 12 caracteres, com complexidade  | Gerenciador de senhas (LastPass, Bitwarden) |
| **Desabilitar FTP**         | Usar SFTP sempre que possível           | Configurar no painel de controle            |
| **Chaves SSH**              | Substituir senhas por chaves            | Gerar e instalar chaves SSH                 |
| **MFA**                     | Autenticação multifator (se disponível) | Ativar no painel de controle                |
| **Limitar IPs de acesso**   | Restringir acesso a IPs confiáveis      | Configurar no .htaccess ou firewall         |
| **Remover contas inativas** | Excluir usuários que não utilizam mais  | Revisar periodicamente                      |

### 6.2 Segurança de Aplicações Web (CMS)

| **Prática**                        | **Descrição**                               | **WordPress**                     | **Outros CMS**              |
| ---------------------------------- | ------------------------------------------- | --------------------------------- | --------------------------- |
| **Manter atualizado**              | Últimas versões de CMS, plugins, temas      | Core, plugins, temas              | Atualizações regulares      |
| **Remover software não utilizado** | Excluir plugins/temas inativos              | Desinstalar, não apenas desativar | Mesmo princípio             |
| **Logins seguros**                 | Proteger área administrativa                | 2FA, limitar tentativas           | Wordfence, iThemes Security |
| **Backups regulares**              | Mínimo diário, armazenados fora do servidor | UpdraftPlus, BackupBuddy          | Exportação manual           |
| **Escaneamento de malware**        | Ferramentas de monitoramento contínuo       | Wordfence, Sucuri                 | ImunifyAV                   |

### 6.3 Backups e Recuperação

**Estratégia de backup em 3-2-1:**

* **3** cópias dos dados
* **2** mídias diferentes
* **1** cópia offline (fora do servidor)

**Implementação:**

| **Local**                 | **Frequência** | **Retenção**         |
| ------------------------- | -------------- | -------------------- |
| Backup do provedor        | Diário         | 30 dias (geralmente) |
| Backup manual via painel  | Semanal        | 3 meses              |
| Backup local (computador) | Mensal         | Indefinido           |

### 6.4 Monitoramento e Alertas

| **Monitoramento**           | **Ferramenta**              | **Ação ao Alertar**               |
| --------------------------- | --------------------------- | --------------------------------- |
| **Disponibilidade do site** | Uptime Robot, Pingdom       | Verificar servidor imediatamente  |
| **Alterações de arquivos**  | Wordfence, ImunifyAV        | Analisar arquivo modificado       |
| **Tentativas de login**     | Wordfence, Security Logs    | Bloquear IP após múltiplas falhas |
| **Atividades suspeitas**    | Logs de acesso, ModSecurity | Investigar padrões de ataque      |

### 6.5 Checklist de Segurança para Sites

**Pré-implantação:**

* [ ] Usar senhas fortes e diferentes para cada serviço
* [ ] Habilitar autenticação multifator (MFA)
* [ ] Configurar SFTP (desabilitar FTP)
* [ ] Instalar plugin de segurança (Wordfence, Sucuri)
* [ ] Configurar backups automáticos
* [ ] Remover versões de PHP antigas

**Operação contínua:**

* [ ] Atualizar CMS, plugins, temas semanalmente
* [ ] Escanear site com ferramentas de malware
* [ ] Verificar logs de acesso mensalmente
* [ ] Testar restauração de backup
* [ ] Revisar contas de usuário (remover inativas)

**Resposta a incidentes:**

* [ ] Ter contato do suporte técnico anotado
* [ ] Documentar procedimentos de recuperação
* [ ] Manter backup recente offline
* [ ] Conhecer política de segurança do provedor

***

## ⚠️ Limitações e Considerações

### 7.1 O Que o Provedor NÃO Faz

| **Responsabilidade**                     | **Por que não é do provedor**                         | **O que fazer**                                    |
| ---------------------------------------- | ----------------------------------------------------- | -------------------------------------------------- |
| **Atualizar seu CMS**                    | Provedor não gerencia seu código                      | Automatizar atualizações via painel                |
| **Corrigir vulnerabilidades de plugins** | Plugins são de terceiros                              | Manter plugins atualizados, remover não utilizados |
| **Limpar malware do site**               | Provedor pode isolar, mas não limpar                  | Contratar serviço de limpeza (Sucuri, etc.)        |
| **Restaurar backup antigo**              | Retenção limitada (geralmente 30 dias)                | Manter backups próprios                            |
| **Proteger contra falhas humanas**       | Alterações acidentais são responsabilidade do cliente | Manter backups, versionamento                      |

### 7.2 Quando Migrar para VPS ou Dedicado

| **Indicador**             | **Hospedagem Compartilhada** | **VPS**                | **Dedicado**       |
| ------------------------- | ---------------------------- | ---------------------- | ------------------ |
| **Recursos**              | Limitados, compartilhados    | Garantidos, reservados | Totais, exclusivos |
| **Isolamento**            | Mínimo                       | Bom                    | Total              |
| **Acesso root**           | Não                          | Sim                    | Sim                |
| **Controle de segurança** | Limitado                     | Alto                   | Total              |
| **Custo**                 | Baixo                        | Médio                  | Alto               |

**Sinais para migrar:**

* Site com crescimento significativo de tráfego
* Necessidade de instalar software específico
* Requisitos de conformidade (PCI-DSS, etc.)
* Múltiplos incidentes de segurança
* Necessidade de acesso SSH completo

***

## 📚 Referências e Ferramentas

### Documentação dos Provedores

| **Provedor**   | **Documentação de Segurança**                             |
| -------------- | --------------------------------------------------------- |
| **HostGator**  | [Security Center](https://www.hostgator.com/security)     |
| **GoDaddy**    | [Security & SSL](https://www.godaddy.com/security)        |
| **cPanel**     | [Security Guide](https://docs.cpanel.net/security/)       |
| **CloudLinux** | [CageFS Documentation](https://www.cloudlinux.com/cagefs) |

### Ferramentas de Segurança para Sites

| **Ferramenta**  | **Função**                            | **Disponibilidade** |
| --------------- | ------------------------------------- | ------------------- |
| **Wordfence**   | Firewall + scanner para WordPress     | Gratuito/Pago       |
| **Sucuri**      | Scanner, limpeza de malware, firewall | Pago                |
| **Imunify360**  | Segurança integrada para servidores   | Provedor            |
| **ClamAV**      | Antivírus open-source                 | CLI                 |
| **ModSecurity** | WAF                                   | Servidor            |
| **Cloudflare**  | CDN + WAF + DDoS                      | Gratuito/Pago       |

### Ferramentas de Análise de Logs

| **Ferramenta**   | **Função**                    | **Plataforma**   |
| ---------------- | ----------------------------- | ---------------- |
| **GoAccess**     | Analisador de logs interativo | Linux, macOS     |
| **AWStats**      | Estatísticas de acesso        | cPanel, servidor |
| **Log Analyzer** | Interface para logs           | cPanel           |
| **grep/awk/sed** | Ferramentas CLI               | Linux            |

### Comunidade e Treinamento

* [WordPress Security](https://wordpress.org/support/article/hardening-wordpress/)
* [OWASP Top 10](https://owasp.org/www-project-top-ten/)
* [Sucuri Blog](https://blog.sucuri.net/)
* [cPanel Security Advisor](https://docs.cpanel.net/knowledge-base/security/security-advisor/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://0xmorte.gitbook.io/bibliadopentestbr/conceitos/ambientes/hospedagem-integrada.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
