نحوه شناسایی ترافیک رمز شده بدافزارها
آنالیز ترافیک رمز شده تهدیدات(Encrypted Threat Analytics)
شرکت سیسکو به طور دائمی و سیستماتیک در حال جمعآوری و تجزیه و تحلیل بستههای تولید شده توسط بدافزارها میباشد. طبق گزارشات، بدافزارهایی که از رمزگذاری TLS برای مخفی کردن فعالیتهایشان استفاده میکنند، به طور مداوم در حال افزایش است. در سال 2019 طبق پیشبینی گارتنر بیش از 80 درصد ترافیکهای وب سازمانها به صورت رمز شده بوده است. در می همان سال این عدد برای ترافیکهای وب گوگل 94 درصد پیشبینی شده بود. همچنین در آن زمان نزدیک به 80 درصد سایتهای باز شده از طریق فایرفکس از HTTPS استفاده کردهاند.
نکته دیگر اینکه براساس گزارشات موجود در آگوست 2015 فقط 2.21 درصد از بدافزارها از TLS استفاده میکردند. این عدد در طول 2 سال و در می 2017 به 21.44 درصد افزایش یافته است. در حال حاضر این عدد به بیش از 70 درصد رسیده است. همچنین بیش از 60 درصد سازمانها قادر به رمزگشایی و شناسایی این بدافزارها نمیباشند.
چالشهای پیش روی تحلیل ترافیکهای رمزشده
در حال حاضر بسیاری از سازمانها هیچ راهکاری برای آنالیز ترافیک رمز شده و شناسایی محتواهای خرابکارانه ندارند. در واقع موضوع فقدان ابزارهای امنیتی و منابع پردازشی، سازمانها را با چالشهای اساسی روبرو کرده است. یکی از این چالشها، انتخاب روش شناسایی تهدیدات موجود در ترافیکهای رمزشده میباشد. این روش بایستی علاوه بر حفظ حریم خصوصی کاربران، از کارایی لازم نیز برخوردار باشد. روشهای قدیمی به دلیل استفاده از مکانیزمهای تطابق الگو و رمزگشایی ترافیک TLS از کارایی و دقت لازم برخوردار نمیباشند. به همین دلیل سازمانها به دنبال راهکاری هستند که نقاط ضعف روشهای قدیمی را نداشته باشند.
آنالیز ترافیکهای رمزشده (Encrypted Traffic Analytics)
روشهای قدیمی مانیتورینگ با ارایه گزارش از آدرسها، پورتها، بایت و تعداد بستههای یک flow، دید سطح بالایی از ارتباطات شبکه ارایه میدهند. علاوه براین، فرادادهها یا رویدادهایی که داخل یک flow رخ میدهند، میتوانند توسط فریمورک مانیتورینگ جریان ترافیک جمع آوری، ذخیره و تحلیل شوند. این دادهها زمانی ارزشمند خواهند بود که ترافیک رمزشده باشد. زیرا در این حالت امکان بررسی عمیق بستهها وجود ندارد.
شرکت سیسکو در راهکار خود از مقادیر موجود در جریان ترافیک مانند طول بسته و زمان ورود آن برای درک ویژگیهای رفتاری یک جریان ترافیک استفاده میکند. همچنین از دادههای تکمیلی موجود در ClientHello نشست TLS برای شناسایی ماهیت کلاینت استفاده مینماید. میتوان گفت شرکت سیسکو هر دوی این دیدگاهها را در یک چهارچوب یادگیری ماشین تحت نظارت، ترکیب و استفاده میکند. در نتیجه راهکار ارایه شده امکان تشخیص تهدیدهای شناخته شده و ناشناخته در ارتباطات TLS را داراست.
به عنوان یک مرور کلی، شکل زیر نمای سادهای از نشست TLS را نشان میدهد. با توجه به این شکل در TLS ورژن 1.2 اکثر پیامهای handshake نشست TLS به صورت فاش تبادل میشوند. نکته مهم اینکه تمام اطلاعات خاص TLS که برای طبقهبندی آن استفاده میشود از ClientHello به دست میآید. این اطلاعات در TLS ورژن 1.3 نیز قابل دسترس است.
داده (DATA)
در راهکار ETA، داده قلب سیستم را تشکیل میدهد. درواقع این موضوع دلیل اصلی همکاری تیم آنالیز ترافیکهای TLS یا ETA با تیمهای ThreatGrid و CiscoInfosec میباشد. تا از این طریق به بستههای مخرب و دادههای بر خط مشتریان وشرکتها دسترسی داشته باشند. فیدهای اطلاعاتی بدست آمده از این راه باعث جهت دهی صحیح به کار تجزیه و تحلیل دادهها و ایجاد مشخصات کارآمد از جریان ترافیک شده است. برای درک میزان جذابیت ویژگیهای دادهای در تحلیل دادهها، در ادامه بدافزار bestafera که برای Keyloging و data exfiltration استفاده میشود، بررسی شده است.
آنالیز رفتاری با استفاده از طول و زمان ورود بستهها
شکل زیر طول بستهها و زمان ورود آنها برای دو نشست متفاوت TLS را نشان میدهد. شکل سمت چپ مربوط به نتیجه جستجوی google و شکل سمت راست مربوط به اتصالات bestafera میباشد. در هر دو شکل محور x نشان دهنده زمان و خطهای رو به بالا اندازه بستههای ارسال شده از کاربر به سمت سرور مقصد را نشان میدهد. و خطهای روبه پایین نشاندهنده اندازه بستههایی است که از سرور به کلاینت ارسال شده است. همچنین خطوط قرمز، پیامهای رمزنشده و خطوط سیاه رکوردهای دیتای رمز شده برنامه کاربردی را نشان میدهد.
نمودار مربوط به جستجوی google از یک الگوی معمول پیروی میکند. در این نمودار درخواست اولیه کلاینت در یک بسته خروجی با اندازه کوچک قرار میگیرد که به دنبال آن پاسخهایی با اندازه بزرگ و در اندازه MTU تعیین شده برای بستهها تبادل میشود. در حالی که هنوز در حال تایپ کردن هستیم در همین حین تعداد زیادی بسته تبادل میشود که مربوط به تلاش گوگل برای تکمیل اتوماتیک جستجوی ما میباشد. در نهایت گوگل بهترین پیشنهاد را که فکر میکند به دنبل آن میباشیم را به ما ارایه میدهد.
در شکل سمت راست ابتدا سرور bestafera در شروع ارتباط، گواهی Self-sign خود را برای کاربر ارسال میکند. این موضوع در اولین خط قرمز روبه پایین در شکل سمت راست مشخص است. بعد از انجام handshake بین طرفین ارتباط، کلاینت سریعا شروع به ارسال اطلاعات به سرور میکند. بعد از ارسال اطلاعات، سرور یک وقفه کوچکی ایجاد و دوباره پیامهای دستوری و کنترلی منظم و زمان بندی شدهای را برای کلاینت ارسال میکند.
درست است که اطلاعات مربوط به طول و زمان ورود بستهها نمیتوانند دید عمیقی در مورد محتوای یک جلسه ارائه دهند ولی نتیجهگیری در مورد جنبههای رفتاری یک جلسه را آسانتر میکنند.
انگشت نگاری از برنامهها با استفاده از TLS Metadata
آنالیز ترافیک رمز شده جهت شناسایی ارتباطات بدافزارها از طریق نظارت غیرفعال، استخراج دادههای مرتبط و ترکیب مدلسازی رفتاری با یادگیری ماشین بر روی رویکردی جهانی و مبتنی بر ابر تمرکز دارد.
TLS یک پروتکل رمزنگاری میباشد که حریم خصوصی مورد نیاز برنامههای کاربردی را ارایه میدهد. TLS در بالای پروتکلهای معمول مانند HTTP و SMTP پیادهسازی میشود. در واقع HTTPS یک تونل TLS تحت پروتکل HTTP و SMTPS یک تونل امن تحت پروتکل SMTP میباشند. این معمولترین راه برای امن سازی ارتباطات وب و SMTP میباشد که توسط اکثر سرورها پشتیبانی میشود.
ETA برای آنالیز ترافیک رمزشده، چهار عنصر اصلی داده یعنی بستههای شروع ارتباط، توالی و زمان بستهها، توزیع بایت و ویژگیهای خاص TLS را از جریان ترافیک استخراج میکند. معماری منحصر به فرد Application-Specific Integrated Circuit (ASIC) سیسکو توانایی استخراج این عناصر داده را بدون کاهش سرعت شبکه فراهم می کند.
انتخاب ویژگی
Initial Data Packet (IDP)
دراین ویژگی برای بدست آوردن اطلاعات بسته از اولین بسته جریان ترافیک استفاده میشود. این ماژول امکان استخراج اطلاعات جذابی مانند URL HTTP، نام میزبان، آدرس DNS و سایر عناصر داده را فراهم می کند. علاوهبراین، مرحله Handshake مربوط به TLS از چندین پیام تشکیل شده است که حاوی متادیتای جالب و رمزگذاری نشدهای میباشد که برای استخراج عناصر داده مانند مجموعه رمز (Cipher suites)، نسخه TLS و طول کلید عمومی کلاینت استفاده میشود.
پیام ClientHello تبادل شده در ارتباط TLS دو نوع داده مهم در اختیار ما قرار میدهد. در ابتدای ارتباط، کلاینت لیستی از Cipher suiteهای مناسب را به ترتیب اولویت به سرور پیشنهاد میدهد. هر Cipher suite مجموعهای از متدها شامل الگوریتم رمزنگای و تابع pseudorandom است که برای برقراری اتصال و انتقال دادهها به صورت رمز، مورد نیاز است. از این اطلاعات میتوان برای تشخیص کتابخانهها و برنامههای مختلف TLS استفاده کرد. همچنین کلاینت میتواند در بین موارد پیشنهادی، مجموعهای از extensionهای TLS مانند ec_point_formats که پارامترهای مورد نیاز سرور برای تبادل کلید است را منتشر کند.
Sequence of Packet Lengths and Times (SPLT)
این ویژگی اندازه ( تعداد بایت) قسمت Payload بسته برای چندین بسته ابتدایی جریان ترافیک را نشان میدهد. هچنین حاوی اطلاعاتی در مورد زمان ارسال این بستهها نیز میباشد.
Byte distribution
توزیع بایت احتمال وجود مقدار بایت خاصی در قسمت Payload بسته درون جریان را نشان میدهد. توزیع بایت مربوط به یک جریان را می توان با استفاده از آرایهای از شمارندهها محاسبه کرد. انواع عمده نوع داده مرتبط با توزیع بایت عبارتند از توزیع کامل بایت، آنتروپی بایت و میانگین / انحراف معیار بایت. به عنوان مثال، برای استفاده از یک شمارنده برای هر مقدار بایت یک درخواست HTTP GET، برای “HTTP / 1.1” این مقدار میتواند با افزایش یک واحدی شمارنده متناظر برای “H” و افزایش دو واحدی شمارنده برای دو “T” متوالی حساب شود.
Cisco Stealthwatch
Cisco Stealthwatch از NetFlow، سرورهای پروکسی، ابزارهای telemetry نقاط پایانی، موتورهای کنترل دسترسی و اعمال سیاست، ابزارهای بخشبندی شبکه و همچنین مدل سازی رفتاری و یادگیری ماشین برای ایجاد اساس و پایهای برای رفتار “عادی” میزبانها و کاربران در کل سازمان استفاده میکند. Stealthwatch میتواند ترافیک شبکه را با استفاده از اطلاعات موجود در مورد رفتارها و تهدیدات جهانی مرتبط سازد و از این طریق به صورت خودکار میزبان آلوده، ارتباطات مربوط به command-and-control و ترافیک مشکوک را شناسایی کند.
Stealthwatch یک نقشه از ریسکها و تهدیدات جهانی در خود نگهداری میکند. این نقشه یک پروفایل رفتاری بسیار گسترده در مورد سرورهای موجود در اینترنت است. Stealthwatch از این نقشه برای شناسایی سرورهایی که با حملات مرتبط هستند، یا ممکن است مورد سواستفاده قرار بگیرند یا بعنوان بخشی از حمله در آینده استفاده شوند، استفاده میکند. این یک لیست سیاه نیست، بلکه تصویری جامع از دیدگاه امنیت میباشد.
Stealthwatch با استفاده از یادگیری ماشین و مدل سازی آماری، عناصر جدید دادههای ترافیک رمز شده در NetFlow را تجزیه و تحلیل میکند. نقشه تهدیدات جهانی و عناصر دادهای مربوط به آنالیز ترافیک رمز شده با استفاده از تجزیه و تحلیل پیشرفته امنیتی تقویت میشوند. علاوه براین به جای رمزگشایی ترافیک، Stealthwatch با استفاده از الگوریتمهای یادگیری ماشین، الگوهای مخرب موجود در ترافیک رمزگذاری شده را مشخص و از این طریق به شناسایی تهدیدها و بهبود سرعت واکنش در برابر حوادث کمک کند.
ارزیابی رمزنگاری
آنالیز ترافیک رمز شده علاوه بر کمک به شناسایی بدافزارها، کیفیت رمزنگاری مورد استفاده در ارتباطات شبکهای سازمان را نیز مشخص میکند. این موضوع باعث شکلگیری دیدی شفاف برای اطمینان از انطباق شرکت با پروتکلهای رمزنگاری میشود. به عنوان مثال، استفاده از SSL یا TLS در حوزه صنعت پرداخت الکترونیک (PCI DSS)، استانداردهای این حوزه را نقض می کند. در واقع این دید کمک میکند که مشخص شود، چه اطلاعاتی در سازمان رمز شده و چه اطلاعاتی رمز نشده میباشند. با استفاده از این اطلاعات است که میتوان با اطمینان کامل گفت، کسب و کارمان از امنیت بالایی برخوردار است.
دیدگاهتان را بنویسید