رایجترین حملات سایبری - بخش دوم

حمله سایبری به هر نوع حملهای گفته میشود که سیستمهای اطلاعات کامپیوتری، زیرساختها، شبکههای کامپیوتری یا دستگاههای کامپیوتر شخصی را برای سرقت، تغییر یا تخریب دادهها و سیستمهای اطلاعاتی مورد هدف قرار دهد. در مطلب قبل (رایجترین حملات سایبری - بخش اول) به 5 مورد از رایجترین حملات سایبری پرداخته شد. در این مطلب 5 مورد دیگر را بررسی خواهیم کرد.
حملات تزریق SQL[1]
تزریق SQL به معضلی رایج درباره وبسایتهای مبتنی بر پایگاه داده تبدیل شده است. این حمله زمانی رخ میدهد که یک خرابکار یک پرسوجوی SQL را از طریق دادههای ورودی از کلاینت به سرور در یک پایگاه داده اعمال کند. حملهکننده دستورات SQL را از طریق ورودی فرستنده داده (برای مثال به جای نام کاربری و پسورد) برای اجرای دستورات از پیشتعیینشده SQL وارد میکند. یک حمله تزریق SQL موفق میتواند دادههای حساس را از پایگاه داده بخواند، پایگاه داده را تغییر دهد، عملیاتهای مدیریتی (مانند Shutdown) روی پایگاه داده اجرا کند، محتویات یک فایل داده شده را بازیابی کند و در برخی موارد دستوراتی را به سیستم عامل صادر کند. برای مثال، یک فرم وب در یک وبسایت ممکن است نام کاربری یک کاربر را درخواست کرده و در ادامه آن را برای بیرون کشیدن اطلاعات کاربری همراه حساب با استفاده از یک کد Dynamic SQL مانند
“SELECT * FROM users WHERE account = ‘“ + userProvidedAccountNumber +”’;”
ارسال کند. درحالیکه کد فوق برای کاربرانی که به درستی شماره حساب کاربری خود را وارد میکنند کار میکند، حفرهای برای حملهکنندگان ایجاد میکند. برای مثال، اگر کسی تصمیم بگیرد شماره حساب “‘ or ‘1’ = ‘1’” را ارائه کند، انجام این عمل منجر به پرسوجوی زیر میشود:
“SELECT * FROM users WHERE account = ‘’ or ‘1’ = ‘1’;”
از آنجا که 1’ = ‘1’ همیشه به TRUE ارزیابی میشود، پایگاه داده در پاسخ به این پرسوجو دادههای متناظر با همه کاربران را به جای دادههای یک کاربر مشخص باز میگرداند.
برای محافظت در برابر حملات تزریق SQL مدل حداقل اختیارات را به پایگاه دادهها اعمال کنید. به رویههای ذخیرهشده (مطمئن شوید این رویهها شامل Dynamic SQL نباشند) و دستورات آماده شده (پرسوجوهای پارامتردهی شده) مقید باشید. کدی که بر روی پایگاه داده اجرا میشود باید به اندازه کافی قوی باشد تا از حملات تزریق جلوگیری کند. علاوهبراین، دادههای ورودی را در مقابل یک لیست سفید در سطح Application بررسی کنید.
حمله XSS یا تزریق کد از وبگاههای مختلف[2]
حملات XSS از منابع وب شخص سوم برای اجرای Script در مرورگر قربانی استفاده میکنند. به طور مشخص، حملهکننده یک Payload حاوی JavaScript مخرب در پایگاه داده یک وبسایت تزریق میکند. زمانی که قربانی صفحهای از وبسایت را درخواست میکند، وبسایت صفحه همراه با Payload حملهکننده، به عنوان قسمتی از بدنه HTML، را به مرورگر قربانی منتقل میکند و در ادامه Script مخرب اجرا میشود. برای مثال Script مخرب ممکن است که کوکی قربانی را به سرور حملهکننده ارسال کند و حملهکننده میتواند از آن برای Session hijacking استفاده کند. بیشترین پیامدها زمانی رخ میدهد که از حملات XSS برای بهرهبرداری آسیبپذیریهای بیشتر استفاده شود. این آسیبپذیریها میتوانند حملهکننده را نه تنها قادر به سرقت کوکیها کرده بلکه برای ثبت ضربات کلید در صفحه کلید، گرفتن تصویر از نمایشگر رایانه، کشف و جمعآوری اطلاعات شبکه و دستیابی و کنترل از راه دور ماشین قربانی مورد استفاده قرار گیرند.
برای محافظت در برابر حملات XSS، توسعهدهندگان باید دادههای ارسالی به کاربران در یک درخواست HTTP را قبل از بازگرداندن آنها بررسی و تمیز کرده و مطمئن شوند همه دادهها قبل از ارسال به کاربر اعتبارسنجی شده و از فیلترهای لازم گذر کردهاند. علاوهبراین، کاراکترهای خاص مانند &، ?، >، < و ... را به کدگذاریهای معادلهای URL یا HTML متناظر با آنها تبدیل کنند و به کاربران اختیار غیرفعال کردن Scriptها در سمت کلاینت را دهند.
حمله استراقسمع[3]
حمله استراقسمع از طریق شنود ترافیک شبکه انجام میشود. با استراقسمع کردن، یک حملهکننده میتواند پسوردها، شماره کارتهای اعتباری و دیگر اطلاعات محرمانه را که ممکن است یک کاربر بر روی شبکه ارسال کند به دست آورد. استراقسمع میتواند به صورت فعال[4] یا غیرفعال[5] باشد:
- استراقسمع غیرفعال: هکر اطلاعات را با شنیدن پیامهای ارسالی در شبکه به دست میآورد.
- استراقسمع فعال: حملهکننده به صورت فعال و با جا زدن خود به عنوان یک واحد دوست و با ارسال درخواست به کاربران، اطلاعات محرمانه را به دست میآورد.
تشخیص استراقسمع غیرفعال اغلب از تشخیص نوع فعال این حمله مهمتر است زیرا حملات فعال نیاز دارند با انجام استراقسمعهای غیرفعال به کسب دانش در مورد کاربران هدف بپردازند.
حمله روز تولد[6]
حملات روز تولد در برابر توابع درهمساز، که برای بررسی جامعیت پیامها، نرمافزارها و امضاهای دیجیتال مورد استفاده قرار میگیرند، انجام میشوند. حاصل پردازش یک پیام توسط یک تابع درهمساز چکیدهای (که با MD نمایش داده میشود) با طول ثابت و مستقل از طول پیام ورودی است. حمله روز تولد بیانگر احتمال یافتن دو پیام تصادفی با MD یکسان است. اگر پیام انتخابی توسط یک حملهکننده دارای MD یکسان با پیام ارسالی توسط کاربر باشد، آنگاه حملهکننده میتواند به راحتی پیام کاربر را با پیام خود جایگزین کند و دریافتکننده حتی با بررسی MD نیز قادر به بررسی این جایگذاری نخواهد بود.
حمله بدافزارها[7]
نرمافزارهای مخرب یا بدافزارها را میتوان به عنوان نرمافزارهای ناخواستهای که بدون اطلاع روی سیستم نصب شدهاند توصیف کرد. بدافزارها میتوانند خود را به کدهای قانونی متصل کرده و منتشر شوند. در ادامه برخی از رایجترین انواع بدافزارها را خواهیم دید:
- ویروسهای ماکرو[8]: این ویروسها Applicationهایی مانند Microsoft Wordیا Microsoft Excel را آلوده میکنند. ویروسهای ماکرو به دنباله اولیهسازی[9] یک Application متصل شده و زمانی که Application باز میشود ویروس قبل از انتقال کنترل به Application دستورالعملهای خود را اجرا میکند. ویروس خود را تکثیر کرده و به دیگر کدها در سیستم کامپیوتری متصل میشود.
- آلودهکنندههای فایل[10]: ویروسهای آلودهکننده فایل خود را به کدهای قابل اجرا مانند فایلهای .exe متصل میکنند ودر زمان بارگیری فایل اجرایی نصب میشوند. نوع دیگری از آلودهکنندههای فایل یک فایل ویروس با نامی مشابه نام یک فایل اما با پسوند .exe ایجاد میکنند و در زمان باز شدن فایل کد ویروس اجرا میشود.
- آلودهکنندههای Boot-record (رکورد راهانداز) یا سیستم: یک ویروس Boot-record به Master boot record روی هارد دیسک متصل میشود. زمان شروع کار، سیستم به Boot sector نگاه کرده و ویروس را در حافظه بارگیری میکند جایی که ویروس میتواند به دیسکها و کامپیوترهای دیگر تکثیر شود.
- ویروسهای Polymorphic (چندریخت): این ویروسها خود را از طریق تغییر چرخههای رمزگذاری و رمزگشایی مخفی میکنند. تشخیص این نوع ویروسها سخت بوده اما با توجه به تعداد زیاد تغییر در کد منبع خود سطح بالایی از آنتروپی دارند. نرمافزارهای آنتیویروس میتوانند از این ویژگی برای تشخیص آنها استفاده کنند.
- ویروسهای مخفیکار[11] : ویروسهای مخفیکار برای مخفی کردن خود کنترل توابع سیستمی را به دست میگیرند. آنها این کار را با به مخاطره انداختن نرمافزارهای تشخیص بدافزار انجام میدهند تا نرمافزار یک ناحیه آلوده را غیرآلوده گزارش کند. این ویروسها هر افزایشی در اندازه یک فایل آلوده یا هر تغییری در روز و زمان آخرین تغییر ایجاد شده در فایل را مخفی میکنند.
- تروجانها[12]: تروجان برنامهای است که در یک برنامه مفید مخفی شده و به طور معمول عملکردی مخرب دارد. تفاوت اصلی بین ویروسها و تروجانها در این است که تروجانها خود را تکثیر نمیکنند. علاوه بر وارد کردن حمله به یک سیستم، یک تروجان میتواند یک Backdoor برقرار کرده که میتواند توسط حملهکنندگان مورد بهرهبرداری قرار گیرد. برای مثال، یک تروجان میتواند به گونهای برنامهریزی شده که یک پورت شماره بالا را باز کرده تا حملهکننده بتواند به شنود پرداخته و یک حمله را انجام دهد.
- بمبهای منطقی[13]: یک بمب منطقی نوعی نرمافزار مخرب است که به یک برنامه متصل شده و با وقوع یک رویداد مشخص مانند برآورده شدن یک شرط منطقی یا رسیدن به یک زمان خاص فعال میشود.
- کرمها[14]: تفاوت کرمها با ویروسها در این است که کرمها برنامههایی جامع بوده و بدون ضمیمه شدن به یک فایل میزبان در طول شبکه و کامپیوترها تکثیر میشوند. کرمها به طور معمول از طریق ضمائم ایمیلها منتقل میشوند و باز کردن ضمیمه ایمیل منجر به فعالسازی کرم میشود. یک بهرهبرداری رایج توسط کرمها شامل ارسال کپی از خود توسط کرم به هر آدرس تماس در کامپیوتر آلوده است. علاوه بر انجام اعمال مخرب، یک کرم در طول اینترنت منتشر شده و با وارد کردن بار اضافه به سرورهای ایمیل میتواند منجر به حملات منع خدمت در مقابل گرههای شبکه شود.
- Dropperها: Dropper برنامهای است که از آن برای نصب ویروسها روی کامپیوترها استفاده میشود. در اغلب نمونهها، Dropper خود به کد مخرب آلوده نشده و بنابرابن ممکن است توسط نرمافزارهای تشخیص ویروس شناسایی نشود. یک Dropper علاوهبراین میتواند به اینترنت متصل شده و بهروزرسانیهایی را روی یک ویروس مستقر روی یک کامپیوتر به مخاطره افتاده انجام دهد.
- باجافزار[15]: باجافزار نوعی از بدافزار است که دسترسی به دادههای قربانی را مسدود کرده و تهدید به نشر یا پاک کردن این دادهها در صورت عدم پرداخت باج میکند. باجافزارهای پیشرفته از تکنیکی به نام Cryptoviral extortion استفاده میکنند که در نتیجه آن فایلهای قربانی به روشی رمزگذاری میشود که رمزگشایی آنها بدون در اختیار داشتن کلید رمزگشا تقریبا غیرممکن باشد.
- تبلیغافزار[16]: تبلیغافزارها برنامههای نرمافزاری هستند که توسط شرکتها و با اهداف بازاریابی مورد استفاده قرار میگیرند. این بدافزارها بنرهایی تبلیغاتی هستند که در زمان اجرای هر برنامهای نمایش داده میشوند. تبلیغافزارها میتوانند به طور خودکار در زمان مشاهده یک وبسایت در یک سیستم دانلود شده و میتوانند از طریق Pop-up windowها یا از طریق صفحهای که به صورت خودکار در نمایشگر کامپیوتر ظاهر میشود، دیده شوند.
- جاسوسافزارها[17]: جاسوسافزار نوعی برنامه است که با هدف جمعآوری اطلاعات درباره کاربران، کامپیوتر آنها یا عادتهای آنها در مرور اینترنت نصب میشوند. این ابزار هر فعالیت انجام شده توسط کاربر را بدون اطلاع او ردیابی کرده و دادهها را به یک کاربر بیرونی ارسال میکند. علاوهبراین، جاسوسافزارها میتوانند برنامههای مخرب دیگر را دانلود و نصب نمایند. جاسوسافزارها همانند تبلیغافزارها عمل کرده اما به طور معمول برنامههایی مجزا بوده که ناآگاهانه در زمان نصب یک برنامه Freeware دیگر توسط کاربران نصب میشوند.
نتیجهگیری:
برای انجام یک دفاع خوب نیاز است تا حمله به طور مناسب شناسایی شود. در این مطلب و مطلب قبل (رایجترین حملات سایبری - بخش اول)،10 مورد از رایجترین حملات سایبری که حملهکنندگان از آنها برای مختل کردن و به مخاطره انداختن سیستمهای اطلاعاتی استفاده میکنند، مورد بررسی قرار گرفت. همانطور که میتوان دید گزینههای زیادی مانند حملات DDoS، استفاده از بدافزارها، حمله فرد در میانه، حدس گذرواژه با جستجوی کلی در راستای تلاش برای به دست آوردن دسترسی غیرمجاز به زیرساختهای حیاتی و دادههای حساس در اختیار حملهکنندگان است.
رویکردها در برطرف کردن این تهدیدات متفاوت هستند اما اصول امنیتی درباره همه آنها یکسان است: سیستم و پایگاه داده آنتیویروس را به روز نگه داشته، کارکنان را آموزش داده، فایروال را به گونهای پیکربندی کنید که تنها پورتها و میزبانهای مشخصی که به آنها نیاز دارید را در لیست سفید قرار داده، پسوردهایی قوی انتخاب کرده، اصل حداقل بودن اختیارات را رعایت کرده، به طور منظم پشتیبانگیری کرده، به طور منظم به حسابرسی سیستمهای IT خود برای شناسایی فعالیتهای مشکوک بپردازند.
[1] SQL injection
[2] Cross-Site scripting
[3] Eavesdropping attack
[4] Active
[5] Passive
[6] Birthday attack
[7] Malware attack
[8] Macro viruses
[9] Initialization sequence
[10] File infectors
[11] Stealth virus
[12] Trojan
[13] Logic bombs
[14] Worms
[15] Ransomware
[16] Adware
[17] Spyware
محصولات و خدمات حوزه امنیت اطلاعات و امنیت شبکه
دارای تاییدیه از مراجع معتبر داخلی و خارجی | نصب در مراکز معتبر | با افتخار تولید ایران
PEN TEST
APK WAF
APK ISMS
APK GATE
APK SOC
مشاوره با کارشناسان امنیت اطلاعات و امنیت شبکه
شرکت APK (امن پردازان کویر) در راستای اهداف خود آماده است تا به سازمانها ، شرکتها و واحدهای صنعتی مشاوره تخصصی در حوزه امنیت اطلاعات و امنیت شبکه را بصورت رایگان ارایه نماید