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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
OWASP__json-sanitizer_CVE-2020-13973_1-2-0 — एक Java लाइब्रेरी जो गलत JSON-जैसी सामग्री को मानक-अनुरूप, सुरक्षित JSON में रूपांतरित करती है, कोड इंजेक्शन को रोकती है और HTML/XML संदर्भों में एम्बेडेबिलिटी सुनिश्चित करती है। | Kitploit
उपकरण/GitHubGitHub/shoucheng3/owasp__json-sanitizer_cve-2020-13973_1-2-0
सामान्य उपयोगिताएँस्थैतिक विश्लेषणएन्क्रिप्शन/डिक्रिप्शन उपकरणभेद्यता विश्लेषणकोड विश्लेषणवेब सुरक्षा
GitHubshoucheng3/owasp__json-sanitizer_cve-2020-13973_1-2-0

OWASP__json-sanitizer_CVE-2020-13973_1-2-0

एक Java लाइब्रेरी जो गलत JSON-जैसी सामग्री को मानक-अनुरूप, सुरक्षित JSON में रूपांतरित करती है, कोड इंजेक्शन को रोकती है और HTML/XML संदर्भों में एम्बेडेबिलिटी सुनिश्चित करती है।

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
1 साल पहलेअभी तक समीक्षित नहीं

json-sanitizer

JSON जैसी सामग्री को देखते हुए, JSON Sanitizer इसे मान्य JSON में परिवर्तित करता है।

आरंभ करें - संपर्क

इसे डेटा-पाइपलाइन के किसी भी छोर पर जोड़ा जा सकता है ताकि पोस्टल के सिद्धांत को संतुष्ट करने में मदद मिल सके:

जो आप करते हैं उसमें रूढ़िवादी बनें, जो आप दूसरों से स्वीकार करते हैं उसमें उदार बनें।

दूसरों से JSON जैसी सामग्री पर लागू करने पर, यह अच्छी तरह से गठित JSON उत्पन्न करेगा जो आपके उपयोग किए जाने वाले किसी भी पार्सर को संतुष्ट करेगा।

आपके आउटपुट पर भेजने से पहले लागू करने पर, यह एन्कोडिंग में छोटी गलतियों को ठीक करेगा और आपके JSON को HTML और XML में एम्बेड करना आसान बनाएगा।

प्रेरणा

आर्किटेक्चर

कई अनुप्रयोगों में बड़ी मात्रा में कोड होता है जो JSON आउटपुट उत्पन्न करने के लिए तदर्थ विधियों का उपयोग करता है।

अक्सर ये सभी आउटपुट नेटवर्क पर भेजे जाने से पहले थोड़ी मात्रा में फ्रेमवर्क कोड से गुज़रते हैं। फ्रेमवर्क कोड की यह छोटी मात्रा यह सुनिश्चित करने के लिए इस लाइब्रेरी का उपयोग कर सकती है कि तदर्थ आउटपुट मानकों के अनुरूप हैं और जावास्क्रिप्ट के eval ऑपरेटर जैसे (अत्यधिक) शक्तिशाली डीसीरियलाइज़र को पास करने के लिए सुरक्षित हैं।

एप्लिकेशन में अक्सर वेब सेवा API होते हैं जो विभिन्न स्रोतों से JSON प्राप्त करते हैं। जब यह JSON तदर्थ विधियों का उपयोग करके बनाया जाता है, तो यह लाइब्रेरी इसे पार्स करने में आसान रूप में बदल सकती है।

इस लाइब्रेरी को अनुरोध और प्रतिक्रिया भेजने और प्राप्त करने वाले कोड में जोड़कर, यह लाइब्रेरी सॉफ्टवेयर आर्किटेक्ट्स को सिस्टम-व्यापी सुरक्षा और सुगठितता गारंटी सुनिश्चित करने में मदद कर सकती है।

इनपुट

सैनिटाइज़र JSON जैसी सामग्री लेता है, और इसकी व्याख्या JS eval के रूप में करता है। विशेष रूप से, यह इन गैर-मानक निर्माणों से निपटता है।

सैनिटाइज़र लापता विराम चिह्न, अंत उद्धरण, और बेमेल या लापता समापन कोष्ठक को ठीक करता है। यदि इनपुट में केवल व्हाइट-स्पेस है तो मान्य JSON स्ट्रिंग null को प्रतिस्थापित किया जाता है।

आउटपुट

