Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
PunchingBag-for-React2Shell — App Next.js intenzionalmente vulnerabile per la ricerca sulla sicurezza di CVE-2025-55182 e sfide CTF | Kitploit
Strumenti/GitHubGitHub/machine-farmer/punchingbag-for-react2shell
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebCTFPenetration TestingApprendimento e FormazioneRed TeamingStrumento di Accesso RemotoLab e Pratica
GitHubmachine-farmer/punchingbag-for-react2shell

PunchingBag-for-React2Shell

App Next.js intenzionalmente vulnerabile per la ricerca sulla sicurezza di CVE-2025-55182 e sfide CTF

Vedi Repository
1138 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

🥊 PunchingBag - Piattaforma di Ricerca sulla Sicurezza CVE-2025-55182

Next.js React Docker License CVE PunchingBag Platform

⚠️ SOLO A SCOPO EDUCATIVO: Questa è un'applicazione deliberatamente vulnerabile progettata per ricerche di sicurezza autorizzate e sfide CTF. NON utilizzare queste tecniche su sistemi non autorizzati.

Un'applicazione Next.js 15.1.6 deliberatamente vulnerabile che dimostra CVE-2025-55182 (React2Shell) - una vulnerabilità critica di Remote Code Execution nei React Server Components. Progettata per ricercatori di sicurezza, penetration tester e studenti per praticare tecniche di sfruttamento in un ambiente sicuro e isolato.


📋 Indice

  • Informazioni su CVE-2025-55182
  • Caratteristiche
  • Prerequisiti
  • Installazione
  • Utilizzo
  • Sfide CTF
  • Guida allo Sfruttamento
  • Struttura del Progetto
  • Avviso di Sicurezza
  • Contribuire
  • Licenza
  • Riconoscimenti

🔍 Informazioni su CVE-2025-55182

CVE-2025-55182, noto anche come React2Shell, è una vulnerabilità critica di Remote Code Execution (RCE) che colpisce i React Server Components in Next.js.

Dettagli della Vulnerabilità

  • CVE ID: CVE-2025-55182
  • Tipo: Remote Code Execution (RCE)
  • CVSS Score: 10.0 (Critico)
  • Versioni Affette: Next.js 15.1.6 e precedenti con React Server Components abilitati
  • Vettore di Attacco: Deserializzazione non sicura nel protocollo RSC Flight
  • Impatto: Compromissione completa del sistema, esfiltrazione dati, escalation dei privilegi

Come Funziona

La vulnerabilità deriva da una gestione impropria dei dati serializzati nelle React Server Actions. Gli aggressori possono creare payload malevoli che bypassano la validazione ed eseguono codice arbitrario sul server attraverso:

  1. Inquinamento del prototipo (prototype pollution) negli oggetti JavaScript
  2. Deserializzazione non sicura dei payload React Flight
  3. Manipolazione dei parametri delle Server Action
  4. Iniezione di header nei Server Components

✨ Caratteristiche

  • 🐳 Completamente Dockerizzato - Isolamento completo dal sistema host
  • 🎯 5 Bandiere CTF - Sfide con difficoltà progressiva
  • 🔓 Molteplici Vettori di Attacco - Server Actions, route API, bypass autenticazione
  • 📚 Risorse Educative - Suggerimenti integrati e guide allo sfruttamento
  • 🛡️ Ambiente Sicuro - Nessun rischio per i sistemi di produzione
  • 🎨 Applicazione Realistica - Tema realistico con pannello di amministrazione
  • 📊 Monitoraggio Progressi - Tieni traccia delle bandiere catturate
  • 🔧 Versioni Vulnerabili di React e Next.js - React 19.0.0, Next.js 15.1.6

🔧 Prerequisiti

Prima di iniziare, assicurati di avere installato:

  • Docker: Versione 20.10 o superiore
  • Docker Compose: Versione 2.0 o superiore
  • Git: Per clonare il repository

Verifica la tua Installazione

root@kitploit:~
docker --version
docker-compose --version
git --version

📦 Installazione

Avvio Rapido

root@kitploit:~
# 1. Clone the repository
git clone https://github.com/Machine-farmer/PunchingBag-for-React2Shell.git
cd PunchingBag-for-React2Shell

# 2. Build and run with Docker
docker-compose up --build

# 3. Access the application
# Open your browser to: http://localhost:3000

Configurazione Manuale (Senza Docker)

root@kitploit:~
# 1. Clone the repository
git clone https://github.com/Machine-farmer/punchingbag-cve-2025-55182.git
cd punchingbag-cve-2025-55182

