
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
# O arquivo gerado conterá:
# - Entradas de path traversal (../)
# - Caminhos absolutos (/tmp/, C:\)
# - Entradas de symlink
# - Nomes de caminho longos
# - Arquivos executáveis
NODE_ENV=productionFROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
version: '3.8'
services:
se7enslip:
build: .
ports:
- "3000:3000"
environment:
- NODE_ENV=production
volumes:
- ./uploads:/app/uploads
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para detalhes.
Apenas para Fins Educacionais: Esta ferramenta foi projetada para pesquisa e educação em segurança. Os arquivos ZIP de teste gerados contêm padrões maliciosos simulados para fins de demonstração. Não use esta ferramenta para atividades maliciosas. Sempre garanta que você tenha autorização adequada antes de testar ferramentas de segurança.
🔒 Mantenha-se Seguro, Mantenha-se Atualizado
Baixar 7-Zip Mais Recente | Reportar Problemas | Contato de Segurança