Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Ferramentas/GitHubGitHub/gensecaihq/react2shell-scanner
Vulnerability ScannersContainer SecurityCode AnalysisWeb SecurityDevSecOpsSecret DetectionSupply Chain Security
GitHubgensecaihq/react2shell-scanner

react2shell-scanner

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Security scanner for CVE-2025-55182 - Critical RCE vulnerability in React Server Components. Scan npm/pnpm/yarn lockfiles, Docker images, SBOMs, and live URLs. Auto-fix, SARIF output, GitHub Actions, Vercel integration, and runtime protection middleware.

Ver RepositórioSite
597há 8 mesesRevisado pelo Kitploit

react2shell-guard

Scanner de segurança para CVE-2025-55182 - uma vulnerabilidade crítica (CVSS 10.0) de Execução Remota de Código não autenticada nos Componentes do Servidor React.

⚠️ AVISO

Este é um scanner de segurança, NÃO uma ferramenta de exploração. Foi projetado para ajudar desenvolvedores e equipes de segurança a identificar dependências vulneráveis em seus projetos.

Este é um projeto de código aberto movido pela comunidade fornecido "COMO ESTÁ" sem garantia de qualquer tipo, expressa ou implícita. Os autores e contribuidores não são responsáveis por quaisquer danos ou incidentes de segurança decorrentes do uso desta ferramenta.

Use por sua conta e risco. Sempre verifique os achados manualmente e siga as políticas de segurança da sua organização. Se você descobrir quaisquer problemas, bugs ou tiver sugestões, por favor contribua para ajudar a melhorar o projeto para todos.

🤝 PROCURAM-SE CONTRIBUIDORES

Este projeto está ativamente procurando testadores e contribuidores! Se você deseja reportar bugs, sugerir funcionalidades, melhorar a documentação ou enviar código - todas as contribuições são bem-vindas. Confira nosso Guia de Contribuição para começar.

Agradecimentos

Este projeto existe para ajudar a comunidade a responder ao CVE-2025-55182. Agradecemos e reconhecemos:

  • Lachlan Davidson (react2shell.com) - Por descobrir e divulgar responsavelmente a vulnerabilidade dos Componentes do Servidor React (CVE-2025-55182) em 29 de novembro de 2025. A comunidade de segurança deve-lhe gratidão por sua diligência em identificar essa falha crítica e trabalhar com as equipes do React e Next.js para garantir que patches estivessem disponíveis. Seus esforços ajudaram a proteger inúmeros aplicativos e usuários em todo o mundo. Veja sua PoC original para detalhes técnicos.

Início Rápido

1. Escaneamento Instantâneo (Sem Instalação)

A maneira mais rápida de verificar se seu projeto está vulnerável:```bash npx react2shell-guard .

root@kitploit:~
É isso! Isso irá escanear seu diretório atual e mostrar resultados imediatamente.

### 2. Escanear um Projeto Específico```bash
npx react2shell-guard /path/to/your/project

3. Correção Automática de Vulnerabilidades

Encontrou vulnerabilidades? Corrija-as automaticamente:```bash

Preview what will be changed

npx react2shell-guard fix --dry-run

Apply fixes

npx react2shell-guard fix

Apply fixes and reinstall dependencies

npx react2shell-guard fix --install

root@kitploit:~
### 4. Escanear URLs Ativas

Verifique se uma aplicação implantada está vulnerável:```bash
npx react2shell-guard scan-url https://your-app.com

5. Verifique se o Patch Foi Aplicado

Confirme se a correção implantada está funcionando:```bash npx react2shell-guard verify-patch https://your-app.com

root@kitploit:~
### 6. Digitalizar Imagens de Contêiner

Verifique se suas imagens Docker contêm pacotes vulneráveis:```bash
npx react2shell-guard scan-image myapp:latest

7. Criar PR de correção (GitHub)

