# Relatório de Segurança 02 — Blocklist de extensões perigosas (uploads)

- Data: 2026-06-10
- Incidente relacionado: comprometimento via escrita de scripts em `public/`
- Severidade: Média (defesa em profundidade)
- Status: Concluído

## 1. Contexto

O `app/Helpers/FileUploadHelper.php` mantém uma blocklist (`DANGEROUS_EXTENSIONS`) usada para rejeitar uploads com extensões executáveis, independente da whitelist. A lista anterior não cobria variações de PHP/handlers que o Apache pode executar e que o novo `.htaccess` passou a bloquear.

## 2. Alteração aplicada

`app/Helpers/FileUploadHelper.php` — `DANGEROUS_EXTENSIONS` ampliada com:

- `php6`, `php7`, `php8`
- `phps`, `phar`, `pht`, `inc`, `shtml`
- `htaccess`

Isso alinha a validação de upload da aplicação com a regra do `public/.htaccess` (Relatório 01), garantindo coerência entre as camadas: o arquivo é rejeitado no upload e, mesmo que escrito, não é executado pelo Apache.

## 3. Observações

- A detecção considera extensões duplas (ex.: `arquivo.phar.pdf`) e magic bytes (`<?php`, `MZ`, ELF), já presentes no helper.
- Controllers que ainda não usam o helper são tratados no Relatório 05 (padronização de uploads com magic bytes).

## 4. Verificação

- `php -l app/Helpers/FileUploadHelper.php`: sem erros.

## 5. Arquivos alterados

- `app/Helpers/FileUploadHelper.php`
