بله ترافیک های بسیاری امروزه رمز شده است ولی دست شما در تحلیل کامل بسته نیست : JA3 و JA4
این JA3 چیست و چگونه محاسبه میشود؟
عامل JA3 یک تکنیک fingerprinting برای شناسایی کلاینتهای TLS است که توسط John Althouse توسعه داده شده است. این روش برای شناسایی کلاینتهای مختلف بر اساس پارامترهای TLS در Client Hello مورد استفاده قرار میگیرد. نحوه محاسبه JA3 Hash
این JA3 با استفاده از ترکیب مقادیر مشخصی از بسته Client Hello در TLS یک رشته متنی تولید کرده و سپس از آن یک MD5 Hash ایجاد میکند. این پارامترها عبارتند از:
Version → نسخهی TLS Accepted Cipher Suites → لیست الگوریتمهای رمزنگاری List of Extensions → لیست افزونههای TLS Elliptic Curves → منحنیهای بیضوی قابل قبول Elliptic Curve Point Formats → فرمتهای نقطهای منحنی بیضوی
پس از استخراج این مقادیر، آنها به صورت عددی (بدون فاصله) در قالب یک رشته به هم متصل شده و از آن MD5 Hash گرفته میشود. مثال رشتهی JA3:
شناسایی بدافزارها و ابزارهای مخرب تشخیص ترافیک رمزگذاریشده حتی بدون رمزگشایی مانیتورینگ ارتباطات مشکوک در شبکه
حالا JA4 چیست و چه تفاوتی با JA3 دارد؟
اینJA4 نسخهی بهبودیافتهی JA3 است که نهتنها Client Hello بلکه Server Hello را نیز بررسی میکند.
مزایای JA4 نسبت به JA3:
دقت بیشتر در شناسایی کلاینتهای واقعی و بدافزارها توانایی fingerprinting سرورها امکان شناسایی TLS Encrypted Client Hello (ECH)
اگر به تحلیل ترافیک رمزگذاریشده و امنیت شبکه علاقه دارید، بهتر است در کنار JA3، از JA4 نیز استفاده کنید.
کاربرد JA3 و JA4 در کشف نفوذ و حملات سایبری
این JA3 و JA4 بهعنوان TLS Fingerprinting به شناسایی الگوهای خاص در ترافیک رمزگذاریشده کمک میکنند. این روشها بدون نیاز به رمزگشایی (TLS Decryption)، کلاینتها و سرورها را بر اساس ویژگیهای ارتباطی شناسایی کرده و در کشف انواع تهدیدات مؤثر هستند. حملات و نفوذهایی که JA3 و JA4 قادر به شناسایی آنها هستند 1. بدافزارهایی که از TLS برای ارتباط با C2 استفاده میکنند
JA3 میتواند برای شناسایی بدافزارهایی که از ارتباطات رمزگذاریشده استفاده میکنند، مفید باشد. برخی از مهمترین بدافزارهایی که با JA3 شناسایی شدهاند عبارتاند از:
هر بدافزار معمولاً هنگام برقراری ارتباط با سرور C2، یک JA3 Hash ثابت دارد. این مقدار میتواند با Threat Intelligence Feeds مقایسه شود تا ارتباطات مشکوک شناسایی شوند.
2. حملات MITM (Man-in-the-Middle)
✅ JA4S میتواند سرورهای مخرب را که در حملات MITM استفاده میشوند، شناسایی کند.
حملاتی که در آنها SSL Proxyهای مخرب برای رهگیری ترافیک رمزگذاریشده استفاده میشوند. ابزارهایی مانند Bettercap، mitmproxy و Burp Suite که در تحلیل و دستکاری TLS مورد استفاده قرار میگیرند، JA3/JA4 خاصی دارند که قابل شناسایی است.
3. دور زدن مکانیزمهای امنیتی (Evasion Techniques)
✅ شناسایی ابزارهایی که برای دور زدن IDS/IPS یا فایروال استفاده میشوند، مانند:
Tor Browser Proxies و VPNهای خاص Malicious TLS Libraries (مانند OpenSSLهای تغییر یافته در بدافزارها)
JA3 میتواند تشخیص دهد که یک ارتباط واقعاً از یک مرورگر عادی مانند Chrome یا Firefox آمده است یا اینکه از طریق ابزارهای تغییر مسیر مثل Proxies و VPNهای ناشناسکننده هدایت شده است. 4. Exploits و حملات RCE در سرورهای TLS
✅ JA4S میتواند رفتار سرورهای آسیبپذیر را شناسایی کند.
برخی سرورهای مخرب یا آلوده به بکدور، JA4 مشخصی دارند که میتواند آنها را از سرورهای عادی متمایز کند. در حملاتی مانند Heartbleed یا RCEهای جدید در OpenSSL، سرور آلوده معمولاً یک پاسخ خاص در Server Hello دارد که با JA4 قابل شناسایی است.
5. حملات با استفاده از ابزارهای تست نفوذ
✅ بسیاری از ابزارهای تست نفوذ (Red Team و هکرها) دارای JA3 ثابت هستند، از جمله: