Tiny Online Tools logoTiny Online Toolssearchابحث في الادوات…grid_viewكل الادوات
الرئيسيةchevron_rightأدوات الهندسة العكسيةchevron_rightمساعد فك تشويش جافاسكريبتمساعد فك تشويش جافاسكريبت

مساعد فك تشويش جافاسكريبت

يعكس أنماط التشويش الثابتة الشائعة في جافاسكريبت: استبدال مصفوفات النصوص، فك تشفير الهروب، طي الثوابت، حذف الفروع الميتة، وتحويل الأقواس إلى نقاط.

infoهذا يعكس أنماط التشويش الثابتة الشائعة فقط: مصفوفات النصوص، النصوص الحرفية المهربة، الحسابات الحرفية، الفروع الصحيحة/الخاطئة دائمًا، والوصول عبر الأقواس. لا يُنفَّذ أي كود، لذا لا يمكن فك حزمة محمّلات تعتمد على eval، أو حل شروط تعتمد على وقت التشغيل، أو عكس تسطيح تدفق التحكم بعيدًا عن اختبار حرفي بسيط. تبقى أسماء المتغيرات دون تغيير.جافاسكريبت مشوش

ادوات مشابهة

مُشوِّش JavaScript

مُشوِّش JavaScript

يعيد تسمية المتغيرات المحلية، ويخفي السلاسل النصية، ويسطّح تدفق التحكم في JavaScript، كل ذلك داخل متصفحك دون رفع أي شيء.

محلل الكود الميت في جافاسكريبت

محلل الكود الميت في جافاسكريبت

الصق حزمة JS واعثر على الدوال في المستوى الأعلى التي لا توجد لها أي إشارة ثابتة في الملف — تحليل تخميني لإمكانية الوصول، وليس يقينًا.

أداة فك تشويه رموز WASM

أداة فك تشويه رموز WASM

فُكّ تشويه أسماء رموز Rust وC++ الموجودة في ملف WebAssembly ثنائي، واحدًا تلو الآخر أو دفعة واحدة عبر ملف كامل.

فاك تشويش البريد الإلكتروني

فاك تشويش البريد الإلكتروني

فك تشفير عناوين البريد الإلكتروني المموّهة إلى نص عادي. كيانات HTML وBase64 وROT13 و[at]/[dot] والنص المعكوس.

فيديو إلى إطارات JPG

فيديو إلى إطارات JPG

استخرج إطارات فردية من أي فيديو كصور JPG. اختر فترة الإطارات، خصوصية تامة.

حاسبة القرض

حاسبة القرض

احسب الدفعات الشهرية والفائدة الاجمالية والتكلفة الكلية من اصل القرض والنسبة والمدة.

عارض CSV

عارض CSV

عرض واستكشاف ملفات CSV في واجهة جدولية.

apps

المزيد من الادوات

تصفح مجموعتنا الكاملة من الادوات المجانية عبر الانترنت.

ما الذي تعكسه هذه الأداة

تعيد الكثير من أدوات تشويش جافاسكريبت — بما فيها الأداة الموجودة في هذا الموقع نفسه — كتابة الكود عبر مجموعة صغيرة وميكانيكية من التحويلات الثابتة: تنقل كل نص حرفي إلى مصفوفة واحدة وتستبدل كل استخدام باستدعاء دالة استرجاع، وتُهرب الأحرف العادية كسلاسل \xNN أو \uNNNN، وتوسّع الحسابات البسيطة إلى تعبيرات مكافئة لكن أطول، وتغلّف الكود الحقيقي داخل شرط if صحيح دائمًا أو خاطئ دائمًا، وتعيد كتابة a.b كـ a['b']. تعكس هذه الأداة هذه الأمور الخمسة بالضبط:

  1. دمج مصفوفة النصوص — تجد النمط var _s = ["foo", "bar"]; function _g(i){ return _s[i]; } وتستبدل كل استدعاء من نوع _g(0) يكون فيه الفهرس رقمًا حرفيًا بالنص الفعلي، ثم تحذف المصفوفة والدالة إذا لم يعد يستخدمهما شيء آخر.
  2. فك تشفير الهروب — تعرض \x48\x69 كـ Hi بدل الصيغة المهربة.
  3. طي الثوابت — تحوّل 1 + 2 إلى 3، و"a" + "b" إلى "ab"، وحسابات حرفية مشابهة، مع تجنب أي شيء يتطلب التخمين (مثل القسمة على صفر حرفي).
  4. حذف الفروع الميتة — يصبح if (true) { A } else { B } مجرد A؛ ويختفي while (false) {} تمامًا.
  5. من الأقواس إلى النقطة — يصبح obj['name'] هو obj.name عندما يكون name معرّفًا صالحًا.

ما لا تفعله

هذه مطابقة أنماط ثابتة على شجرة تركيب مجردة (AST)، وليست أداة فك تشويش عامة. لا تُنفّذ أي كود، لذا لا يمكنها فك حزمة محمّل يعتمد على eval، أو حل شرط غامض يعتمد على قيمة وقت التشغيل، أو عكس تسطيح تدفق التحكم بعيدًا عن حالة if/while/الشرط الثلاثي الحرفية البسيطة أعلاه. تُترك أسماء المتغيرات كما هي — يبقى _0x1a2b كما هو. إذا لم يتطابق ملفك تمامًا مع شكل مصفوفة النصوص + دالة الاسترجاع، تُبلّغ تلك المرحلة ببساطة عن صفر استدعاءات مُدمجة بدلًا من تخمين نمط آخر.

كيف تعمل

يُحلَّل الكود إلى شجرة AST باستخدام acorn، ويُجتاز ويُعاد كتابته بتحويلات مكتوبة يدويًا لا تعمل إلا عندما تكون القيمة حرفية بشكل مثبت مسبقًا، ثم يُعاد توليده باستخدام astring. لا يُرسل شيء إلى أي خادم: يحدث التحليل وإعادة الكتابة بالكامل في متصفحك.

طريقة الاستخدام

الصق أو اكتب كود جافاسكريبت في المحرر ثم شغّله. يعرض الملخص بالضبط عدد مرات تفعيل كل مرحلة، لترى ما تغيّر وما لم يتغيّر. انسخ النتيجة أو حمّلها كملف .js.