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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
fastjson-jsontype-rce-lab — Docker labs + fastjson रिमोट-क्लास-लोड RCE के लिए डिफेंसिव स्कैनर। fastjson 1.2.66-1.2.83: @JSONType संसाधन प्रोब (CVE-2026-16723)। fastjson2 2.0.57: हमलावर @type, पॉलीमॉर्फिक प्रकारों (@JSONType(seeAlso) / Jackson @JsonSubTypes) के माध्यम से autoType DISABLED रहने पर loadClass तक पहुँचता है। केवल-मार्कर पेलोड; safeMode + JDK17 नियंत्रण। | Kitploit
उपकरण/GitHubGitHub/dinosn/fastjson-jsontype-rce-lab
स्थैतिक विश्लेषणगतिशील विश्लेषण (सैंडबॉक्सिंग)भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षालैब और अभ्यास
GitHub
dinosn/fastjson-jsontype-rce-lab

fastjson-jsontype-rce-lab

रिपॉजिटरी देखें
20392122 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

विवरण

Docker labs + fastjson रिमोट-क्लास-लोड RCE के लिए डिफेंसिव स्कैनर। fastjson 1.2.66-1.2.83: @JSONType संसाधन प्रोब (CVE-2026-16723)। fastjson2 2.0.57: हमलावर @type, पॉलीमॉर्फिक प्रकारों (@JSONType(seeAlso) / Jackson @JsonSubTypes) के माध्यम से autoType DISABLED रहने पर loadClass तक पहुँचता है। केवल-मार्कर पेलोड; safeMode + JDK17 नियंत्रण।

साझा करें

Fastjson @JSONType रिमोट-JAR/FD-चेन लैब और डिटेक्शन

यह रिपॉजिटरी अब दो अलग-अलग Fastjson अनुसंधान ट्रैक संरक्षित करती है:

  • modern-fd/ अनुशंसित, मार्कर-ओन्ली पुनर्निर्माण है जो Spring Boot 3, सामान्य embedded Tomcat और JDK 17 पर Fastjson 1.2.83 सिंगल-बॉडी रिमोट-JAR/फ़ाइल-डिस्क्रिप्टर चेन का है। यह AutoType बंद के साथ लिटरल फिक्स्ड-DTO सिंक JSON.parseObject(body, BoundEnvelope.class) का उपयोग करता है।
  • मूल टॉप-लेवल Docker Compose लैब पुराने JDK 8 डायरेक्ट रिमोट-क्लास रूट को संरक्षित करती है। यह कमांड-सक्षम है और इसे आधुनिक-JDK विधि के बजाय एक लीगेसी, आइसोलेटेड प्रूफ के रूप में माना जाना चाहिए।
  • scanner/ में पैसिव रिक्वेस्ट/लॉग डिटेक्शन, स्टैटिक आर्टिफैक्ट इन्वेंट्री और एक नॉन-एक्ज़ीक्यूटिंग रीचैबिलिटी प्रोब शामिल है।

बग: ParserConfig.checkAutoType हर @type वैल्यू को @JSONType एनोटेशन के लिए getResourceAsStream(typeName.replace('.','/') + ".class") करके प्रोब करता है। आधुनिक Linux/JDK कॉम्बिनेशन पर, एक रिमोट jar:http प्रोब JAR को एक खुले डिस्क्रिप्टर के पीछे कैश्ड छोड़ सकता है; बाद में jar:file:/proc/self/fd/N प्रोब उसी बॉडी में इसे वैध क्लास नामों के तहत फिर से खोल सकते हैं और एक एनोटेटेड क्लास को इनिशियलाइज़ कर सकते हैं। सटीक 1.2.83 कंपोज़िशन AutoType डिसेबल्ड के साथ और List<Object> युक्त एक फिक्स्ड DTO के माध्यम से काम करता है। इसलिए अकेले बाइंडिंग एक मिटिगेशन नहीं है। पूरा वॉक-थ्रू: docs/MECHANISM.md।

सुरक्षा समीक्षा निष्कर्ष

साथी संपूर्ण-प्रोजेक्ट समीक्षा में सभी 193 Fastjson 1.2.83 प्रोडक्शन Java फ़ाइलों में 2,041 कॉल करने योग्य/स्टैटिक-इनिशियलाइज़र पंक्तियाँ शामिल थीं। नीचे दी गई तालिका सबसे अधिक प्रभाव वाले परिणामों को प्राथमिकता देती है; यह दावा नहीं है कि हर Fastjson डिप्लॉयमेंट प्रभावित है। यह रिपॉजिटरी सीधे F105 को रिप्रोड्यूस करती है। शेष प्रविष्टियाँ अलग से सील की गई सोर्स समीक्षा और बाउंडेड लैब साक्ष्य का सारांश देती हैं।

