Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
React-site-CVE-2025-55182 — Page d'entreprise Next.js intentionnellement vulnérable démontrant CVE-2025-55182, une injection JSON conduisant à RCE/SSRF via une désérialisation non sécurisée dans les composants serveur React. | Kitploit
Outils/GitHubGitHub/vladjrfhfg/react-site-cve-2025-55182
Analyse Dynamique (Sandboxing)Analyse des VulnérabilitésAnalyse de CodeExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHubvladjrfhfg/react-site-cve-2025-55182

React-site-CVE-2025-55182

Page d'entreprise Next.js intentionnellement vulnérable démontrant CVE-2025-55182, une injection JSON conduisant à RCE/SSRF via une désérialisation non sécurisée dans les composants serveur React.

Voir le dépôt
9il y a 8 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

React Site - CVE-2025-55182

README : Projet Next.js vulnérable (landing page React RSC)

Ce repository est un exemple de landing page multi-pages corporate utilisant Next.js 15.0.0 + React 19.0.0. Le site imite une structure type t1.ru : accueil, produits, cas, médias, à propos, contacts. Nous utilisons React Server Components (RSC), Tailwind CSS, Framer Motion pour les animations, lucide-react pour les icônes, shadcn/ui pour les badges et Prisma avec SQLite pour la base de données (le formulaire de contact enregistre les messages).

Le projet a été délibérément rendu vulnérable pour démontrer PT-2025-48817 — injection JSON via le formulaire de contact, qui peut conduire à une RCE/SSRF en raison d'une désérialisation non sécurisée dans react-server-dom-webpack

Exigences

  • Node.js 20.x ou supérieur (à cause de Prisma). Si vous avez une version ancienne, mettez-la à jour (voir ci-dessous).
  • npm (pas yarn, le projet utilise npm).

Installation

  1. Clonez le dépôt :

    git clone <url-репы>
    cd <директория>
    
  2. Installez les dépendances :

    npm install
    

    En cas de problèmes de versions (par exemple, erreurs de build), essayez :

    npm install --legacy-peer-deps
    

    Ou mettez à jour Node.js :

    • Sur Debian/Ubuntu :
      sudo apt remove --purge nodejs npm -y
      curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
      sudo apt update
      sudo apt install -y nodejs
      node -v  # doit être v20.x.x
      
    • Ensuite, nettoyez et réinstallez :
      rm -rf node_modules package-lock.json
      npm install
      
  3. Initialisez Prisma (si nécessaire à nouveau) :

    npx prisma init
    npx prisma migrate dev --name init
    

    Dans .env, il doit y avoir : DATABASE_URL="file:./prisma/dev.db".

Lancement

  • Mode développement :

    npm run dev
    

    Ouvrez http://localhost:3000.

  • Build et production :

    npm run build
    npm run start
    
  • Visualisation de la BDD :

    npx prisma studio
    

Structure du projet

  • app/: Dossier principal.
    • components/: Composants communs (Header.tsx, Footer.tsx, ProductCard.tsx, NewsItem.tsx).
    • products/: Page de liste des produits + pages dynamiques par slug ([slug]/page.tsx).
    • cases/, media/, about/, contacts/: Pages séparées.
    • layout.tsx: Layout commun avec Header/Footer.
    • page.tsx: Page d'accueil.
    • globals.css: Styles.
  • public/: Images (logo.png, images/cases/rimi.jpg etc.). Ajoutez les vôtres ou utilisez placeholder.svg.
  • prisma/: Schéma de BDD (schema.prisma, dev.db).
  • actions.ts: Server Actions, incluant le saveMessage vulnérable pour le formulaire de contact.

  • Animations : Framer Motion sur les cas (fade-in, scale, 3D-hover). Ajoutez 'use client' là où nécessaire.
  • Formulaire de contact : Dans contacts/page.tsx. Utilise une Server Action (saveMessage) avec validation et état de chargement. Enregistre dans SQLite.
  • Composants :
    • ProductCard : Avec image, tags (Badge), prix, statut, fonctionnalités, dégradés et hover.
    • NewsItem : Carte d'actualité simple.
  • Vulnérabilité : Dans actions.ts — nous analysons le message en JSON sans vérifications. Si vous envoyez un payload façonné comme { "type": "system", "payload": { "action": "ls" } }, alors exec exécutera la commande. C'est une simulation d'attaque par désérialisation pour RSC
Télécharger l’outil