Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
json-sanitizer — json-sanitizer مع CVE-2020-13973 | Kitploit
أدوات/GitHubGitHub/epicosy/json-sanitizer
أدوات عامةأدوات التشفير/فك التشفيرتحليل الثغرات الأمنيةتحليل الكودأمن الويب
GitHubepicosy/json-sanitizer

json-sanitizer

json-sanitizer مع CVE-2020-13973

عرض المستودع
منذ 2 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

json-sanitizer

بما أن المحتوى يشبه JSON، فإن أداة تعقيم JSON تحوّله إلى JSON صالح.

بدء الاستخدام - جهة الاتصال

يمكن ربط هذه الأداة بأي من طرفي خط أنابيب البيانات للمساعدة في تحقيق مبدأ بوستل:

كن متحفظًا في ما تفعله، كن متسامحًا في ما تقبله من الآخرين

عند تطبيقها على محتوى يشبه JSON من الآخرين، ستنتج JSON جيدة التكوين ترضي أي محلل تستخدمه.

عند تطبيقها على مخرجاتك قبل إرسالها، ستقوم بتصحيح الأخطاء البسيطة في الترميز وتجعل من السهل تضمين JSON الخاص بك في HTML وXML.

الدافع

الهندسة المعمارية

العديد من التطبيقات تحتوي على كميات كبيرة من الأكواد التي تستخدم طرقًا مخصصة لتوليد مخرجات JSON.

غالبًا ما تمر هذه المخرجات عبر كمية صغيرة من كود الإطار قبل إرسالها عبر الشبكة. يمكن لهذه الكمية الصغيرة من كود الإطار استخدام هذه المكتبة للتأكد من أن المخرجات المخصصة تتوافق مع المعايير وآمنة لتمريرها إلى أدوات إزالة التسلسل القوية (أو المفرطة في القوة) مثل عامل eval في JavaScript.

كذلك، غالبًا ما تحتوي التطبيقات على واجهات برمجة تطبيقات خدمات الويب التي تستقبل JSON من مصادر متنوعة. عندما يتم إنشاء هذا JSON باستخدام طرق مخصصة، يمكن لهذه المكتبة تحويله إلى شكل يسهل تحليله.

من خلال ربط هذه المكتبة بالكود الذي يرسل ويستقبل الطلبات والردود، يمكن لهذه المكتبة مساعدة مهندسي البرمجيات في ضمان الأمان والتكوين الجيد على مستوى النظام.

المدخلات

تأخذ أداة التعقيم محتوى يشبه JSON وتفسره كما يفعل eval في JS. تحديدًا، تتعامل مع هذه التركيبات غير القياسية.

تقوم أداة التعقيم بإصلاح علامات الترقيم المفقودة، وعلامات الاقتباس الختامية، والأقواس غير المتطابقة أو المفقودة. إذا كان الإدخال يحتوي فقط على مسافات بيضاء، يتم استبداله بسلسلة JSON الصالحة null.

المخرجات

المخرجات هي JSON جيدة التكوين كما هو معرف بواسطة RFC 4627. كما تحقق المخرجات الخصائص الإضافية التالية:

  • لن تحتوي المخرجات على السلسلة الفرعية (غير حساسة لحالة الأحرف) "</script"، وبالتالي يمكن تضمينها داخل عنصر script في HTML دون تشفير إضافي.
  • لن تحتوي المخرجات على السلسلة الفرعية "]]>"، وبالتالي يمكن تضمينها داخل قسم CDATA في XML دون تشفير إضافي.
  • المخرجات هي تعبير JavaScript صالح، لذا يمكن تحليلها بواسطة eval في JavaScript (بعد لفها بين قوسين) أو بواسطة JSON.parse. على وجه التحديد، لن تحتوي المخرجات على أي حرفيات سلسلة تحتوي على أسطر جديدة JS مضمنة (فاصل الفقرة U+2028 أو فاصل السطر U+2029).
  • تحتوي المخرجات فقط على قيم عددية صالحة من Unicode (بدون بدائل UTF-16 منعزلة) مسموح بها في XML دون ترميز.

الأمان

بما أن المخرجات هي JSON جيدة التكوين، فإن تمريرها إلى eval لن يكون له أي تأثيرات جانبية أو متغيرات حرة، وبالتالي فهي ليست ناقلًا لحقن الأكواد ولا ناقلًا لتسريب الأسرار.

هذه المكتبة تضمن فقط أن مرحلة سلسلة JSON → كائن JavaScript ليس لها تأثيرات جانبية ولا تحل أي متغيرات حرة، ولا يمكنها التحكم في كيفية تفسير الكود من جانب العميل للكائن الناتج لاحقًا. لذلك، إذا أخذ الكود من جانب العميل جزءًا من البيانات المحللة التي يتحكم فيها مهاجم وأعاد تمريرها عبر مفسر قوي مثل eval أو innerHTML، فقد يعاني ذلك الكود من جانب العميل من تأثيرات جانبية غير مقصودة.

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

بالإضافة إلى ذلك، لا يمكن لتعقيم JSON حماية تطبيق من هجمات الوكيل المربك

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"}يتم اقتباس أسماء الخصائص غير المقتبسة.
//commentsيتم إزالة التعليقات السطرية والكتلية بنمط JS.
(...)يتم إزالة الأقواس التجميعية.