प्राथमिकतानिष्कर्षसिद्ध परिणाममहत्वपूर्ण सीमा
1F105 — रिमोट @JSONType बाइटकोड एक्ज़ीक्यूशनसंगत Spring Boot लोडरों के माध्यम से अटैकर-सप्लाइड क्लास इनिशियलाइज़ेशन, जिसमें JDK 8 डायरेक्ट रूट और Linux/JDK 17 रिटेन्ड-JAR /proc/self/fd/N निरंतरता शामिल हैपार्सर-रीचेबल @type कैरियर, संगत Boot/TCCL लोडर, एग्रेस, SafeMode/IgnoreAutoType बंद, और एक सटीक अटैकर JAR की आवश्यकता है। आधुनिक फिक्स्ड-DTO रूट को अतिरिक्त रूप से एक जेनेरिक वैल्यू लेन (लैब List<Object> का उपयोग करती है), Linux procfs, एक रिटेन्ड डिस्क्रिप्टर और सटीक नाम संरेखण की आवश्यकता होती है; हर JDK, लोडर या OS पर सार्वभौमिक नहीं है
2F1/F45 — TemplatesImpl कमांड एक्ज़ीक्यूशनफिक्स्ड-DTO API के माध्यम से मार्कर कमांड एक्ज़ीक्यूशन, जिसमें एक अनदेखी बॉडी प्रॉपर्टी शामिल हैकमजोर सर्वर नीति की आवश्यकता है: क्लास एडमिशन, AutoType, और प्राइवेट-फील्ड पॉपुलेशन या समकक्ष पथ; डिफ़ॉल्ट सेटिंग्स इसे ब्लॉक करती हैं
3F70/C016 — अनबाउंडेड बफरिंग और GZIP विस्तारटाइप्ड byte/InputStream और एनोटेटेड DTO पथ बिना आउटपुट कैप के विस्तार या बफर करते हैं; कंस्ट्रेन्ड-हीप Java OOME रिप्रोड्यूस किया गयाएंडपॉइंट/स्कीमा और अटैकर-बाइट रीचैबिलिटी आवश्यक है; प्रोडक्शन-व्यापी आउटेज स्थापित नहीं किया गया
4F18/C089 — पार्सर-थ्रेड स्टैक एक्सहॉशनगहराई से नेस्टेड सामान्य ऑब्जेक्ट वैल्यू डिफ़ॉल्ट पार्सिंग के तहत StackOverflowError उत्पन्न कर सकती हैंरिक्वेस्ट-थ्रेड उपलब्धता पर प्रभाव; अपरिवर्तनीय JVM या सर्विस-व्यापी क्रैश नहीं
5F120/C162 — फिक्स्ड-स्कीमा HTTP SSRF/लोकल-रिसोर्स लोडिंगबॉडी-नियंत्रित JEditorPane/JTextPane.page HTTP रिक्वेस्ट करता है और बाउंडेड file: सामग्री को Document स्थिति में लोड कर सकता हैएप्लिकेशन को Swing प्रकार घोषित करने की आवश्यकता है; कोई स्वचालित रिस्पॉन्स एक्सफिल्ट्रेशन या RCE सिद्ध नहीं हुआ
6F118/C160 — हैश-कोलिज़न ऑथराइज़ेशन/डेटा-इंटेग्रिटी विफलताएक विशिष्ट Unicode FNV-1a-64 कोलिज़न एक विशेषाधिकार प्राप्त enum कॉन्स्टेंट से बाइंड हो सकता है या JSONPath म्यूटेशन को गलत बीन सेटर की ओर मोड़ सकता हैएक उपयोग योग्य कोलिज़न और डाउनस्ट्रीम ट्रस्ट या एक एक्सपोज़्ड JSONPath म्यूटेशन ऑपरेशन की आवश्यकता है; कोई क्लास एडमिशन या RCE नहीं
7F121/C163 — फिक्स्ड JdbcRowSet JNDI रीचैबिलिटीसटीक सेटर क्रम ने एक बॉडी-सेलेक्टेड आउटबाउंड JNDI/LDAP कनेक्शन का कारण बनासाक्ष्य एक कनेक्शन पर रुक जाता है: कोई नेमिंग रिस्पॉन्स, ऑब्जेक्ट फैक्ट्री, बाइटकोड लोडिंग या RCE नहीं
8F2/F45 — डिफ़ॉल्ट DNS रिज़ॉल्यूशनअटैकर-नियंत्रित होस्टनाम रिज़ॉल्यूशन डिफ़ॉल्ट कॉन्फ़िगरेशन के तहत और एक अनदेखी फिक्स्ड-DTO प्रॉपर्टी के माध्यम से काम करता हैकेवल DNS/OOB इंटरैक्शन, जेनेरिक HTTP SSRF या RCE नहीं

