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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
json-sanitizer — JSON-जैसी सामग्री दिए जाने पर, JSON Sanitizer इसे मान्य JSON में परिवर्तित करता है। | Kitploit
उपकरण/GitHubGitHub/owasp/json-sanitizer
सामान्य उपयोगिताएँस्थैतिक विश्लेषणएन्क्रिप्शन/डिक्रिप्शन उपकरणभेद्यता विश्लेषणकोड विश्लेषणवेब सुरक्षा
GitHubowasp/json-sanitizer

json-sanitizer

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

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

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

सभी देखें →

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

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

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

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

json-sanitizer Fuzzing Status

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

आरंभ करना - संपर्क

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

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

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

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

प्रेरणा

आर्किटेक्चर

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

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

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

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

इनपुट

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

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

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

आउटपुट

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

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

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