چگونگی محافظت در برابر حملات اجرای کد از راه دور
اخبار داغ فناوری اطلاعات و امنیت شبکه
از دیدگاه یک مهاجم، آسیبپذیری اجرای کد از راه دور، Remote Code Execution یا همان RCE در یک «Workload» (نمونهای محاسباتی که یک یا چند نرمافزار را اجرا میکند) موهبتی است که همواره ادامه مییابد. هنگامی که آسیبپذیری مورد سواستفاده قرار میگیرد، مهاجم میتواند هر هدف مخربی را که انتخاب میکند راهاندازی کند. برای مثال، آسیبپذیریهای RCE علت اصلی حملات سایبری Hafnium و Kaseya بوده است که بیش از ۳۰۰۰۰ سازمان را در ایالات متحده در عرض چند دقیقه فلج کرد. متأسفانه، آسیبپذیریهای RCE به زودی حل و فصل نمیشوند. اخیراً، آژانس امنیت سایبری و امنیت زیرساخت دولت فدرال ایالات متحده (CISA) در مورد آسیبپذیری RCE مهم در پلتفرم گفتگوی محبوبDiscourse، هشدار داد و مایکرؤسافت سه آسیبپذیری مهم RCE را در Patch سهشنبههای خود اعلام نمود.
نحوه استفاده مهاجمان از RCE برای دسترسی به workload سرور
اکثر مهاجمان دارای بودجه کافی، ماهر و با انگیزه بوده و با آگاهی اولیه از آسیبپذیری RCE و یک برنامه آسیبپذیر، میتوانند در این حملات بسیار تأثیرگذار باشند. هنگامی که یک payload که محتاطانه ساخته شده، تحویل داده میشود، برنامه کنترل اجرا را به مهاجم واگذار میکند. اولین اقدام مخربی که مهاجم انجام میدهد، یک reverse shell است که به آنها کمک میکند تا به کنترل کامل صفحهکلید قربانی workload دست یابند. Workload به خطر افتاده اکنون کاملاً در اختیار مهاجم است و وی میتواند هر اقدام مخربی را که مدنظر داشته باشد، انجام دهد. این اقدامات شامل اجرای باجافزار، استخراج دادههای حیاتی، حذف اعتبارنامههای کاربر، تغییر به workload مجاور، انجام فعالیتهای استخراج رمزارز و موارد دیگر است. در این حالت، نقطه پایانی برای خلاقیت مهاجم وجود ندارد.
به ابزارهای امنیتی متعارف تکیه نکنید
ابزارهای امنیتی معمولی زمینه کافی برای محافظت از workloadها در برابر حملات سریعی که در یک یا دو ثانیه اجرا میشوند را ندارند. در نتیجه در برابر آسیبپذیریهای RCE کاملاً بیاثر هستند. برای یک محافظت موفقیتآمیز در برابر حملهای که در آن از آسیبپذیری RCE استفاده میشود، یک کنترل امنیتی مؤثر باید به محض سواستفاده از آسیبپذیری و قبل از اینکه مهاجم بتواند کنترل صفحه کلید را به دست آورد، پروتکل حفاظتی را راهاندازی کند. عدم انجام این کار به یک مهاجم خلاق اجازه میدهد تا حملات خود را پنهان کرده و از امکان ردیابی مصون بماند. اگرچه ابزارهای امنیتی متعارف ادعا میکنند که در زمان اجرای برنامهها کار میکنند، آنها فقط میتوانند حملاتی را شناسایی کنند که طبق الگوهایی که مهاجمان در گذشته از آنها سواستفاده کردهاند، انجام بپذیرد. یک کنترل امنیتی واقعی در زمان اجرا، وقتی که غیر دولوپر ارائه شده (و یا کد تحت تأثیر مهاجم) شروع به اجرا میکند، حفاظت را فعال مینماید. حتی برای یک مهاجم ماهر، دور زدن سدهای امنیتی که حفاظت از زمان اجرا را به شکل واقعی اعمال میکند، بسیار دشوار خواهد بود.
توقف اجرای کد تحت تأثیر مهاجم
حفاظت واقعی در زمان اجرا مستلزم بررسی و تحلیل کامل نرمافزار با تعیین سریع نحوه اجرای کد ارائه شده توسط دولوپر در یک آن و لحظه است. هنگامی که کد کنترل شده توسط مهاجم شروع به اجرا میکند، مجموعه باید فوراً آن را متوقف کند. عدم انجام این کار عواقب ناگواری را به دنبال خواهد داشت که تماماً توسط مهاجم کنترل میشود. توانایی تعیین دقیق زمانی که کد تحت تأثیر مهاجم شروع به اجرا کرده است فراتر از آسیبپذیریهای شناخته شده و ناشناخته، رفتارهای مخرب در گذشته و شاخص هایدر معرض خطر بودن است.
اعمال حفاظت واقعی
کنترلهای امنیتی که یک حفاظت واقعی را پیادهسازی میکنند، نحوه اجرای برنامه را در هر مرحله تعیین میکنند و کارهایی را که نباید انجام بپذیرند را متوقف میکنند، و این کار را در لحظه (قبل از وقوع حمله) انجام میدهند. با حفاظت واقعی، زمانی برای استقرار مهاجمان وجود نخواهد داشت، بنابراین عوامل تهدید هرگز فرصتی برای نصب بدافزار یا استخراج دادهها به دست نمیاورند.
نتیجه گیری
ابزارهای امنیتی متعارف نمیتوانند از شما در برابر آسیبپذیریهای RCE محافظت کنند. برای محافظت بهتر از workload سرور خود در برابر این حملات، سازمانها باید بر نحوه اجرای نرمافزارهایشان احاطه و تسلط کامل داشته باشند و بدون در نظر گرفتن تهدیدها، آسیبپذیریها یا وضعیت پچها، از هر گونه انحراف در کسری اژ ثانیه جلوگیری نمایند.
برچسب ها: Discourse, اجرای کد از راه دور, Security Control, reverse shell, Workload, Kaseya, Payload, RCE, Hafnium, Patch, cybersecurity, CISA , آسیبپذیری, Remote Code Execution, امنیت سایبری, Cyber Attacks, حمله سایبری