# 2. Install dependencies
npm install

# 3. Run development server
npm run dev

# 4. Access at http://localhost:3000

⚠️ Avvertenza: La configurazione manuale senza Docker NON è raccomandata per la ricerca sulla sicurezza. Usare sempre Docker per l'isolamento.


🚀 Utilizzo

Avviare l'Ambiente

root@kitploit:~
# Start the vulnerable application
docker-compose up

# Start in detached mode (background)
docker-compose up -d

# View logs
docker-compose logs -f

Fermare l'Ambiente

root@kitploit:~
# Stop containers
docker-compose down

# Stop and remove volumes
docker-compose down -v

# Complete cleanup (removes images)
docker-compose down -v --rmi all

Accedere all'Applicazione

Una volta in esecuzione, naviga verso:

  • Homepage: http://localhost:3000
  • Dashboard: http://localhost:3000/dashboard
  • Pannello Admin: http://localhost:3000/admin

🎯 Sfide CTF

PunchingBag contiene 5 bandiere nascoste che testano diverse tecniche di sfruttamento:

BandieraSfidaDifficoltàPunti
🚩 Bandiera 1Ricognizione BaseFacile100
🚩 Bandiera 2Exploit Server ActionMedia200
🚩 Bandiera 3Bypass Accesso AdminMedia300
🚩 Bandiera 4Remote Code ExecutionDifficile400
🚩 Bandiera 5Segreti di AmbienteMedia250

Formato Bandiere

Tutte le bandiere seguono il formato: CTF{descrizione_qui}

Suggerimenti

  • Bandiera 1: Esplora la struttura dell'applicazione e la dashboard
  • Bandiera 2: Cerca Server Actions che accettano input utente
  • Bandiera 3: Controlla le variabili d'ambiente per le credenziali
  • Bandiera 4: Sfrutta la vulnerabilità RCE nella console admin
  • Bandiera 5: Estrai dati di configurazione nascosti

🔓 Guida allo Sfruttamento

Strumenti Necessari

  • Burp Suite - Intercettazione e modifica delle richieste HTTP
  • curl - Client HTTP da riga di comando per creare payload
  • Browser DevTools - Ispezione del traffico di rete
  • Postman - Test API (opzionale)

Flusso di Lavoro Base di Sfruttamento

1. Ricognizione

root@kitploit:~
# Explore the application
curl http://localhost:3000

# Check available endpoints
curl http://localhost:3000/dashboard
curl http://localhost:3000/admin

2. Sfruttamento delle Server Action

Intercetta le sottomissioni di moduli e modifica il payload:

root@kitploit:~
// Example malicious payload
{
  "name": "attacker",
  "email": "[email protected]",
  "message": "__proto__: { isAdmin: true }"
}

3. Iniezione di Header

root@kitploit:~
# Inject malicious headers
curl -X POST http://localhost:3000/api/data \
  -H "Content-Type: application/json" \
  -H "x-user-data: {\"role\":\"admin\"}" \
  -d '{"exploit": true}'

4. Accesso Admin

Controlla .env.local per le credenziali o sfrutta l'autenticazione:

root@kitploit:~
# Default admin token (intentionally weak)
Username: admin
Token: super_secret_admin_key_12345

5. Remote Code Execution

Sul componente vulnerabile, usa la funzionalità di esecuzione comandi:

root@kitploit:~
# Simulate RCE
Command: cat /flag.txt

Tecniche Avanzate

  • Inquinamento del Prototipo: Inietta proprietà __proto__
  • Creazione Payload RSC: Modifica i dati serializzati React Flight
  • Hijacking di Sessione: Manipola i token di autenticazione
  • Fuzzing API: Testa tutti gli endpoint per vulnerabilità

📁 Struttura del Progetto

root@kitploit:~
punchingbag-cve-2025-55182/
├── app/
│   ├── actions.js              # Azioni Server Vulnerabili
│   ├── layout.js               # Layout dell'applicazione
│   ├── page.js                 # Homepage con info CTF
│   ├── globals.css             # Stili globali
│   ├── admin/
│   │   └── page.js            # Pannello Admin (Bandiere 3, 4)
│   ├── dashboard/
│   │   └── page.js            # Dashboard utente (Bandiere 1, 2)
│   └── api/
│       ├── data/
│       │   └── route.js       # Endpoint API
│       └── submit/
│           └── route.js       # Endpoint sottomissione moduli
├── components/
│   ├── Logo.js                # Logo dell'applicazione
│   ├── VulnerableForm.js      # Componente form sfruttabile
│   └── UserDisplay.js         # Visualizzazione profilo utente
├── lib/
│   └── flags.js               # Gestione bandiere
├── public/
│   └── boxing-bag.png         # Icona dell'applicazione
├── .env.local                 # Variabili d'ambiente (Bandiera 5)
├── docker-compose.yml         # Configurazione Docker
├── Dockerfile                 # Definizione contenitore
├── next.config.js             # Configurazione Next.js
├── package.json               # Dipendenze
└── README.md                  # Questo file

