امروزه میتوان ردپای یادگیری ماشین را در همه فعالیتهای انسان مشاهده کرد. این بخش از علوم رایانه نهتنها نقش مهمی در تشخیص گفتار، تصویر، حالات چهره، حالات بدن و حتی دستخط بازی میکند، بلکه بدون این بخش از علم شاید نتوان علم دارو، بانکداری، زیست رایانه را نیز متصور شد. حتی پیشبینی هواشناسی نیز بدون استفاده از ماشینهایی که یاد میگیرند و تعمیم میدهند غیرممکن شده است. در این مقاله به برخی از مطالب مرتبط با یادگیری ماشین در حوزه امنیت سایبری میپردازیم که ممکن است باعث سردرگمی شوند.
یادگیری ماشین در امنیت اطلاعات موضوعی جدید است
به دلایلی شاید بتوان گفت صحبت از هوش مصنوعی در امنیت سایبری موضوعی جدید است. اگر اصطلاح یادگیری ماشین را در امتداد مطالب دیگر دنبال نکنید شاید فکر کنید این موضوع قبلا وجود خارجی نداشته است.
مختصری دربارهی گذشته: یکی از اولین الگوریتمهای یادگیری ماشین یعنی شبکه عصبی در سال 1950 ارائه شد. در آن زمان همگان فکر میکردند این الگوریتم احتمالاً بهسرعت موجب پدیدآوردن هوش مصنوعی قوی میشود، این تصور که این الگوریتم میتواند هوش مصنوعی را علاوه بر مسائلی که برای آن برنامهنویسی شده است تا مرز تفکر، فهم محیط و حل مسائل مختلف پیش ببرد. در طرف مقابل هوش مصنوعی ضعیف قرار میگرفت که میتوانست کارهای سادهتری انجام دهد، مثلاً تصاویر را دستهبندی کند، به پیشبینی آبوهوا بپردازد، شطرنج بازی کند و کارهایی از این قبیل را انجام دهد. حالا و پس از 60 سال از آن زمان ما تصور بهتری از این موضوع داریم که ساخت موجودی با هوش مصنوعی واقعی سالها زمان میبرد و آنچه که امروزه از آن به نام هوش مصنوعی یاد میکنیم همان یادگیری ماشین است.
وقتی صحبت از امنیت سایبری به میان میآید، یادگیری ماشین مطلبی جدید نیست. الگوریتمهایی که در این دسته قرار میگیرند حدود 10 تا 12 سال قبل پیادهسازی شدهاند. در آن زمان، تعداد بدافزارهای جدید هر دو سال دو برابر میشد. پس از آنکه روشن شد یک سامانه تحلیل ویروس خودکار ساده، پاسخگوی نیازهای امنیتی نیست، نیاز به روشهای جدید بسیار احساس شد. به این حرکت روبهجلو در قالب پردازش پروندهها در مجموعه ویروسها جامه عمل پوشانده شد. در این مجموعه امکان جستجو برای انواع مشابه وجود داشت. در این فرآیند این انسان بود که تصمیم نهایی را درباره مخرب بودن یک پرونده میگرفت، اما این وظیفه هم تقریباً بلافاصله به ربات خودکار سپرده شد. به عبارت دیگر، یادگیری ماشین چیز جدیدی در دنیای امنیت سایبری نیست.
تمامی مسائل در مورد یادگیری ماشین و امنیت سایبری پیشازاین بررسی شدهاند
این درست است که در برخی زمینهها که از یادگیری ماشین استفاده میشود الگوریتمهای آمادهای وجود دارند. این بخشها شامل تشخیص چهره، احساس و تمایز بین گربهها و سگها میشود. در این موارد، افرادی پیش از این به این مسائل فکر کرده و ابزار ریاضی مناسب را برگزیدهاند، منابع رایانشی موردنیاز را فراهم کرده و الگوریتمهای خود را بهصورت عمومی منتشر کردهاند. بدین ترتیب اکنون حتی یک فرد مدرسهای هم میتواند از این الگوریتمها استفاده کند.
این امر موجب شده است این تصور اشتباه ایجاد شود که الگوریتمهایی برای شناسایی بدافزار نیز وجود داشتهاند. محققان کسپرسکی بیش از 10 سال است که در حال توسعه و اختراع فناوریهای جدید هستند و هر روزه مسائل جدیدی که قبلا راهحلی برای آنها ارائه نشده است نمایان میشوند.
یادگیری ماشین را کافی است یک بار انجام داده و سپس تا همیشه استفاده کنید
قطعاً تفاوت چشمگیری بین شناسایی بدافزار و تشخیص چهره وجود دارد. چهره همان چهره باقی میماند و تغییر چندانی در چهره رخ نمیدهد. در بیشتر زمینههایی که یادگیری ماشین استفاده میشود، مسئله در طول زمان تغییر نمیکند، درحالیکه در حوزه بدافزارها این روند بهطور مداوم در حال تغییر است. این مهم به این دلیل است که مجرمان سایبری انگیزههایی سیاسی، مالی و تروریسم دارند. هوش به کار رفته از سوی آنها دیگر مصنوعی نیست، بلکه آنها با مقاصد خاص برنامههای مخرب را تغییر داده و باهم ترکیب میکنند تا مدلهای آموزش دیده را دور بزنند. واضح است که با این تغییر سریع یک راهکار امنیتی ثابت نمیتواند پاسخگو باشد.
یک نرمافزار امنیتی میتواند بهتنهایی در سمت مشتری آموزش ببیند
برخی معتقدند پروندههای یک سامانه در سمت مشتری کافی هستند تا مدل امنیتی آموزش ببیند؛ اما این تفکر درست نیست، چراکه تعداد نمونههای بدافزاری که بهطور متوسط یک مشتری آنها را تجربه میکند بهمراتب کمتر از نمونههایی است که در یک آزمایشگاه ضدویروس در دسترس هستند. اگر تعداد نمونههای آموزش کم باشند بهطور مستقیم میتوان نتیجه گرفت به احتمال زیاد میزان تعمیمپذیری الگوریتم کم است؛ درنتیجه مدل، بدافزارهای موجود را تشخیص نمیدهد.
این امکان وجود دارد که یک راهکار امنیتی فقط بر پایه مدلهای یادگیری ماشین و بدون توجه به سایر روشهای شناسایی ساخته شود
برخی میگویند چرا باید از فناوریهای مختلف برای حفاظت استفاده کنیم؟ چرا فقط از یک الگوریتم پیشرفته برای همه شناساییها استفاده نکنیم؟
باید توجه کرد که بیشتر بدافزارها متعلق به خانوادههایی هستند که از انواع تغییرات یک برنامه مخرب ایجاد شدهاند. برای مثال، Trojan-Ransom.Win32.Shade خانوادهای متشکل از 20 هزار مورد رمزنگار است. در شرایطی که تعداد نمونههای موجود زیاد باشند یک مدل میتواند آموزش دیده و ممکن است برای تشخیص تهدیدهای آینده کافی باشد؛ اما در واقعیت در اکثر موارد یک خانواده تنها نمونههای اندکی دارد، حتی در برخی موارد فقط یک نمونه. شاید نویسنده یک برنامه مخرب ترجیح بدهد به جای اینکه نمونه اولیه ساخته شدهاش توسط برنامههای ضد ویروس شناخته شوند، بدون تغییر برنامه خود به کاربرانی حمله کند که هیچگونه برنامه امنیتی و یا تشخیص رفتاری ندارند. این خانوادههای کوچک از برنامههای مخرب نمیتوانند برای آموزش یک مدل به کار روند. تعمیمپذیری تنها با یک و یا دو نمونه میسر نمیشود. در این شرایط بهتر است که یک تهدید با استفاده از روشهای مختلف بر اساس درهمسازی، ماسک و غیره شناسایی شود.
مثال دیگر اهداف از پیش تعیین شدهاند. مجرمان پشت این نوع حملات، هرگز قصد تولید نمونههای بیشتر را ندارند. آنها تنها یک نمونه را فقط برای یک هدف میسازند و مطمئن هستند که نمونه ساخته شده توسط راهکارهای حفاظتی شناخته نمیشود. در این موارد هم استفاده از روشهای شناسایی مبتنی بر درهمسازی مؤثرتر است.
نتیجهگیری: ابزارهای مختلف باید در موقعیتهای متفاوت استفاده شوند. محافظت چند سطحی مؤثرتر از یک روشهای محافظتی یک سطحی هستند.
نکته آخر اینکه در حال حاضر محققان بیشتر بر روی اشتباهات مدلهای پیچیده متمرکز هستند: در برخی موارد تصمیماتی که آنها میگیرند کاملاً مبتنی بر مدلهای پیچیده موردنظرشان بوده و از دید منطق انسانی قابل درک نیست.
در پایان باید گفت میتوان به روشهای یادگیری ماشین اعتماد کرد اما در مورد سامانههای حساس (مانند هواپیماها و خودروهای خودکار، داروها، خدمات کنترلی و غیره)، معمولاً استانداردهای خیلی سختگیرانهتری باید رعایت شوند، حال آنکه در یادگیری ماشین مسئولیتی برای ماشین در نظر گرفته نمیشود. به همین دلیل کنترل کیفیت یک مدل باید توسط متخصصان ماهر نظارت شود.
منبع: news.asis