आउटपुट RFC 4627 द्वारा परिभाषित अच्छी तरह से गठित JSON है। आउटपुट इन अतिरिक्त गुणों को संतुष्ट करता है:

  • आउटपुट में सबस्ट्रिंग (केस-असंवेदनशीलता) "</script" शामिल नहीं होगी, इसलिए इसे आगे एन्कोडिंग के बिना HTML स्क्रिप्ट तत्व के अंदर एम्बेड किया जा सकता है।
  • आउटपुट में सबस्ट्रिंग "]]>" शामिल नहीं होगी, इसलिए इसे आगे एन्कोडिंग के बिना XML CDATA अनुभाग के अंदर एम्बेड किया जा सकता है।
  • आउटपुट एक मान्य जावास्क्रिप्ट एक्सप्रेशन है, इसलिए इसे जावास्क्रिप्ट के eval बिल्ट-इन (कोष्ठक में लपेटने के बाद) या JSON.parse द्वारा पार्स किया जा सकता है। विशेष रूप से, आउटपुट में एम्बेडेड JS न्यूलाइन (U+2028 पैराग्राफ सेपरेटर या U+2029 लाइन सेपरेटर) के साथ कोई स्ट्रिंग शाब्दिक नहीं होगा।
  • आउटपुट में केवल मान्य यूनिकोड स्केलर वैल्यू (कोई पृथक UTF-16 सरोगेट) शामिल हैं जो XML में अनएस्केप्ड अनुमत हैं।

सुरक्षा

चूंकि आउटपुट अच्छी तरह से गठित JSON है, इसे eval में पास करने से कोई दुष्प्रभाव और कोई मुक्त चर नहीं होगा, इसलिए यह न तो कोड-इंजेक्शन वेक्टर है और न ही रहस्यों के बहिर्निकासन के लिए वेक्टर है।

यह लाइब्रेरी केवल यह सुनिश्चित करती है कि JSON स्ट्रिंग → Javascript ऑब्जेक्ट चरण का कोई दुष्प्रभाव न हो और कोई मुक्त चर हल न करे, और यह नियंत्रित नहीं कर सकती कि अन्य क्लाइंट-साइड कोड बाद में परिणामी Javascript ऑब्जेक्ट की व्याख्या कैसे करता है। इसलिए यदि क्लाइंट-साइड कोड पार्स किए गए डेटा का एक हिस्सा लेता है जो एक हमलावर द्वारा नियंत्रित है और इसे eval या innerHTML जैसे शक्तिशाली इंटरप्रेटर के माध्यम से वापस भेजता है, तो उस क्लाइंट-साइड कोड को अनपेक्षित दुष्प्रभाव हो सकते हैं।

root@kitploit:~
var myValue = eval(sanitizedJsonString);  // safe
var myEmbeddedValue = eval(myValue.foo);  // possibly unsafe

इसके अलावा, JSON को सैनिटाइज़ करना किसी एप्लिकेशन को Confused Deputy हमलों से नहीं बचा सकता है।

root@kitploit:~
var myValue = JSON.parse(sanitizedJsonString);
addToAdminstratorsGroup(myValue.propertyFromUntrustedSource);

प्रदर्शन

सैनिटाइज़ विधि इनपुट स्ट्रिंग को बिना नया बफर आवंटित किए लौटाएगी जब इनपुट पहले से ही मान्य JSON है जो उपरोक्त गुणों को संतुष्ट करता है। इस प्रकार, यदि आमतौर पर अच्छी तरह से गठित इनपुट पर उपयोग किया जाता है, तो इसका न्यूनतम मेमोरी ओवरहेड होता है।

सैनिटाइज़ विधि O(n) समय लेती है जहाँ n UTF-16 कोड-यूनिट में इनपुट की लंबाई है।

टूल डाउनलोड करें
निर्माणनीति
'...'एकल उद्धरण वाले स्ट्रिंग्स को JSON स्ट्रिंग्स में बदल दिया जाता है।
\xABहेक्स एस्केप को JSON यूनिकोड एस्केप में बदल दिया जाता है।
\012ऑक्टल एस्केप को JSON यूनिकोड एस्केप में बदल दिया जाता है।
0xABहेक्स पूर्णांक शाब्दिक को JSON दशमलव संख्याओं में बदल दिया जाता है।
012ऑक्टल पूर्णांक शाब्दिक को JSON दशमलव संख्याओं में बदल दिया जाता है।
+.5दशमलव संख्याओं को JSON के सख्त प्रारूप में बदल दिया जाता है।
[0,,2]सरणियों में एलिज़न को null से भर दिया जाता है।
[1,2,3,]अंतिम अल्पविराम हटा दिए जाते हैं।
{foo:"bar"}अनकोटेड प्रॉपर्टी नामों को कोट किया जाता है।
//commentsJS शैली की लाइन और ब्लॉक टिप्पणियां हटा दी जाती हैं।
(...)समूहीकरण कोष्ठक हटा दिए जाते हैं।