مهندسی اجتماعی یک متد غیر فنی نفوذ به یک سیستم یا یک شبکه است. این کار در واقع فریب دادن کاربران یک سیستم و متقاعد کردن آنها به انجام کارهای پرفایده برای هکر است. مانند گرفتن اطلاعاتی از آنها که بتوان در شکستن یا دور زدن مکانیزم امنیتی استفاده کرد . درک مفهوم مهندسی اجتماعی مهم است زیرا هکرها می توانند با استفاده از آن به عنصر انسانی یک سیستم حمله کرد و معیارهای فنی امنیتی را دور زد . این متد را می توان در جمع آوری اطلاعات قبل یا طی یک حمله استفاده کرد .
یک مهندس اجتماعی معمولا از تلفن یا اینترنت برای فریب مردم به منظور آشکارسازی اطلاعات حساس استفاده می کند یا با گرفتن آنها بر ضد قوانین امنیتی سازمان استفاده می کند .با استفاده از این شیوه مهندسین اجتماعی به جای نفوذ به حفره های امنیتی کامپیوتر , از گرایش طبیعی یک شخص بهره می گیرند تا شخص به سخنانشان اعتماد کنند. همگان موافقند که کاربران پیوند ضعیفی در امنیت هستند . این اصل چیزی است که عملکرد مهندسی اجتماعی را ممکن می سازد .
در زیر یک مثال از مهندسی اجتماعی توسط Kapil Raina که وی هم اکنون از متخصصین امنیتی VeriSign است آورده شده است . این مثال بر پایه یک تجربه واقعی محیط کاری با یک کارمند اسبق می باشد .
یک روز صبح سالها قبل گروهی از افراد غریبه وارد یک شرکت بزرگ حمل و نقل می شوند و پس از دسترسی به کل شبکه سازمانی خارج می شوند .
آنها چگونه این کار را صورت دادند ؟
از طریق بدست آوردن مقادیر اندک دسترسی , بیت به بیت , از شماری از کارمندان همان شرکت . اول آنها حتی قبل از اینکه به محل شرکت پا بگذارند درباره این شرکت به مدت دو روز تحقیق و جستجو کردند . برای مثال یادگرفتند که کلمه رمز نام کارمندان صدا کردن آنها با کلمه HR است . سپس وانمود کردند کلید درب جلویی را گم کرده اند و مرد نگهبان هم اجازه ورود به آنها را داد .سپس وقتی وارد طبقه سوم یعنی منطقه ایمن شدند وانمود کردند که نشان های شناسایی خود را گم کرده اند و لبخندی زدند و یک کارمند مهربان در را برای آنها باز کرد .
افراد غریبه می دونستند که مدیر ارشد اجرایی (CFO) خارج از شهر است , پس قادر بودند تا که به دفتر وی وارد شوند و داده های مالی را از کامپیوتر قفل نشده وی بدست آورند . آنها داخل سطل زباله سازمان جستجو کردند و انواع اسناد مفید را پیدا کردند . آنها از یک سرایدار درخواست کردند تا اسناد خود را در داخل محفظه انتقال زباله گذاشته و به خارج شرکت منتقل کند و خارج از شرکت تحویل آنها دهد .غریب ها صدای مدیر ارشد اجرایی را یادگرفته بودند بنابراین آنها قادر بودند تا تلفن بزنند و وانمود کنند که مدیر ارشد هستند و در یک حمله قرار گرفته اند و به سختی نیازمند پسورد شبکه هستند . از آنجا آنها با استفاده از ابزارهای معمول هک به دسترسی کاربر ارشد دست یافتند .
در این مورد , افراد غریبه مشاورین امنیتی شبکه بودند که بدون داشتن هیچ دانشی از کارمندان سازمان , یک بازرسی امنیتی برای مدیر ارشد اجرایی انجام دادند . آنها هرگز هیچ اطلاعات ممتاز و خاصی از مدیر ارشد اجرایی دریافت نکردند اما قادر بودند که تمام دسترسی های خواسته شده را از طریق مهندسی اجتماعی انجام دهند .
خطرناک ترین بخش مهندسی اجتماعی این است که شرکت ها با پروسه های تشخیص هویت , فایروال ها , شبکه های خصوصی مجازی (VPNs) و نرم افزارهای مانیتور شبکه هنوز هم خیلی به روی حملات باز و آسیب پذیر هستند , چونکه مهندسی اجتماعی به طور مستقیم به معیارهای امنیتی حمله نمی کند . به جای آن یک حمله مهندسی اجتماعی معیارهای امنیتی را دورزده و به دنبال عناصر انسانی یک سازمان می رود .
هنر دستکاری و سو استفاده
مهندسی اجتماعی عبارت است از بدست آوردن اطلاعات حساس یا امتیاز دسترسی ناشایست توسط یک شخص بیگانه بر اساس بنای نامناسب اعتماد در روابط می باشد . هدف یک مهندس اجتماعی فریب دادن شخصی به منظور فراهم کردن اطلاعات ارزشمند یا دسترسی به آن اطلاعات است . مهندسی اجتماعی بر اساس خصوصیت های طبیعی بشر همچون آرزوی مفید بودن , تمایل به اعتماد به مردم و ترس از دچار مشکل شدن شکار می کند . هکرها افرادی که قادر به قاطی شدن و پدیدار شدن به عنوان بخشی از سازمان هستند بیشترین موفقیت را در حمله های مهندسی اجتماعی بدست می آورند . توانایی یکی شدن با افراد معمولا به عنوان بخشی از هنر سواستفاده است . مردم معمولا ضعیف ترین پیوند زنجیره امنیت هستند . یک دفاع موفق بستگی به داشتن پالیسی ها و سیاست ها و آموزش آنها به کارمندان می باشد . مهندسی اجتماعی سخت ترین شکل حمله برای دفاع مقابل می باشد چونکه در آن یک شرکت نمی تواند بوسیله سخت افزار یا نرم افزار از خود محافظت کند .
انواع حملات مهندسی اجتماعی
حملات مهندسی اجتماعی را می توان به دو نوع معمول تقسیم بندی کرد :
- متکی به انسان : مهندسی اجتماعی متکی به انسان , به هم کنش شخص به شخص برای بازیابی اطلاعات هدف اشاره دارد . یک مثال صدا کردن یک Help Desk به منظور پیداکردن یک پسورد است .
- متکی به کامپیوتر : مهندسی اجتماعی متکی به کامپیوتر , به داشتن نرم افزار کامپیوتر که تلاش کند اطلاعات هدف را بازیابی کند , اشاره دارد . مثالی از آن فرستادن یک ایمیل و درخواست از آنها برای ورود مجدد پسورد در یک صفحه جدید به منظور تایید آن می باشد . این حمله مهندسی اجتماعی همچنین با نام Phishing نیز خواند می شود .
حملات مهندسی اجتماعی مبتنی بر انسان
تکنیک های مهندسی اجتماعی مبتنی بر انسان را می توان به طور گسترده به دسته بندی های زیر تقسیم کرد :
- تقلید صدای یک کارمند یا یک کاربر مورد تایید : در حملات مهندسی اجتماعی از نوع تقلید صدا , هکر وانمود می کند که یکی از کارمندان یا کاربران مورد تایید سیستم است . یک هکر می تواند از طریق تظاهر به این که یک سرایدار , کارمند یا پیمانکار است دسترسی فیزیکی نیز پیدا کند . وقتی که کار راحت شد هکر از سطل زباله , دسکتاپ یا سیستم ها کامپیوتری اطلاعات را جمع آوری می کند .
- وانمود کردن بعنوان یک کاربر مهم : در این نوع حمله , هکر وانمود می کند که یکی از کاربران مهم همچون یکی از قوای اجرایی یا مدیران سطح بالاست که نیاز دستیاری فوری به دسترسی به یکی از کامپیوترها سیستم یا فایل ها دارد . هکر از تهدید استفاده می کند تا یک کارمند سطح پایین تر همچون یک Help Desk به او برای بدست آوردن دسترسی به سیستم کمک کند . اکثر کارمندان سطح پایین از اشخاصی که در جایگاه قدرت قرار می گیرند سوالی نمی پرسند .
- استفاده از سوم شخص : یکی از دیگر از انواع حملات مهندسی اجتماعی استفاده از سوم شخص می باشد . با استفاده از رویکرد سوم شخص , یک هکر وانمود می کند که اجازه ای از یک منبع مجاز برای استفاده از یک سیستم دارد . این حمله بویژه اگر منبع مجاز معرفی شده در تعطیلات باشد و به منظور تایید نتوان با وی تماس گرفت بسیار موثر خواهد بود .
- تماس پشتیانی فنی : تماس پشتیبانی فنی برای کمک یک تکنیک کلاسیک مهندسی اجتماعی می باشد . Help Desk و پرسنل پشتیبان فنی آموزش دیده اند تا به کاربران کمک کنند که آنها را به طعمه خوبی برای حمله های مهندسی اجتماعی تبدیل می کند.
- مشاهده پسورد از روی دست : حملات مهندسی اجتماعی Shoulder surfing یک تکنیک جمع آوری پسوردها از طریق نگاه کردن به دست فرد هنگام لاگین کردن به سیستم است . یک هکر می تواند یک لاگین صحیح کاربر را تماشا کند و سپس از آن پسورد برای دسترسی به سیستم استفاده کند .
- استفاده از زباله دان : Dumpster diving مستلزم جستجو در سطل زباله برای پیدا کردن اطلاعات نوشته شده بر روی تکه های کاغذ یا نتایج چاپی کامپیوتر است . هکر غالبا پسوردها , اسامی فایل ها و یا دیگر قطعه های اطلاعاتی محرمانه را پیدا می کنند .
- یک متد پیشرفته تر به دست آوردن اطلاعات غیر مجاز با نام مهندسی معکوس اجتماعی معروف است . با استفاده از این تکنیک یک هکر شخصیتی می سازد که در موقعیتی از قدرت نمایان شود که کارمندان اطلاعات خود را از هکر پرسش کنند , به جای دیگر راهها . برای مثال, یک هکر می تواند نقش یک کارمند Help Desk را بازی کند و به کاربر اطلاعاتی همچون پسورد را بدهد .
حملات مهندسی اجتماعی مبتنی بر کامپیوتر
حمله های مهندسی اجتماعی مبتنی بر کامپیوتر می تواند شامل موارد زیر باشد :
- Email attachments پیوست های ایمیل
- Fake websites وبسایت های جعلی
- Pop-up windows پنجره های پاپ آپ
- Insider Attacks حمله از داخل (حمله از سمت کارمندان خودی) : اگر که یک هکر نتوان هیچ راه دیگری برای هک یک سازمان پیدا کند , بهترین گزینه بعدی رخنه کردن در سازمان از طریق استخدام شدن به عنوان یکی از کارمندان یا پیداکردن یک کارمند ناراضی برای کمک در حمله می باشد . حمله های داخلی می تواند قدرتمند باشد چونکه کارمندان دسترسی فیزیکی دارند و می توانند آزادانه در سازمان حرکت کنند . یک مثال ممکن است شخصی باشد که از طریق پوشیدن یک یونیفورم و بدست آوردن دسترسی خود را به عنوان یک مامور تحویل جا زده و به اتاق تحویل یا محل تحویل دسترسی پیدا کند . یک احتمال دیگر اینکه شخصی خود را جای یک نظافتچی که به داخل ساختمان دسترسی دارد و معمولا می تواند بین دفاتر جابجا شود , جا زده . به عنوان آخرین راهکار یک هکر ممکن است رشوه دهد یا اینکه یک کارمند را مجبور کند تا به منظور فراهم کردن اطلاعاتی همچون پسورد ها در حمله با وی شریک شود .
- Identity Theft سرقت هویت : یک هکر می تواند وانمود کند که یکی از کارمندان است یا شناسه هویت وی را سرقت کند تا اقدام به یک حمله کند . اطلاعات جمع آوری شده از زباله دان یا سرقت پسورد از روی دست یا ترکیبی از آنها با شناسه های جعلی می تواند هکر را به داخل سازمان هدایت کند . ایجاد شخصیتی که بتواند بدون چالش به ساختمان وارد شود , هدف سرفت هویت است .
- Phishing Attacks حملات فیشینگ : حملات مهندسی اجتماعی از نوع فیشینگ مستلزم ارسال یک ایمیل است و معمولا خود را به عنوان یک بانک , شرکت کارت اعتباری , یا دیگر سازمان های مالی جا می زنند . درخواست های ایمیلی که دریافت کننده اطلاعات بانکی را تایید کند یا پسورد جدید یا پین کد خود را ریست کند . کاربر بر روی لینک داخل ایمیل کلیک کرده و به یک صفحه وبسایت جعلی هدایت می شود . سپس هکر قادر خواهد بود تا این اطلاعات را بدست آورده و از آن به منظور بدست آوردن منافع مالی یا اقدام به دیگر حمله ها استفاده کند . ایمیل هایی که مدعی می شوند ارسال کننده مقدار زیادی پول در اختیار دارد ولی برای بدست آوردن آن به شخصی خارج از کشور نیاز دارد . اینها مثال هایی از حمله های فیشینگ هستند . این حمله ها افراد معمولی را طمعه خود قرار می دهند تا به کدهای حساب بانکی و دیگر اطلاعات محرمانه آنها به منظور هک کردن دسترسی پیدا کنند .
- Online Scams کلاهبرداری آنلاین : برخی وبسایت ها که پیشنهادات رایگان و یا دیگر معاملات ویژه را ارایه می کنند می توانند یک قربانی را به منظور وارد کردن نام کاربری و رمز عبوری که ممکن است همان باشد که در سیستم کاری برای دسترسی استفاده می کند جذب کند . هکر می تواند از این نام کاربری و رمزعبور معتبر هنگامی که کاربر اطلاعات را وارد فرم سایت کرد استفاده کند .
- پیوست های ایمیل را می توان در ارسال کدهای مخرب به سیستم قربانی استفاده کرد که می تواند به طور خودکار چیزی مثل یک نرم افزار Keylogger به منظور کپچر پسوردها را اجرا کند . ویروسها , تروجان ها و کرمها را می توان هوشمندانه در ایمیلهای دستکاری شده قرار داد تا قربانی را به باز کردن آنها وسوسه کنیم . این یک مثال از ایمیلی است که تلاش می کند تا دریافت کننده را قانع کند که یک فایل پیوست نا امن را باز کند .
- گزارش سرور ایمیل : فایروال ما ایمیل هایی که شامل کپی کرم ها هستند را از کامپیوتر شما ارسال شده را تشخیص داده . امروزه این اتفاق در کامپیوترهایی زیادی رخ می دهد چونکه این یک نوع ویروس جدید می باشد (کرمهای شبکه) با استفاده از باگ جدید در ویندوز , این ویروسها کامپیوتر را به طور محسوس آلوده می کنند . بعد از نفوذ به کامپیوتر ویروس همه آدرسهای ایمیل را برداشته و یک کپی از آنها را به آدرس ایمیل خود ارسال می کند .
- همچنین پنجره های پاپ آپ می توانند در حملات مهندسی اجتماعی مبتنی بر کامپیوتر مورد استفاده قرار گیرند درست به همان نحوی که پیوست های ایمیل عمل می کردند . پنجره های پاپ آپ با پیشنهادهای ویژه یا چیزهای رایگان می تواند یک کاربر را به نصب نرم افزارهای مخرب تشویق کند .
- URL Obfuscation مبهم کردن آدرس : آدرس یوآرال (URL (Uniform resource locator معمولا در آدرس بار مرورگر به منظور دسترسی به یک سایت بخصوص استفاده می شود . به عبارت غیرتخصصی URL آدرس وبسایت می باشد .
- مبهم کردن آدرس شامل پنهان شدن یک آدرس جعلی به طوری که یک آدرس مشروع وبسایت نمایش داده شود . برای مثال وبسایت /Citibank 204.13.144.2 ممکن خود را به عنوان به عنوان آدرس مشروع بانک معرفی کند , در صورتی که حقیقتا اینگونه نیست . مبهم کردن آدرس در حمله های فیشینگ و برخی کلاهبرداری های آنلاین به منظور قانونی تر نشان دادن کلاهبرداری استفاده می شود . یک آدرس وبسایت ممکن است با عنوان نام یا لوگو واقعی یک موسسه دیده شود , ولی لینک کاربر را به آدرس آیپی یا وبسایت جعلی هدایت می کند . وقتی که کاربران بر روی لینک کلیک می کند , در حقیقت آنها به سایت هکر هدایت می شوند . آدرس ها می توانند از طریق لینک های مخربی که در آنها نشانه های هگزادسیمال یا دسیمال به کار رفته مبهم شوند . برای مثال آدرس ۱۹۲٫۱۶۸٫۱۰٫۵ به عنوان یک دسیمال شبیه ۳۲۳۲۲۳۸۰۸۵ میباشد . همان آدرس به عنوان هگزادسیمال شبیه C0A80A05 می باشد . این تبدیل نیازمند این است که شما ۳۲۳۲۲۳۸۰۸۵ را چندین با بر ۱۶ تقسیم کنید . در هربار تقسیم باقیمانده , آدرس را آشکار می کند , با شروع از کمترین مقدار قابل توجه .
مقابله با حملات مهندسی اجتماعی
دانستن اینکه چگونه با مهندسی اجتماعی مبارزه کنیم برای هر هکر اخلاقی حیاتی است . در اینجا شماری از راههای انجام این کار وجود دارد : Policy های امنیتی و برنامه های آگاه سازی امنیتی به صورت مستند و به اجرا گذاشته شده مهمترین اجزا در هر برنامه امنیتی هستند . Policy های خوب و رویه ها اگر به کارمندان اجبار نشوند و آموزش داده نشوند و تاثیرگذار نخواهند بود . پالیسی ها بایستی به کارمندان ابلاغ شوند تا بر اهمیت آنها تاکید شوند و سپس توسط مدیریت اعمال شوند . بعد از دریافت آموزش آگاهی امنیتی , کارمندان متعهد به پشتیبانی و اعمال پالیسی های امنیتی سازمان خواهند بود .
پالیسی های امنیتی به ثبت رسیده بایستی نشان دهد که حساب های کاربری چه زمانی نصب و فسخ شوند , چند وقت یکبار پسوردها تغییر می کنند , چه کسی به چه داده ای دسترسی دارد و چگونه به تخطی از پالیسی ها رسیدگی شود . همچنین Policy بایستی جزییات رویه های Help Desk را برای وظایف قبلی بعلاوه پروسه ای برای تشخیص کارمندان , بعنوان مثال استفاده از یک شماره کارمندی یا دیگر اطلاعات برای تایید برای تغییر یک پسورد . نابودی اسناد کاغذی و ممانعت از دسترسی فیزیکی دیگر نواحی امنیتی است که پالیسی های امنیتی بایستی به آنها بپردازد . سرانجام پالیسی بایستی به نواحی فنی بپردازد , مثل استفاده از مودم ها و کنترل Virus ها .
یکی از فواید داشتن پالیسی های امنیتی قدرتمند این است که مسولیت کارمندان در قضاوت درباره تماس ها را حذف می کند , صرف نظر اینکه تماس دریافتی درخواستی از سوی یک هکر است یا خیر . اگر حرکت درخواستی توسط پالیسی ها منع شده باشد , کارمند دستورالعمل های برای نپذیرفتن آن دارد .
مهمترین اقدام های متقابل برای مهندسی اجتماعی آموزش کارمندان است . همه کارمندان بایستی آموزش ببینند که چگونه اطلاعات محرمانه را ایمن نگاه دارند . تیم های مدیریتی در ایجاد و پیاده سازی Policy های امنیتی درگیر هستند بنابراین آنها کاملا آن را می فهمند و در طول سازمان آن را پشتیبانی می کنند . آگاه سازی پالیسی های امنیتی شرکت بایستی همه کارمندان جدید را نیز وارد جهت گیری های امنیتی کند . کلاس های سالیانه بایستی به منظور یادآوری و به روزرسانی اطلاعات برای کارمندان اعمال شوند . یک راه دیگر به منظور افزایش درگیری کارمندان با پالیسی ها می تواند از طریق خبرنامه های ماهانه با مقالات اطلاع رسانی امینیتی باشد .