
Um scanner e testador do CVE-2025-11001 do 7-zip
Uma aplicação web impressionante e interativa que demonstra e ajuda a detectar a vulnerabilidade crítica CVE-2023-52169 de symlink traversal em arquivos 7-Zip.
../, ..\\)/, C:\\)Clone o repositório
git clone <repository-url>
cd Se7enSlip
Instale as dependências
npm install
Inicie o servidor de desenvolvimento
npm start
Abra seu navegador
Navegue para http://localhost:3000
# Desenvolvimento com recarga automática
npm run dev
# Criar um arquivo ZIP de teste vulnerável
npm run create-test-zip
# Build de produção
npm run build
A vulnerabilidade permite que atacantes criem arquivos ZIP maliciosos que, quando extraídos por versões vulneráveis do 7-Zip, podem gravar arquivos fora do diretório de extração pretendido. Isso é alcançado através de:
../ para escapar da pasta de extração┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ ZIP Malicioso │───▶│ 7-Zip Vulnerável│───▶│ Comprometimento │
│ │ │ < v23.01 │ │ do Sistema │
│ • ../../../etc/ │ │ │ │ • Sobrescrita │
│ • /tmp/evil.sh │ │ Falha ao validar│ │ de arquivos │
│ • Symlinks │ │ caminhos de │ │ • Execução de │
│ │ │ extração │ │ código │
└─────────────────┘ └─────────────────┘ │ • Escalação de │
│ privilégios │
└─────────────────┘
POST /api/scanEnvie e escaneie um arquivo ZIP em busca de vulnerabilidades.
Requisição: Dados de formulário multipart com campo zipfile
Resposta:
{
"filename": "test.zip",
"totalEntries": 10,
"suspicious": [...],
"riskLevel": "HIGH",
"recommendations": [...],
"metadata": {
"totalSize": 12345,
"suspiciousPatterns": {...}
}
}
GET /api/vulnerability-infoRecupere informações detalhadas sobre o CVE-2023-52169.
Resposta:
{
"cve": "CVE-2023-52169",
"cvssScore": 7.8,
"downloadUrl": "https://www.7-zip.org/download.html",
"references": [...]
}
POST /api/create-test-zipGere um arquivo ZIP de teste contendo vários padrões de vulnerabilidade.
Resposta: Download de arquivo ZIP com entradas maliciosas para teste
public/css/
├── styles.css # Folha de estilos principal com propriedades CSS personalizadas
├── animations/ # Keyframes e transições de animação
├── components/ # Estilos específicos de componentes
└── responsive/ # Media queries e design responsivo
:root {
--primary: #00ff88; /* Verde neon */
--secondary: #ff4757; /* Vermelho de perigo */
--accent: #3742fa; /* Azul elétrico */
--bg-primary: #0a0a0a; /* Preto profundo */
--text-primary: #ffffff; /* Branco puro */
}
PORT=3000 # Porta do servidor
NODE_ENV=production # Modo de ambiente
UPLOAD_LIMIT=52428800 # Limite de tamanho de arquivo (50MB)
RATE_LIMIT_WINDOW=900000 # Janela de limitação de taxa (15min)
RATE_LIMIT_MAX=50 # Máximo de requisições por janela
O aplicativo inclui múltiplas camadas de segurança:
// Content Security Policy
helmet({
contentSecurityPolicy: {
directives: {
defaultSrc: ["'self'"],
styleSrc: ["'self'", "'unsafe-inline'"],
// ... diretivas adicionais
}
}
})
# Crie um ZIP de teste com vulnerabilidades
npm run create-test-zip