वैलिडेशन लेबल, पूर्वापेक्षाएँ, निचले-स्तर के निष्कर्ष, रेमेडिएशन प्राथमिकताएँ और स्पष्ट नकारात्मक सीमाओं के लिए findings/FINDINGS.md देखें।

⚠️ केवल अधिकृत उपयोग

यह रिपॉजिटरी उन सिस्टमों के शिक्षा, डिफेंसिव रिसर्च और अधिकृत परीक्षण के लिए है जिनके आप मालिक हैं या जिनका परीक्षण करने की आपको स्पष्ट अनुमति है। आधुनिक लैब के आंतरिक नेटवर्क के लिए समर्थित होने पर, होस्ट प्रकाशन केवल 127.0.0.1 पर अनुरोधित है; इसकी स्क्रिप्ट परीक्षण को पूरी तरह से उस आइसोलेटेड नेटवर्क के भीतर चलाती हैं। आधुनिक लैब में कोई प्रोसेस-एक्ज़ीक्यूशन प्रिमिटिव नहीं है और यह केवल एक फिक्स्ड इन-JVM मार्कर सेट करती है। लीगेसी JDK 8 लैब id चलाती है और उसका आउटपुट /tmp/PWNED में लिखती है; इसे आइसोलेटेड रखें। लीगेसी एक्सप्लॉइट या एक्टिव प्रोब को अनधिकृत सिस्टमों पर न लगाएँ।

अपने पर्यावरण को स्कैन करें

scanner/ डायरेक्ट्री चार डिपेंडेंसी-फ्री Python 3 टूल्स के साथ आती है (कोई pip इंस्टॉल नहीं)।

  • fjdetect.py — रिमोट-JAR सीड्स और /proc/self/fd या /dev/fd सीक्वेंस के लिए डिकोडेड JSON रिक्वेस्ट बॉडीज़ या संरचित JSON लॉग्स का पैसिव रूप से निरीक्षण करें।
  • fjscan_static.py — कमजोर कॉम्बिनेशन के लिए jars/wars/ears की इन्वेंट्री करें (कंटेंट-बैक्ड, मेटाडेटा-वेरिफाइड 1.2.83 × वास्तविक Spring Boot लोडर क्लास कंटेंट)। प्रोब-युक्त 1.2.48–1.2.82 रिलीज़ और केवल-मेटाडेटा/फ़ाइलनाम वाले उम्मीदवार समीक्षा के लिए अलग से रिपोर्ट किए जाते हैं। CI-गेट अनुकूल (EXPOSED पर एग्ज़िट 2)।
  • fjscan_probe.py — एक्टिव, सुरक्षित रीचैबिलिटी जाँच: आपके नियंत्रण वाले कैनरी पर @type फायर करता है (बिल्ट-इन लिसनर या Burp Collaborator / interactsh) और रिसोर्स-फेच कॉलबैक को सहसंबंधित करता है। इसका बिल्ट-इन लिसनर एक खाली 404 लौटाता है; बाहरी लिसनर को समकक्ष रूप से कॉन्फ़िगर करें। एक कॉलबैक क्लास लोडिंग या RCE साबित नहीं करता है।
  • fjpayload.py — मैनुअल परीक्षण के लिए रिमोट-रिसोर्स फेच बॉडीज़ उत्पन्न करें; जब एक्ज़ीक्यूशन इच्छित न हो तो केवल खाली/404 लिसनर का उपयोग करें।
# 1) passive request/log inspection
python3 scanner/fjdetect.py --ndjson gateway.jsonl

# 2) inventory build artifacts / unpacked images (parallel)
python3 scanner/fjscan_static.py /path/to/artifacts --threads 16

# 3) active probe across many domains — simplest: --auto fires baseline + plain + escaped comparison
#    DNS probes per target and prints a rollup; DNS callbacks land in your Burp Collaborator
python3 scanner/fjscan_probe.py --collaborator <sub>.oastify.com --auto --targets domains.txt --threads 50
cat domains.txt | python3 scanner/fjscan_probe.py --collaborator <sub>.oastify.com --auto --targets -

# 4) bulk fetch payloads for manual testing (one per domain, stable correlation token)
python3 scanner/fjpayload.py <collab-or-ip> --targets-file domains.txt

domains.txt = प्रति पंक्ति एक टारगेट — एक पूर्ण [METHOD ]URL या एक सीधा डोमेन (--scheme / --target-port / --path के साथ विस्तारित); # टिप्पणियाँ अनुमत हैं:

api.internal.example
POST https://svc.example/v1/ingest
10.0.0.7:8080

विकल्प

fjscan_probe.py (एक्टिव प्रोब)

टूल डाउनलोड करें