Crie automaticamente um PR do GitHub para corrigir vulnerabilidades:```bash npx react2shell-guard create-pr --dry-run # Preview npx react2shell-guard create-pr # Create PR

root@kitploit:~
---

## O que é CVE-2025-55182?

Em 29 de novembro de 2025, o pesquisador de segurança Lachlan Davidson descobriu e divulgou de forma responsável uma vulnerabilidade crítica nos React Server Components. A falha existe na forma como o React decodifica payloads enviados para endpoints de React Server Function, permitindo que atacantes não autenticados obtenham execução remota de código em servidores afetados sem qualquer interação do usuário.

CVE-2025-55182 é classificada como CVSS 10.0 (Crítica) e afeta React Server Components (RSC) e frameworks que utilizam o protocolo RSC "Flight".

**Pacotes Afetados:**
- `react-server-dom-webpack` 19.0.0, 19.1.0-19.1.1, 19.2.0
- `react-server-dom-parcel` (mesmas versões)
- `react-server-dom-turbopack` (mesmas versões)
- `next` 15.0.0-15.0.4, 15.1.0-15.1.8, 15.2.0-15.2.5, 15.3.0-15.3.5, 15.4.0-15.4.7, 15.5.0-15.5.6, 16.0.0-16.0.6

**Mais Informações:**
- [Aviso de Segurança do React](https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components)
- [Pesquisa da Wiz](https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182)

---

## Instalação (Opcional)

Para uso frequente, instale globalmente:```bash
npm install -g react2shell-guard

Depois use sem npx:```bash react2shell-guard .

root@kitploit:~
---

## Guia de Uso

### Escaneamento Básico```bash
# Scan current directory
react2shell-guard .

# Scan specific directory
react2shell-guard /path/to/project

# Scan and ignore certain paths
react2shell-guard . --ignore-path "examples/**" "test/**"

