lachlan2k/React2Shell-CVE-2025-55182-original-poc
lachlan2k/React2Shell-CVE-2025-55182-original-poc has 1,067 GitHub stars and 112 forks. GitHot measured 0 stars in 24 hours and +3 in 7 days. Last checked 2026-11-12 07:33 UTC. Last push 2025-12-05.
Original Proof-of-Concepts for React2Shell CVE-2025-55182
Measured star growth
- in 24h
- 0
- in 7 days
- +3
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalOriginal PoCs for CVE-2025-55182
As public PoCs are circulating and Google's Scanner uses a variation of my original submitted PoC, it's finally a responsible time to share my original PoCs for React2Shell.
This repository contains 3 PoCs:
00-very-first-rce-poc- the very first PoC I managed to develop for RCE. Only directly works on dev builds of Next.js sites that use Webpack.01-submitted-poc.js(the main one) - the exact PoC I submitted to Meta, far simpler and effective02-meow-rce-poc- the PoC hashed and posted as proof by Sylvie on November 29th, shortly before initial disclosure to Meta
TL;DR
Many other people have explained their PoCs, but here's my very brief explainer:
$@xgives you access to aChunk- We plant its
thenon our own object - The JS runtime automatically unravels nested promises (really, anything with a
.thenfunction) - We now re-enter the parser, but with control of a malicious fake
Chunkobject - Planting things on
_responselets us access a lot of gadgets when this happens - (insert several options here)
- RCE
Some Differences in PoC
You might notice my PoC has a funny thing going on in then. This was a nice primitive I was using for 'chaining' multiple chunks together, where resolve is passed to Array.map to let me "hop" to another chunk defined in $0.
The publicly recreated PoC circulating doesn't do this, as it's not necessary when just doing a single jump. It was nice to see that the re-created PoC did otherwise use the same _formData gadget that mine did - but the 00- PoC is a wild ride, if you dare try to read it :)
Full Writeup
Soon.
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
459,041 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
377,686 starsreact/react
The library for web and native user interfaces.
252,541 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,527 stars