🛡️ Avviso di Sicurezza

⚠️ IMPORTANTI ESCLUSIONI DI RESPONSABILITÀ

Questa applicazione è INTENZIONALMENTE VULNERABILE e progettata per:

✅ Usi Autorizzati:

  • Ricerca e istruzione sulla sicurezza
  • Sviluppo di competenze di penetration testing
  • Competizioni e addestramenti CTF
  • Corsi accademici in cybersecurity
  • Pratica di valutazione delle vulnerabilità

❌ Usi Proibiti:

  • Test su sistemi senza autorizzazione esplicita
  • Distribuzioni di produzione di qualsiasi tipo
  • Attacchi malevoli su sistemi reali
  • Distribuzione di strumenti di sfruttamento per scopi illegali

Conformità Legale

  • Ottieni sempre un'autorizzazione scritta prima di testare sistemi che non possiedi
  • Segui le pratiche di divulgazione responsabile per vulnerabilità reali
  • Rispetta le leggi locali e i regolamenti relativi ai test di sicurezza
  • Rispetta i termini di servizio di tutti i sistemi e piattaforme

Requisiti di Isolamento

  • Esegui SEMPRE in Docker per un corretto isolamento
  • NON esporre MAI la porta 3000 a Internet pubblico
  • Usa solo in ambienti di laboratorio controllati
  • Ferma/Distruggi i contenitori dopo le sessioni di ricerca
root@kitploit:~
# Proper cleanup after use
docker-compose down -v --rmi all

🤝 Contribuire

I contributi sono benvenuti! Segui queste linee guida:

Come Contribuire

  1. Forka il repository
  2. Crea un branch per la funzionalità (git checkout -b feature/StupendaFunzionalità)
  3. Committa le tue modifiche (git commit -m 'Aggiungi StupendaFunzionalità')
  4. Pusha sul branch (git push origin feature/StupendaFunzionalità)
  5. Apri una Pull Request

Idee per Contributi

  • Aggiungi una nuova sfida di sfruttamento
  • Migliora la documentazione
  • Crea tutorial video
  • Aggiungi nuove dimostrazioni di vulnerabilità
  • Migliora UI/UX
  • Scrivi script di sfruttamento automatizzati

Codice di Condotta

  • Sii rispettoso e professionale
  • Concentrati sul valore educativo
  • Non aggiungere codice malevolo
  • Testa accuratamente prima di inviare

📜 Licenza

Questo progetto è concesso in licenza con MIT License - vedi il file LICENSE per i dettagli.

Risorse di Terze Parti

  • Icona del sacco da boxe da Flaticon (Licenza gratuita con attribuzione)

🙏 Riconoscimenti

  • Next.js Team - Per il framework (e per aver corretto la vulnerabilità)
  • React Team - Per i React Server Components
  • Ricercatori di Sicurezza - Che hanno scoperto e divulgato CVE-2025-55182
  • Comunità CTF - Per l'ispirazione e la metodologia
  • OWASP - Per le linee guida sui test di sicurezza

Risorse Educative

  • OWASP Top 10
  • PortSwigger Web Security Academy

📞 Contatti e Supporto

  • Problemi: GitHub Issues
  • Discussioni: GitHub Discussions

🔄 Aggiornamenti e Changelog

Versione 1.0.0 (Dicembre 2025)

  • Rilascio iniziale
  • 5 sfide CTF
  • Supporto Docker
  • Documentazione completa

⭐ Cronologia Stelle

Se questo progetto ti ha aiutato ad imparare sulla sicurezza web, considera di dargli una stella! ⭐


Realizzato con 🥊 per la Ricerca sulla Sicurezza

Ricorda: Da un grande potere deriva una grande responsabilità. Usa le tue capacità eticamente o non eticamente, scherzo😁, non usarle mai non eticamente.

Segnala Bug · Richiedi Funzionalità · Documentazione

Scarica lo strumento