Formatos de Saída```bash

Human-readable text (default)

react2shell-guard .

JSON output (for scripting)

react2shell-guard . --json

SARIF output (for GitHub Security tab)

react2shell-guard . --sarif

HTML report (standalone, shareable)

react2shell-guard . --html report.html

root@kitploit:~
### Opções da CLI

| Opção | Descrição |
|--------|-------------|
| `--json` | Gerar resultados como JSON |
| `--sarif` | Gerar resultados como SARIF 2.1.0 |
| `--html <file>` | Gerar relatório HTML independente |
| `--no-exit-on-vuln` | Não sair com código 1 quando vulnerabilidades forem encontradas |
| `--ignore-path <patterns>` | Caminhos a ignorar (ex.: `examples/**`) |
| `--debug` | Ativar saída de depuração |

### Códigos de Saída

| Código | Significado |
|------|---------|
| `0` | Nenhuma vulnerabilidade encontrada |
| `1` | Vulnerabilidades detectadas |
| `2+` | Erro fatal |

## Varredura de URL ao Vivo

Varra endpoints ativos para detectar se são vulneráveis:```bash
# Scan a single URL
react2shell-guard scan-url https://example.com

# Batch scan from a file (one URL per line)
react2shell-guard scan-url urls.txt --list

# With options
react2shell-guard scan-url https://example.com --timeout 5000 --json

Como Funciona o Escaneamento de URL ao Vivo

O scanner usa impressão digital passiva para detectar endpoints vulneráveis do React Server Components sem explorar a vulnerabilidade:

  1. Requisição de Sonda: Envia uma requisição POST elaborada simulando uma chamada de Ação do Servidor RSC com um payload mínimo:

    • Usa tipo de conteúdo multipart/form-data com estrutura de dados semelhante ao RSC
    • Inclui cabeçalho Next-Action para acionar o processamento de Ações do Servidor
  2. Análise de Resposta: Analisa a resposta HTTP em busca de assinaturas de vulnerabilidade:

    • Verifica o código de status HTTP 500 (resposta de erro)
    • Combina o corpo da resposta com padrões de erro do protocolo RSC Flight:
      • ^[0-9]+:E{ - formato de erro do protocolo RSC Flight
      • "digest":"...RSC - digest do RSC em respostas de erro
      • ReactServerComponentsError - nomes de classes de erro do React
      • text/x-component.*error - tipo de conteúdo de erro do componente
  3. Não Destrutivo: Isso é puramente um mecanismo de detecção - ele não executa nenhum payload malicioso nem explora a vulnerabilidade. A sonda usa dados benignos que acionam respostas de erro em servidores vulneráveis, mas não causam danos.

Nota: Uma detecção positiva significa que o servidor está executando uma versão vulnerável e retornou uma assinatura de erro específica do RSC. Isso NÃO significa que o servidor foi explorado.

Opções do Scanner de URL

Verificação de Patch

Verificar se um alvo foi corrigido contra a vulnerabilidade:```bash

Verify patch status (runs multiple scans for accuracy)

react2shell-guard verify-patch https://example.com

With JSON output

react2shell-guard verify-patch https://example.com --json

root@kitploit:~
### Como a Verificação de Patches Funciona

A verificação de patches realiza **múltiplas varreduras consecutivas** (padrão: 3) com breves atrasos entre elas para garantir detecção precisa:

1. **Múltiplas Sondagens**: Executa a mesma verificação de impressão digital passiva 3 vezes com atrasos de 500ms
2. **Pontuação de Confiança**:
   - **Alta confiança**: 2+ varreduras bem-sucedidas com resultados consistentes
   - **Confiança média**: 1 varredura bem-sucedida com resultado conclusivo
   - **Baixa confiança**: Todas as varreduras falharam ou resultados inconclusivos
3. **Classificação de Resultados**:
   - **PATCHED**: Nenhuma assinatura de vulnerabilidade detectada em todas as varreduras bem-sucedidas
   - **VULNERABLE**: Assinatura de vulnerabilidade detectada em uma ou mais varreduras
   - **Inconclusivo**: Resultados mistos ou todas as varreduras falharam

Esta abordagem de múltiplas varreduras reduz falsos positivos de problemas de rede transitórios e proporciona maior confiança no status do patch.

### Opções de Verificação

| Opção | Descrição |
|--------|-------------|
| `--timeout <ms>` | Tempo limite de requisição em milissegundos (padrão: 10000) |
| `--json` | Exibir resultados como JSON |
| `--skip-ssl-verify` | Ignorar verificação de certificado SSL |

## Varredura de Imagens de Contêiner

Varra imagens de contêiner Docker/OCI em busca de pacotes vulneráveis:```bash
# Scan a local or remote image
react2shell-guard scan-image myapp:latest

# Scan from a registry
react2shell-guard scan-image registry.example.com/myapp:v1.0

# Skip pulling (use local image only)
react2shell-guard scan-image myapp:latest --skip-pull

# With JSON output
react2shell-guard scan-image myapp:latest --json

# With SARIF output
react2shell-guard scan-image myapp:latest --sarif

Opções do Scanner de Contêineres

Requisitos:

  • Docker deve estar instalado e em execução
  • Espaço em disco suficiente para extração de imagem

Integração de Implantação do Vercel

Bloqueie implantações vulneráveis antes que cheguem à produção:```bash

Run as part of your build command

react2shell-guard vercel-check

In package.json

{ "scripts": { "vercel-build": "react2shell-guard vercel-check && next build" } }

Or in vercel.json

{ "buildCommand": "npx react2shell-guard vercel-check && npm run build" }

root@kitploit:~
### Vercel Check Options

| Opção | Descrição |
|--------|-------------|
| `--no-fail` | Avisar, mas não falhar a construção em vulnerabilidades |
| `--ignore-path <patterns>` | Caminhos a ignorar (padrões glob) |
| `--debug` | Ativar saída de depuração |

## Automação de PR no GitHub

Criar automaticamente um pull request para corrigir vulnerabilidades:```bash
# Preview what will be done
react2shell-guard create-pr --dry-run

# Create branch and PR
react2shell-guard create-pr

# Create branch but don't push/create PR
react2shell-guard create-pr --no-push

# Custom branch name
react2shell-guard create-pr --branch fix/security-update

Opções de Criação de PR

OpçãoDescrição
--branch <name>Nome do branch para a correção (padrão: fix/cve-2025-55182)
--dry-runMostra o que seria feito sem aplicar as alterações
--no-pushCria branch e commits mas não faz push ou cria PR

Requisitos:

  • GitHub CLI (gh) deve estar instalado e autenticado
  • Deve estar em um repositório git com um remote

Exemplo de Saída```

react2shell-guard - CVE-2025-55182 Scanner ──────────────────────────────────────────────────

Scanned 1 project(s)

✗ my-app [VULNERABLE] Path: /path/to/my-app Framework: nextjs v15.2.1 App Router: Yes (RSC enabled)

Vulnerabilities found: - react-server-dom-webpack @ 19.1.0 Upgrade to: 19.1.2 Advisory: https://react.dev/blog/2025/12/03/... - next @ 15.2.1 Upgrade to: 15.2.6 Advisory: https://react.dev/blog/2025/12/03/...

────────────────────────────────────────────────── VULNERABLE - Action required! Upgrade affected packages to patched versions immediately.

root@kitploit:~
## Integração com GitHub Actions

> **Nota:** Lançamos ativamente novas versões com padrões de deteção e correções melhorados. Use `@v1` para versões estáveis ou `@latest` para a versão mais recente.

### Ação do GitHub Marketplace

A forma mais fácil de integrar é usando a nossa Ação oficial do GitHub:```yaml
name: Security Scan

on: [push, pull_request]

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Scan for CVE-2025-55182
        uses: gensecaihq/react2shell-scanner@v1
        with:
          path: '.'
          fail-on-vuln: true

Configuração Completa (SARIF + Comentários de PR)```yaml

name: Security Scan

on: [push, pull_request]

jobs: scan: runs-on: ubuntu-latest permissions: security-events: write # For SARIF upload pull-requests: write # For PR comments

root@kitploit:~
steps:
  - uses: actions/checkout@v4

  - name: Scan for CVE-2025-55182
    uses: gensecaihq/react2shell-scanner@v1
    with:
      path: '.'
      format: sarif
      fail-on-vuln: true
      upload-sarif: true        # Upload to GitHub Security tab
      add-pr-comment: true      # Comment on PRs with results
      ignore-paths: 'examples/**,test/fixtures/**'
root@kitploit:~
### Entradas da Ação

| Entrada | Descrição | Padrão |
|---------|-----------|--------|
| `path` | Caminho para escanear | `.` |
| `scan-type` | Tipo de varredura: `repo`, `sbom`, `container` | `repo` |
| `format` | Formato de saída: `text`, `json`, `sarif` | `text` |
| `fail-on-vuln` | Falhar se vulnerabilidades forem encontradas | `true` |
| `upload-sarif` | Enviar SARIF para o GitHub Security | `false` |
| `add-pr-comment` | Adicionar comentário no PR com resultados | `false` |
| `ignore-paths` | Caminhos separados por vírgula para ignorar | `''` |
| `sbom-file` | Caminho do arquivo SBOM (quando scan-type é sbom) | `''` |
| `container-image` | Imagem Docker (quando scan-type é container) | `''` |

### Saídas da Ação

| Saída | Descrição |
|-------|-----------|
| `vulnerable` | Indica se vulnerabilidades foram encontradas (`true`/`false`) |
| `findings-count` | Número de pacotes vulneráveis |
| `scan-result` | Resultado completo da varredura (formato JSON) |
| `sarif-file` | Caminho para o arquivo de saída SARIF |

### Escanear Imagens de Contêiner```yaml
- name: Scan Docker image
  uses: gensecaihq/react2shell-scanner@v1
  with:
    scan-type: container
    container-image: myapp:latest

Escanear Arquivos SBOM```yaml

  • name: Scan SBOM uses: gensecaihq/react2shell-scanner@v1 with: scan-type: sbom sbom-file: sbom.json
root@kitploit:~
### Uso Manual da CLI

Se preferir usar a CLI diretamente:```yaml
- name: Setup Node.js
  uses: actions/setup-node@v4
  with:
    node-version: '20'

- name: Scan for vulnerabilities
  run: npx react2shell-guard@latest .

Gerenciadores de Pacotes Suportados

react2shell-guard detecta e analisa automaticamente lockfiles de:

  • npm - package-lock.json (formatos v2 e v3)
  • pnpm - pnpm-lock.yaml
  • yarn - yarn.lock (formatos Classic e Berry)

Funcionalidades

  • Varredura rápida - Analisa lockfiles diretamente, sem necessidade de instalar dependências
  • Suporte a monorepo - Descobre e analisa automaticamente todos os projetos
  • Detecção de frameworks - Identifica o uso de Next.js e App Router
  • Múltiplos formatos de saída - Relatórios em Texto, JSON, SARIF e HTML
  • Pronto para CI/CD - Códigos de saída e integração com GitHub Actions
  • Zero chamadas de rede - Funciona completamente offline
  • Auto-correção - Atualiza automaticamente dependências vulneráveis
  • Hooks de pre-commit - Bloqueia commits com dependências vulneráveis
  • Escaneamento de SBOM - Escaneia arquivos SBOM CycloneDX
  • Integração MCP - Suporte a assistentes de IA via Model Context Protocol
  • Proteção em tempo de execução - Middleware Express.js/Next.js para defesa em profundidade
  • Escaneamento de URL ao vivo - Escaneia aplicações implantadas em busca de vulnerabilidades
  • Escaneamento de contêineres - Escaneia imagens Docker/OCI em busca de pacotes vulneráveis
  • Integração com Vercel - Bloqueia implantações vulneráveis antes da produção
  • Automação de PR no GitHub - Cria automaticamente PRs de correção com um comando

Auto-Correção de Vulnerabilidades

Atualize automaticamente seu package.json para usar versões corrigidas:```bash

Preview changes (dry run)

react2shell-guard fix --dry-run

Apply fixes

react2shell-guard fix

Apply fixes and run npm/pnpm/yarn install

react2shell-guard fix --install

root@kitploit:~
## Pre-Commit Hooks

Instale hooks git para evitar o commit de dependências vulneráveis:```bash
# Auto-detect hook framework and install
react2shell-guard init-hooks

# Preview what would be installed
react2shell-guard init-hooks --dry-run

# Force specific hook type
react2shell-guard init-hooks --hook-type husky
react2shell-guard init-hooks --hook-type lefthook
react2shell-guard init-hooks --hook-type standalone

Estruturas de hook suportadas:

  • Husky - Anexa a .husky/pre-commit
  • Lefthook - Cria/atualiza lefthook.yml
  • Standalone - Cria .git/hooks/pre-commit

O hook bloqueará commits quando package.json contiver dependências vulneráveis e sugerirá executar react2shell-guard fix para remediar.

Varredura de SBOM

Escaneie arquivos SBOM CycloneDX em busca de vulnerabilidades:```bash

Scan a CycloneDX SBOM

react2shell-guard scan-sbom bom.json

With JSON output

react2shell-guard scan-sbom bom.json --json

With SARIF output

react2shell-guard scan-sbom bom.json --sarif

root@kitploit:~
## MCP Server (Integração de Assistente de IA)

Inicie o servidor Model Context Protocol para integração de assistente de IA:```bash
react2shell-guard mcp-server

Ferramentas MCP disponíveis:

  • scan_repo - Verificar um repositório em busca de vulnerabilidades
  • scan_sbom - Verificar um arquivo SBOM CycloneDX

Configurar com clientes compatíveis com MCP (exemplo de configuração):```json { "mcpServers": { "react2shell-guard": { "command": "npx", "args": ["react2shell-guard", "mcp-server"] } } }

root@kitploit:~
## Middleware de Proteção em Tempo de Execução

Middleware de defesa em profundidade que detecta e bloqueia tentativas de exploração da CVE-2025-55182 em tempo de execução.

### Express.js```typescript
import express from 'express';
import { createExpressMiddleware } from 'react2shell-guard/middleware';

const app = express();

// Add raw body parser for RSC payloads
app.use(express.raw({ type: 'text/x-component' }));
app.use(express.json());

// Add protection middleware
app.use(createExpressMiddleware({
  action: 'block',  // 'block' | 'log' | 'alert'
  onAlert: (result, req) => {
    // Send to your alerting system (Slack, PagerDuty, etc.)
    console.error('CVE-2025-55182 exploit attempt:', result);
  },
  skipPaths: ['/health', '/metrics'],
}));

Next.js```typescript

// middleware.ts import { withReact2ShellGuard } from 'react2shell-guard/middleware';

export const middleware = withReact2ShellGuard({ action: 'block', rscEndpointsOnly: true, // Only check RSC endpoints (recommended) });

export const config = { matcher: ['/((?!_next/static|_next/image|favicon.ico).*)'], };

root@kitploit:~
**Padrões detectados:**
- Injeção de função serializada
- Tentativas de poluição de protótipo
- Referências de módulo malformadas
- Adulteração de ação do servidor
- Payloads maliciosos codificados
- Abuso de formato de streaming RSC

## Uso da API```typescript
import { scan } from 'react2shell-guard';

const result = scan({
  path: '/path/to/project',
  ignorePaths: ['examples/**'],
  debug: false,
});

console.log(result.vulnerable); // boolean
console.log(result.projects);   // ProjectResult[]

Esquema de Saída JSON```json

{ "cve": "CVE-2025-55182", "vulnerable": true, "scanTime": "2025-12-04T10:30:00Z", "projects": [ { "name": "my-app", "path": "/path/to/my-app", "framework": { "type": "nextjs", "version": "15.2.1", "appRouterDetected": true }, "findings": [ { "package": "react-server-dom-webpack", "currentVersion": "19.1.0", "fixedVersion": "19.1.2", "severity": "critical", "advisoryUrl": "https://..." } ], "vulnerable": true } ], "errors": [] }

root@kitploit:~
## Remediação

**Correção automática (recomendada):**```bash
react2shell-guard fix --install

Atualização manual - Pacotes React:```bash npm install [email protected] # or 19.0.1, 19.2.1

root@kitploit:~
**Atualização manual - Next.js:**```bash
npm install [email protected]  # or other patched version for your release line

Versões fixas do Next.js por linha de lançamento:

  • 15.0.x → 15.0.5
  • 15.1.x → 15.1.9
  • 15.2.x → 15.2.6
  • 15.3.x → 15.3.6
  • 15.4.x → 15.4.8
  • 15.5.x → 15.5.7
  • 16.0.x → 16.0.7

Desenvolvimento```bash

Install dependencies

npm install

Build

npm run build

Run tests

npm test

Run in development mode

npm run dev

root@kitploit:~
## Licença

MIT
Baixar ferramenta
OpçãoDescrição
--listTratar o alvo como um arquivo contendo URLs
--threads <n>Número de threads concorrentes (padrão: 10)
--timeout <ms>Timeout da requisição em milissegundos (padrão: 10000)
--jsonExibir resultados como JSON
--skip-ssl-verifyPular verificação de certificado SSL
--verboseMostrar todos os resultados, incluindo hosts não vulneráveis
OpçãoDescrição
--timeout <ms>Tempo limite de operação em milissegundos (padrão: 120000)
--skip-pullIgnorar a extração da imagem do registro (usar apenas local)
--jsonSaída dos resultados como JSON
--sarifSaída dos resultados como SARIF 2.1.0
--no-exit-on-vulnNão sair com código 1 quando vulnerabilidades forem encontradas
--debugAtivar saída de depuração