امنیت وب

  • حملات فیشینگ و روش‌های پیشگیری از آنها

    افزایش چشمگیر کلاهبرداری‌‌های اینترنتی در سال‌‌های اخیر و آسیب‌‌های فراوان مالی و روانی تحمیل شده به سازمان‌‌ها و افراد زنگ خطری جدی است که تصمیم گیران حوزه‌‌های مختلف را درگیر خود کرده است. در این میان بهره‌‌گیری از انواع حملات فیشینگ (Phishing) جزو قدیمی‌‌ترین، موثرترین و پرکاربرد‌‌ترین روش‌‌هایی است که کلاهبرداران و خرابکاران اینترنتی برای رسیدن به اهداف خود از آنها بهره می‌‌جویند. در این نوشتار در بیتسک به صورت اجمالی با انواع حملات فیشینگ و روش‌های پیشگیری از آنها خصوصا در بخش سازمانی آشنا می‌‌شویم.

    به عبارت ساده حملات فیشینگ (Phishing) به نوعی از حملات اطلاق می‌‌شود که هکر یا به تعبیری صحیح‌‌ تر کلاهبردار اینترنتی با بهره گیری از روش‌‌های فنی و روش‌‌های مهندسی اجتماعی (Social Engineering) و فریب و اقناع مخاطب، اطلاعات حساسی همچون اطلاعات هویتی و شخصی، گذر واژه‌‌ها و اطلاعات مالی مانند مشخصات کارت‌‌های اعتباری و رمز عبور آنها را به‌ دست می‌‌آورد.

    از شایع‌ترین این روش‌‌ها که کلاهبرداران اینترنتی در حملات فیشینگ از آنها بهره می‌‌برند می‌‌توان به مواردی همچون طراحی صفحات بانکی تقلبی (Website Phishing)، ارسال ایمیل حاوی اطلاعات مخرب (Email Phishing)، برقراری تماس تلفنی (Vishing) و ارسال پیام های کوتاه (Smishing) که در ذیل به صورت مختصر توضیح داده خواهند شد اشاره کرد:

    • طراحی صفحه‌‌‌‌‌‌ای تقلبی نظیر دروازه پرداخت اینترنتی به‌ پرداخت ملت https://bpm.shaparak.ir با ظاهری کاملا مشابه و اختلاف جزیی در آدرس مانند https://bpm.shapaarak.ir و یا https://bpm.shapparak.ir و فریب قربانی برای وارد کردن اطلاعات مالی.
    • ارسال ایمیل‌‌های فریب دهنده و متقاعد کننده حاوی لینک‌‌های مخرب با موضوعاتی در مورد بلایای طبیعی یا موضوعات سیاسی و اجتماعی روز و یا ایمیل‌‌های سازمانی تقلبی برای کارکنان یک سازمان یا یک موسسه مانند “بخشنامه ۷۶۷ تبدیل نیروهای قراردادی به رسمی مصوب هیئت دولت”، ” بخشنامه افزایش حقوق شماره ۳۴۷ مصوب هیئت مدیره شرکت”، ” بخشنامه شماره ۷۲۴ تعدیل نیرو مصوب سال ۱۳۹۸” و غیره.
    • برقراری تماس تلفنی و درخواست از قربانی برای اعلام مشخصات کارت بانکی و یا مراجعه به دستگاه خود‌‌ پرداز به بهانه‌‌هایی همچون پرداخت جایزه مسابقات تلویزیونی و غیره.
    • ارسال پیام‌‌های کوتاه (SMS)با محتوا و شماره تماس شبیه به مراجع قانونی و قضایی و درخواست از مخاطب برای کلیک برروی لینک یا نصب برنامه‌‌ای خاص.

    با توجه به افزایش نگران کننده آمار کلاهبرداری‌‌های اینترنتی و شانس موفقیت بالای روش‌‌های ذکر شده در بالا برای کلاهبرداران اینترنتی، آموزش و افزایش سطح آگاهی در مورد انواع حملات فیشینگ و روش‌‌های پیشگیری از آنها برای اقشار مختلف جامعه خصوصا در بخش سازمانی که موضوع این نوشتار است از اهمیت فوق العاده‌ای برخوردار است. در کنار تهدیدات حملات فیشینگ که عموم افراد جامعه را تهدید می‌‌کند، رقابت‌‌های تجاری بین کسب و کارهای مختلف و تلاش برای دستیابی به اطلاعات محرمانه تجاری رقیب جزو عواملی است که کارکنان سازمان‌‌های هدف را بیش از دیگر افراد جامعه در معرض خطر حملات فیشینگ قرار می‌‌دهد.

    طراحی و ایجاد برنامه آگاهی بخشی امنیتی (Security Awareness Program) برای سازمان‌‌ها و موسسات تجاری مختلف بدون شک بهترین راهکار برای آموزش و آگاه‌سازی کارکنان برای مقابله با انواع تهدیدات امنیتی از جمله تهدیدات حملات فیشینگ است. برنامه آگاهی بخشی امنیتی با برگزاری دوره‌‌های مستمر آموزشی منطبق بر سناریوها و تهدیدات دنیای واقعی می‌‌تواند ضمن افزایش دانش کارکنان، ریسک تهدیدات امنیتی را کاهش داده و امنیت داده‌‌های حساس سازمان و عدم نشت این اطلاعات را تا حد قابل قبولی تضمین کند.

    انجام تست‌‌های امنیتی کنترل شده برای ارزیابی دانش امنیتی و نقاط قوت و ضعف کارکنان یک موسسه یا سازمان از دیگر مزایای برنامه آگاهی بخشی امنیتی است. بخشی از این برنامه به ارزیابی دانش کارکنان در نحوه تعامل با تهدیدات حملات فیشینگ است. در این ارزیابی که با هماهنگی مدیریت و به وسیله متخصصین امنیت و آی‌‌تی سازمان انجام می‌‌گردد کارکنان به وسیله روش‌هایی که در بالا توضیح داده شد تحت ارزیابی‌‌های امنیتی مختلف قرار گرفته و خروجی و نتایج این آزمون‌‌ها برای شناسایی نقاط ضعف امنیتی سازمان و شکل‌‌دهی به آموزش‌‌های مورد نیاز کارکنان مورد استفاده قرار می‌‌گیرند.

    به طور مثال ایمیلی با عنوانی فریبنده حاوی اطلاعات جذاب در مورد افزایش حقوق و پاداش در زمانی مشخص برای تمام کارکنان تحت ارزیابی شده ارسال گشته و از آنها برای دریافت مزایای محتوای این ایمیل تقاضا می‌‌شود برروی یک لینک کلیک کرده و اطلاعات هویتی و کاری خود را در یک سامانه وارد کنند.

    نحوه واکنش کارکنان به این ایمیل و بررسی و یا عدم بررسی صحت و اصالت ایمیل دریافتی قبل از کلیک برروی لینک و وارد کردن اطلاعات درخواستی توسط آنها و نتایج و خروجی نهایی این ارزیابی، دسته بندی شده و برای شناسایی کارکنانی که نیاز به آموزش‌‌های امنیتی دارند و طراحی نوع و محتوای آموزش مورد استفاده قرار خواهند گرفت.

    ذکر این نکته ضروری است که تنها دلیل این ارزیابی‌‌ها آموزش و افزایش دانش امنیت کارکنان است و نباید نتایج این آزمون به صورت تنبیهی برعلیه کارکنان استفاده گردیده و موجبات عدم اطمینان به مدیریت و بخش آی‌‌تی سازمان را در آینده فراهم آورد.

    در پایان لازم به ذکر است همچون دیگر کشورها، طبق قوانین جرایم رایانه‌‌ای ایران کلاهبرداری‌‌های اینترنتی جرم بوده و مجازاتی از قبیل حبس و جرایم نقدی برای مجرمین در نظر گرفته شده است.

     

  • تست نفوذ و ارزیابی امنیتی

    متداولترین روشهای ارزیابی و تامین امنیت، تست نفوذ و ارزیابی امنیتی هستند که با توجه به اشتراکات و شباهت های فراوان در ساختار و نحوه اجرا، غالبا درک تفاوت های آنها برای مدیران و تصمیم گیرانی که خصوصا آشنایی دقیقی با روشهای تامین امنیت ندارند را مشکل مینماید. در این مقاله سعی خواهیم کرد به صورت اجمالی با تست نفوذ و ارزیابی امنیتی آشنا شده و به بعضی از شباهت ها و تفاوتهای آنها به صورت مختصر اشاره نماییم.

    تست نفوذ (Penetration Testing) متداولترین روش سنجش امنیت شبکه ها و سامانه های مختلف به منظور کشف آسیب پذیری ها در لایه های و بخش های مختلف منطبق بر جزییات و محدوده (Scope) تعیین شده در قرارداد تدوین شده و ارائه دقیق آنها به مشتریان است.

    برخورداری از دانش و آگاهی های امنیتی و آشنایی کامل با ساختارهای دفاعی (Defensive) و تسلط بر روشهای نفوذ و عبور از مکانیزمهای دفاعی(Offensive and Defense Evasion)  توسط متخصصین در آزمون تست نفوذ از اهمیت حیاتی برخوردار است.

    در این روش متخصصین تست نفوذ با شبیه سازی جدیدترین روش های نفوذی که توسط هکرها و نفوذ گران غیرقانونی استفاده میشود سامانه های مختلف را تحت آزمایش های امنیتی مختلف قرار داده و رخنه ها و آسیب پذیری های امنیتی کشف شده را غالبا با ارائه راهکارهای جلوگیری از نفوذ و رفع این آسیب پذیری ها (Mitigation and Prevention Methods) به مشتریان ارائه مینمایند.

    به صورت کلی خدمات تست نفوذ با توجه به قرارداد منعقد شده و درخواست مشتریان به سه روش جعبه سفید (White Box)، جعبه خاکستری (Grey Box) و جعبه سایه (Black Box) ارائه میشود.

    در روشهای ارائه شده روش جعبه سفید معمولا نفوذ از داخل توسط یکی از عوامل سازمان که به اطلاعات حیاتی همچون سخت افزارها و نرم افزارهای بکار رفته، سورس کدها، زیرساختهای شبکه سازمان، آدرس های آی پی و دیگر اطلاعات دسترسی دارد را شبیه سازی میکند.

    در روش جعبه خاکستری در مقایسه با روش جعبه سفید بخشی از اطلاعات در اختیار متخصص نفوذ قرار میگیرد که معمولا نفوذ از خارج سازمان توسط هکر ی که به بخشی از اطلاعات حیاتی دسترسی پیدا کرده شبیه سازی میشود.

    در روش جعبه سیاه که معمولا نفوذ از خارج سازمان را شبیه سازی میکند، بر خلاف روش جعبه سفید هیچ گونه اطلاعاتی در اختیار متخصص نفوذ قرار نمیگیرد و متخصص نفوذ تمام اطلاعات مورد نیاز برای انجام آزمونهای امنیتی را با استفاده از روشهای مختلف خود تامین خواهد کرد.

    هر کدام از این روشها دارای مزایا خاصی است که متقاضیان با توجه به نیازها و سیاستهای امنیتی سازمان متبوع خود میتوانند به انتخاب آن و انعقاد قرارداد اقدام نمایند. تست نفوذ بخش های مختلفی را شامل میشود که شاخص ترین آنها را بیان خواهیم کرد.

    • تست نفوذ شبکه

    خدمات تست نفوذ شبکه با انجام آزمونهایی از قبیل عبور از دیواره آتش (Firewalls Bypass)، عبور از سیستم های نرم افزاری و سخت افزاری، کشف و جلوگیری از نفوذ (IDS/IPS Bypass)، تست امنیت و نفوذ به روتر (Router Testing)، شناسایی دی ان اس (DNS Foot printing)، شناسایی پورت ها و سرویسهای فعال برروی آنها (Port Scanning and Installed Services)، آسیب پذیری ها در ساختار و تنظیمات شبکه (Network Configuration Vulnerabilities) و ده ها آزمون دیگر در شبکه های با سیم (Wired Networks) و شبکه های بی سیم (Wireless Networks) و ارائه راهکارهای مناسب فنی برای رفع آسیب پذیری های کشف شده ارائه میشوند.

    • تست نفوذ وبگاه های اینترنتی

    به طور کلی سرویس های تست نفوذ وبگاه های اینترنتی با بهره گیری از سه متد بین المللی شناخته شده نسخه چهارم پروژه منبع باز امنیت سامانه های وب (OWASP Testing Guide v4OSTMM از شرکت ISECOM و یا متد PTES و با توجه به نوع و ابعاد سامانه های تحت آزمون قرار گرفته، ارائه میگردند.

    با توجه به نوع تست نفوذ سمت کلاینت یا سمت سرور، آزمون هایی همچون تزریق (Injection)، احراز هویت ناقص ( Broken Authentication)، تزریق اسکریپت (XSS)، کنترل دسترسی معیوب (Broken Access Control)، عدم تنظیمات صحیح امنیتی (Security Misconfiguration) و ده ها آزمون دیگر بر روی سامانه های تحت آزمون انجام میگردد.

    • تست نفوذ نرم افزار موبایل

    در این بخش با بهره گیری از جدیدترین متدهای بین المللی تست نفوذ از جمله پروژه منبع باز موبایل (OWASP Mobile Top 10) در محیطی شبیه سازی شده، متخصصین اقدام به انجام تست نفوذ بر روی ضعف ها و آسیب پذیری های امنیتی از قبیل ذخیره سازی ناامن اطلاعات (Insecure Data Storage)، ارتباطات ناامن (Insecure Communication)، احراز هویت ناامن (Insecure Authentication)، رمز نگاری ناکافی (Insufficient Cryptography)،  مجوز های ناامن (Insecure Authorization) و غیره برروی نرم افزارهای مختلف بهرهمند از سیستم عامل های اندروید و آی او اس برای مشتریان خواهد نمود.

    • تست نفوذ سامانه های صنعتی

    تامین امنیت و امن سازی انواع سامانه ها و کنترلر های  صنعتی (Industrial Control System) همچون SCADA، DCS و PLC با توجه به استفاده گسترده در بخش های مختلف اعم از انرژی، درمان و خدمات عمومی از اهمیت فوق العاده بالا و حیاتی برای کشورمان برخوردار است. در کنار مشکلات امنیتی که مستقیما این سامانه ها را تهدید میکند، اتصال این سامانه ها به شبکه های ارتباطی سازمانها گرچه دسترسی و تعامل با این سامانه ها را راحتر میکند ولی به همان نسبت سطح تهدیدات امنیتی را گسترش میدهد.

    سیاستهای امنیتی سازمان (Security Policies)، امنیت کنترلر ها و تنظیمات امنیتی(ICS Secure Configuration) ، امنیت شبکه های ارتباطی ، امنیت پروتکل های ارتباطی بکار گرفته شده، بخش بندی و جداسازی فیزیکی و مجازی شبکه (Network Segmentation) از جمله موارد مهمی هستند که برای بخش تست امنیت سامانه های صنعتی مورد تست قرار میگیرند.

    • تست نفوذ با روشهای مهندسی اجتماعی

    مهندسی اجتماعی (Social Engineering) یا به تعریف برخی از روانشناسان هنر فریب(Art of Deception)  گرچه نسبت به دیگر تست های نفوذ نیازمند بهره گیری کمتری از مسایل فنی است ولی بدون شک یکی از موثرترین روشهای نفوذ و گردآوری اطلاعات حساس سازمان ها و شرکتهای مختلف با بهره گیری از تکنیک ها و ترفند های روانشناختی است.

    در تست نفوذ با بهره گیری از روشهای مهندسی اجتماعی متخصص نفوذ تلاش خواهد کرد با استفاده از ترفند های مختلف و متقاعد کردن کارکنان سازمان یا موسسه تحت تست قرار گرفته به اطلاعات حساس از جمله رمزهای عبور، اطلاعات شخصی کارکنان، اطلاعات مدیران و دیگر اطلاعات مهم دسترسی پیدا کند.

    برخلاف تصور عمومی این روش کارکرد و شانس موفقیت فوق العاده بالایی دارد و خصوصا در سازمانهایی که کارکنان آموزشهای لازم را ندیده باشند احتمال موفقیت این روش از دیگر روشهای تست نفوذ به مراتب بیشتر بوده و یکی از سریعترین روشها برای جمع آوری اطلاعات است. در مقالات بعدی با  مهندسی اجتماعی و اهمیت آموزش کارکنان با این روش بیشتر آشنا خواهیم شد.

    ارزیابی امنیتی (Vulnerability Assessments)، که از جهات مختلف شباهت هایی به تست نفوذ دارد و همچون سرویس ها تست نفوذ بخشهای امنیت شبکه، امنیت سامانه ها و وبگاه ها، نرم افزارهای موبایل و سامانه های صنعتی را در بر میگیرد، یکی دیگر از روشهای موثر ایمن سازی از طریق سنجش امنیتی بخش های مختلف سیستم ها و سامانه هایی که نیازمند برخورداری از پایداری و امنیت بالایی هستند است.

    متخصصین امنیت فراوانی بر این باورند که ارزیابی امنیتی پیش نیاز تست نفوذ بوده و باید بعد از استقرار سیستم امنیتی سازمان و بهینه سازی های امنیتی و انجام ارزیابی های امنیتی اقدام به تست نفوذ به عنوان آخرین مرحله سنجش و ارزشیابی امنیت کرد.

    در این میان یکی از شاخص ترین تفاوتهای بین تست نفوذ و ارزیابی امنیتی، عدم تلاش برای نفوذ  (Penetration)و بهره گیری از آسیب پذیری های کشف شده (Exploitation) در ارزیابی امنیتی برخلاف تست نفوذ است. در ارزیابی امنیتی معمولا با توجه به قرارداد منعقد شده ساختار آی تی سازمان با ابزارهای تخصصی دستی و اتوماتیک اسکن شده و نتایج حاصله به صورت مکتوب و مدون برای بهینه سازی های امنیتی در اختیار متقاضی قرار میگیرد.

    از دیگر تفاوتها بین تست نفوذ و ارزیابی امنیتی، برخلاف تست نفوذ که با توجه به نوع و حساسیتهای سیستم ها معمولا به صورت دوره ای و هر شش ماه یا یک سال یک بار انجام میگردد، ارزیابی امنیتی باید به صورت مداوم و برنامه ریزی شده خصوصا در زمان هایی همچون تغییرات ساختاری در سیستم های نرم افزاری یا سخت افزاری نصب شده، تغییرات در تنظیمات شبکه یا سامانه های وب صورت میگیرد و یا هنگامی که آسیب پذیری های جدید کشف و منتشر میشوند برای اطمینان از عدم تحت تاثیر گرفتن ساختار شبکه و آی تی سازمان انجام گردد.

    اصولی ترین روش بهره گیری از مزایای ارزیابی امنیتی برای سازمانها و شرکتها ادغام دائمی آن با برنامه آی تی سازمان و انجام مداوم آن با فاصله های زمانی کوتاه است.

     

  • استانداردها و متدولوژی های بین المللی تست نفوذ

    همانطور که در مقالات قبلی اشاره شد موثرترین، کارآمد ترین و کم هزینه ترین روش برای جلوگیری از نفوذ هکرها و خرابکاران سایبری تست و رفع آسیب پذیری ها و ایمن سازی نرم افزارها و سیستم ها در مرحله طراحی و قبل از ارائه نهایی آنها به مشتری خواهد بود. ولی به دلایلی همچون محدودیتهای زمانی، فنی و یا سهل انگاری در غالب موارد نرم افزارها و سیستم های توسعه داده شده از ایمنی مناسبی برخوردار نبوده و کشف و رفع ایرادات امنیتی و ایمن سازی بخشهای مختلف این سامانه ها حیاتی است. در این مقاله به صورت اجمالی با شاخص ترین استانداردها و متدولوژی های بین المللی تست نفوذ (Penetration Testing Methodologies) آشنا خواهیم شد.

    آشنایی با این استانداردها و متدولوژی های بین المللی تست نفوذ و انتخاب بهترین گزینه ها و نحوه بهره گیری و خصوصا بومی سازی آنها با توجه به نوع و ابعاد نرم افزارها و سیستم های مورد تست قرار گرفته از اصولی ترین قواعدی است که متخصصین امنیت باید به آنها اشراف کامل داشته باشند. مسلما مناسبترین استاندارد باید در برگیرنده مراحل مختلف تست نفوذ از ابتدایی ترین مرحله که بررسی و تعیین نیاز و دلایل، ابعاد، شرایط و زمان بندی تست نفوذ تا مرحله پایانی که تهیه گزارش جامع از تست های انجام شده و ارائه نتایج حاصله به مشتریان است باشد.

    متدولوژی های تست نفوذ متعددی برای استفاده فعالین و علاقه مندان امنیت طراحی و ارائه شده است که بخشی از آنها نیازمند پرداخت هزینه عضویت ماهانه یا سالانه و بخشی از آنها به صورت رایگان ارائه میشوند. در این مطلب با متدولوژی هایی که توسط OWASP ،ISECOM ،PS و NIST که از شناخته شده ترین استانداردهای ارائه شده در این زمینه هستند به صورت اجمالی آشنا میشویم.

    بدون شک مجموعه OWASP یا پروژه منبع باز امنیت سامانه های وب (Open Web Application Security Project)  از شاخص ترین موسسات فعال بین المللی در بخشهای مختلف امنیت نرم افزار خصوصا امنیت سامانه های وب است. در زمینه تهیه و ارائه متدولوژی های تست نفوذ OWASP از دسامبر ۲۰۰۴ با ارائه نسخه اول OWASP Testing Guide که در حال حاضر به نسخه چهارم که در سال ۲۰۱۴ تهیه شده ارتقا یافته و در دسترس عموم قرار دارد از پیشگامان این عرصه است. در مطالب آتی با این متدولوژی به صورت مفصل آشنا خواهیم شد.

    موسسه ISECOM نیز از ژانویه ۲۰۰۱ با ارائه دستورالعمل منبع باز متدولوژی تست امنیت (Open Source Security Testing Methodology Manual) یا OSSTMM که آخرین نسخه رایگان آن نسخه سه و نسخه چهارم آن به صورت پرداخت حق عضویت ارائه میگردند نقش مهمی در ترسیم سیاست های امنیتی سازمان ها برای ارائه و تست راهکارهای امنیتی بر عهده گرفته است.

    موسسه ملی استاندارد و تکنولوژی NIST نیز با استاندارد NIST Special Publication 800-115 از سال ۲۰۰۸ و در چهار بخش اصلی برنامه ریزی Planning، کشف Discovery، نفوذ  Attack و گزارش دهی Reporting جزو ارائه دهندگان استانداردهای تست نفوذ است.

    از دیگر متدولوژی ها شناخته شده استاندارد اجرایی تست نفوذ (Penetration Testing Execution Standard) یا PTES است که اولین نسخه آن در سال ۲۰۰۹ توسط تیمی از محققین امنیتی به سرپرستی آقای نیکرسون عرضه گردیده و به صورت اجمالی شامل هفت مرحله است. این استاندارد با بهره گیری از دیگر استانداردها همچون استاندارد OWASP Testing Guide در بخشهای مختلف خصوصا در بخش تست سامانه های وب متدولوژی تست نفوذ نسبتا جامعی را ارائه میکند. در مطالب آینده با این متدولوژی نیز به صورت مفصل آشنا خواهیم شد.

    در پایان بررسی اجمالی این چهار استاندارد ذکر این نکته ضروری است که امکان شبیه سازی صد در صدی شرایط حملاتی که از سوی هکرها و نفوذ گران انجام می شود برای تست نفوذ گر عملا وجود ندارد. برخلاف متخصص تست نفوذ که باید تابع و متعهد به قوانین و قواعد حاکم بر قرارداد منعقد شده باشد، هکرها ملزم به تبعیت از هیچکدام از این قواعد نیستند. به طور مثال اجتناب از وقوع انواع مختلفی از مشکلات تست نفوذ از قبیل از کار افتادگی سیستم ها (Crash) و زمان غیر قابل دسترس بودن سیستم ها تست نفوذ قرار گرفته (Downtime) که برای متخصص تست نفوذ قانونمند و حرفه ای از اهمیت بالایی برخوردار است، اهمیت چندانی برای هکر ها خصوصا هکرهای تازه کار (Script Kiddies) و هکرهای تخریب گر (Crackers) که به قصد تخریب سیستم ها را مورد حمله قرار میدهند  نخواهند داشت. از این رو امکان شبیه سازی کامل و دقیق حملات هکرها در تست های نفوذ به دلایل ذکر شده وجود نخواهد داشت و بهره گیری از دیگر روش های ایمن سازی در کنار تست نفوذ و عیب یابی برای حفظ امنیت و یکپارچگی سامانه های مختلف ضروری خواهد بود.

  • ایمن سازی نرم افزار با بهره گیری از Misuse Case و Threat Modeling

    هکرها و نفوذ گران غیر قانونی با استفاده از روشهای مختلف انواع آسیب پذیری ها در نرم افزارها را پیدا کرده و در تلاش خواهند بود که به سیستم های مختلف نفوذ و امنیت و اطلاعات حیاتی این سامانه ها را مورد سو استفاده قرار دهند، بنابراین بهره گیری از موثرترین روشهای ایمن سازی این سامانه ها برای حفظ امنیت و پایداری آنها الزامی است.

    مشکلات و حملات امنیتی که  نرم افزارها و سامانه های مختلف را درگیر میکنند غالبا به دلیل نقص هایی است که در طراحی و توسعه اولیه نرم افزارها رخ میدهند. متاسفانه این نقص های امنیتی سطح پایین و غالبا ابتدایی امکان سو استفاده وسیع توسط هکرها و نفوذ گران را فراهم مینمایند. حملاتی مانند حمله تزریق به پایگاه داده SQL Injection، آسیب پذیری های XSS و حمله سرریز بافر Buffer Overflow که سالهاست در صدر لیست ده حمله برتر OWASP قرار دارند و با روشهایی همچون صحت سنجی ورودی ها Input Validation قابل پیشگیری هستند، غالبا با سو استفاده از این دسته ایرادات امنیتی رخ میدهند.

    طراحی صحیح نرم افزارها و قراردادن نرم افزارهای طراحی شده تحت آزمایشهای امنیتی مختلف قبل از انتشار عمومی میتواند تا حد زیادی امنیت این نرم افزارها را در مقابل تهدیدات امنیتی تامین کند.

    از متداول ترین روشهای ایمن سازی در بین توسعه دهندگان نرم افزارهای مختلف، ایمن سازی چرخه توسعه نرم افزارها (SDLC) و شبیه سازی خطرات یا Threat Modeling هستند که دستورالعمل اجرایی این دو روش بر این قاعده استوار است که برنامه نویسان در سطوح مختلف باید از قواعد کد نویسی امن مطلع بوده و با استفاده از این روشها در مراحل مختلف توسعه نرم افزار احتمال سو استفاده های امنیتی را کاهش دهند. با این حال استفاده از این روشها و کد نویسی امن به تنهایی نمیتواند امنیت نرم افزارها را در مقابل تهدیدات امنیتی مختلف تضمین نماید و بهره گیری از دیگر روشهای ایمن سازی باید در دستور کار قرار گیرد.

    از دیگر روشهای نه چندان جدید ولی بسیار کاربردی استفاده از خروجی ها و نتایج تست های Misuse Case که بر پایه مدل Use Case که در بخش های مختلف توسعه نرم افزار طراحی شده است. در ساده ترین تعریف این دو مدل نحوه و امکان بهره گیری سیستم از قابلیت های پیش فرض طراحی شده در بخش های مختلف نرم افزار را Use Case و در طرف مقابل روشهای احتمالی سو استفاده از قابلیت های توسعه داده شده به منظور آسیب رساندن به امنیت و یکپارچگی نرم افزار توسط هکرها را به عنوان Misuse Case معرفی میکنند.

    در تست های Misuse Case برنامه نویس یا متخصص آنالیز نرم افزار تلاش خواهد کرد که از نگاه یک هکر امنیت و پایداری قابلیت های مختلف نرم افزار مورد نظر را در معرض انواع حملات و تهدیدات امنیتی احتمالی قرار دهد.

    در این مدل نرم افزار در حال توسعه با توجه به نوع و کاربرد آن باید حداقل تحت تست ها و حملاتی همچون منع سرویس (DoS)، تزریق پایگاه داده (SQL Injection)، بروت فورس (Brute Force)، سرریز بافر (Buffer Overflow) و بالا بردن سطح دسترسی (Escalation of Privileges) قرار گیرد.

    طراحی و اجرای Misuse Case مختلف بر روی بخش ها و قابلیتهای مختلف نرم افزار در حال توسعه غالبا کشف نقص های امنیتی مختلف را به دنبال خواهد داشت که این نقص های فنی و امنیتی بدست آمده ایجاد Use Case جدید و اصلاح قابلیت های فعلی و افزودن قابلیتهای امنیتی جدید در صورت نیاز برای جلوگیری و انسداد نقص های امنیتی کشف شده را در پی خواهد داشت. طراحی و اجرای دقیق تست های Misuse Case در کنار امکان کشف و ضبط نقص های امنیتی و راه های مقابله با آنها، امکان ایجاد تغییرات ساختاری در معماری کلی نرم افزار در جهت ایمن سازی را نیز به توسعه دهنده خواهد داد.

    دو مدل معرفی شده Threat Modeling و Misuse Case در کنار اشتراکات متعدد، در نحوه تعامل با بخش های توسعه ای نرم افزار تفاوتهای محسوسی با هم دارند. شاخص ترین آنها در نحوه تعامل با ساختار کلی و اجزای نرم افزار است، به نحوی که در شبیه سازی خطرات یا Threat Modeling تمرکز اصلی بر روی معماری و ساختار کلی نرم افزار و در مدل Misuse Case امکانات و قابلیتهای مختلف نرم افزار در حال توسعه به صورت جداگانه و دقیق مورد توجه و تست قرار میگیرند.

    در پایان این مطلب ذکر این نکته ضروری است که برای رسیدن به بهترین نتیجه ممکن و بهره گیری از مزایای ایمن سازی این دو مدل، توسعه دهندگان باید همکاری نزدیکی با متخصصین تست و آنالیز و دیگر اعضای تیم داشته باشند. از این جهت بهره گیری از جدیدترین و موثرترین روشهای جمع آوری اطلاعات از اعضای مختلف تیم در تمام بخش ها کاملا ضروری خواهد بود. برین استورمینگ Brain Storming از موثرترین و جدیدترین روشهای گردآوری اطلاعات از تمام اعضای مشارکت کننده در توسعه نرم افزار است. در این روش معمولا اعضای تیم در بخش های مختلف گرد آمده و ایده ها و نظرات خود را در مورد خطرات احتمالی و نحوه ایمن سازی نرم افزار مورد نظر را بدون محدودیت ارائه میدهند.

    خروجی این جلسات و اطلاعات دقیق از بخش های توسعه داده شده نرم افزار که در اختیار بخش برنامه نویسی قرار دارد در کنار دانش متخصصین آنالیز و بهره گیری از موثرترین مدلهای ایمن سازی میتواند موجب توسعه نرم افزاری ایمن و پایدار گردد.

     

  • هکر وان و مسابقات کشف باگ

    همانطور که در مطالب گذشته بیان شد Bug Bounty  یا مسابقات کشف باگ یکی از رو به رشد ترین و موثرترین روشهای ایمن سازی سامانه های اینترنتی است که سازمانها و موسسات فراوانی در حال بهره گیری و استفاده از این روش هستند.

    یکی از موفق ترین این شرکتها هکر وان  hackerone است. هکر وان در کنار ارائه سرویس های امنیتی و دوره های آموزشی با دانشگاه ها از جمله دانشگاه UC Berkeley بستری را برای شرکتها و سازمانها فراهم کرده که سیستمها و سامانه های اینترنتی خود را بدون محدودیت های جغرافیایی در معرض مسابقات کشف باگ و تست بهترین متخصصین نفوذ از سراسر دنیا قرار دهند.

    در این بین هکر وان به طور سالانه گزارشهایی جامعی را در بخشهای مختلف تهیه مینماید که حاوی مطالب بسیار مفید و آموزنده ای است که آگاهی از آنها برای هر فعال امنیت سایبری مفید خواهد بود و گستردگی و ابعاد مختلف این مسابقات را تبیین میکند.

    طبق گزارش جامع سال ۲۰۱۸ هکر وان، تعداد ۱۶۶ هزار متخصص امنیت یا هکر کلاه سفید از سراسر دنیا در سامانه این شرکت عضو هستند که در سال منتهی به دسامبر ۲۰۱۷ با کشف ۷۲ هزار نقص امنیتی در سامانه های مختلف رکورد جدیدی ثبت کردند. در این میان هکروان مبلغی بالغ بر ۲۳ میلیون دلار به این متخصصین پرداخت کرده است که نشان از پویایی و وسعت رو به رشد این صنعت دارد. طبق این گزارش متخصصین امنیت هندی با ۲۳ درصد بیشترین تعداد متخصص را در این سامانه به خود اختصاص داده اند. آمریکا ۲۰ درصد، روسیه ۶ درصد، پاکستان ۴ درصد، و انگلستان با ۴ درصد در رتبه های بعدی قرار میگیرند. در حالی که نزدیک به نیمی از این متخصصین تحصیلات مرتبط دانشگاهی در سطح لیسانس یا فوق لیسانس  داشته اند، ۵۸ درصد این متخصصین به صورت خود آموز فنون و تکنیکهای تست نفوذ و امنیت را فرا گرفته اند.

    سطح درآمد این متخصصین با توجه به تخصص و مقدار فعالیتشان از ۲۰ هزار تا ۳۵۰ هزار دلار در سال در نوسان است. دوازده درصد این متخصصین درآمد ۲۰ هزار دلار در سال از مسابقات کشف باگ کسب میکنند، این در حالی است که درآمد بیش از ۳ درصد از متخصصین ۱۰۰ هزار دلار و درآمد ۱٫۱ در صد نیز رقم شگفت انگیز ۳۵۰ هزار دلار در سال است که میانگین این درآمدها در کشوری همانند هند بر طبق آمار سایت  PayScale بیش از ۱۶ برابر درآمد یک مهندس کامپیوتر است. محدوده سنی متخصصین هکروان از ۱۳ تا ۶۴ سال است که البته جمعیت غالب در گروههای سنی زیر ۳۵ سال جای میگیرند. میانگین تجربه و دوره فعالیت این متخصصین بین یک تا بیست سال است. بر طبق این گزارش ۶۶ درصد اعضای هکروان هفته ای ۲۰ ساعت و ۲۰ درصد آنها هفته ای ۳۰ ساعت  از زمان خود را به کشف باگ اختصاص میدهند.

    ابزار Burp Suite با ۳۰ درصد جایگاه اول را در بین مورد استفاده ترین ابزار برای کشف باگ و تست نفوذ را به خود اختصاص میدهد. در رتبه دوم بیش از ۱۶ درصد متخصصین هکر وان اظهار داشته اند که ابزار اختصاصی خود را برای کشف باگ طراحی و مورد استفاده قرار میدهند. وب اسکنرها، اسکنرهای شبکه، فازرها، دیباگرها در جایگاه های بعدی قرار میگیرند.

    بر طبق گزارش هکروان اولویت اول بیش از ۷۰ درصد متخصصین امنیت انجام تست کشف باگ و نفوذ بر روی سامانه های اینترنتی (Web Sites) است. رابط برنامه نویسی نرم افزار (API) با ۷٫۵ درصد، تکنولوژی های مورد استفاده و در برگیرنده اطلاعات متخصص امنیت با ۵ درصد، برنامه های اندرویدی با ۴٫۲ درصد، سیستم عاملها با ۳٫۱ درصد و اینترنت اشیا با ۲٫۶ درصد در رتبه های بعدی قرار میگیرند.

    بر طبق این گزارش جذابترین تکنیک و روش تست با ۲۸ درصد Cross Site Scripting یا XSS است. تکنیک SQL Injection با ۲۳ درصد، Fuzzing با ۵٫۵ درصد و Brute Force با ۴٫۵ در جایگاه های بعدی قرار میگیرند.

    آمار ارائه شده از گزارش ۲۰۱۸ هکروان گویای مطالب مهمی است که میتواند در آگاه سازی متخصصین و علاقه مندان امنیت کشورمان خصوصا علاقه مندان به مسابقات کشف باگ و درآمد زایی از آن کمک شایانی بکند. قانون مداری و عدم سو استفاده از آسیب پذیری های کشف شده توسط متخصصین امنیت و نفوذ گران قانونمند و گزارش آنها به صاحبان سامانه ها و طبعا کسب درآمد از آنها و استقبال رو به افزایش شرکتها و موسسات مختلف به پذیرش گزارشهای کشف باگ، میتواند فضای سایبری امن تر را برای صاحبان صنایع مختلف و کاربران به ارمغان بیاورد.

  • تامین امنیت سامانه های اینترنتی

    تامین امنیت سامانه های اینترنتی با توجه به رخدادهای امنیتی رو به رشد یکی از مهمترین دغدغه های صاحبان این سامانه ها است. با توجه به پیچیدگی آسیب پذیری ها و حملات تحت وب که سامانه های اینترنتی را تهدید میکند، طراحی ها و پیکر بندی های امنیتی در هنگام طراحی و استقرار اولیه این سامانه ها قطعا جوابگو نخواهد بود و نیاز به پالایش های امنیتی و به روز رسانی ها مستمر لازم و اساسی است. روشهای متفاوتی برای تضمین امنیت سامانه های اینترنتی پیش روی صاحبان آنها وجود دارد که در این مقاله سعی میکنیم آنها را به صورت خلاصه بررسی نموده و مزایا و معایب هر کدام را به اختصار بیان نماییم.

    اغلب شرکتها و سازمانها برای بررسی های امنیتی معمولا با استخدام و عقد قرارداد با تیم های تست نفوذ و انجام این تست ها در تلاشند که سامانه های خود را در مقابل جدیدترین تهدیدات امنیتی مصون داشته و از زیرساختهای خود محافظت نمایند. انجام تست نفوذ به این روش در کنار مزایای همچون محیط کنترل شده (Limited Scope) تست نفوذ، بهره گیری از توافقنامه عدم انتشار (NDA) که متخصص نفوذ را ملزم و متعهد به عدم افشای آسیب پذیری های کشف شده میکند، چالشهایی از قبیل محدود بودن گستردگی و دقت این تست ها به دانش تست نفوذ گر را دارا خواهد بود.

    مسابقات کشف باگ یا Bug Bounty  یکی دیگر از روشهایی است که استفاده از آن در بین شرکتهای مختلف در حال افزایش است. مسابقات کشف باگ به سازمانها و موسسات این امکان را میدهد که سامانه ها و پرتال های مختلف خود را در محدوده زمانی مشخص با پاداش و دستمزدی معین در معرض تست طیف وسیعی از متخصصین امنیت و نفوذ گران قرار دهند. همانطور که اشاره شد مهمترین مزیت این روش در مقایسه با استخدام و عقد قرارداد با تیمهای نفوذ گر برای انجام تست نفوذ، بهره گیری از دانش و تخصص طیف وسیعی از نفوذ گران است. معمولا در این روش جوایز تعیین شده بعد از کشف باگ و تایید آن توسط داوران به نفوذ گر تعلق میگیرد که این روش را به یکی از اقتصادی ترین روشها برای تامین امنیت سامانه های اینترنتی تبدیل کرده است. از معایب این روش میتوان به عدم امکان بهره گیری از تعهدات الزام آور همچون توافقنامه عدم انتشار (NDA) که در روش قبل ذکر شد نام برد. شرکتهای فراوانی در سراسر جهان در این زمینه فعالند و بستر های لازم برای مسابقات کشف باگ را فراهم مینمایند. داوری و تعیین اصالت باگ ها و مشکلات امنیتی کشف شده و تعاملات مالی بین سرویس گیرنده و نفوذ گر به عهده این شرکتها است.

    روش دیگری که در کنار بهره گیری از تیم های امنیتی داخل سازمانی و استخدام تست نفوذ گران و مسابقات کشف باگ، در بین اکثر شرکتهای تراز اول بین المللی در حال گسترش است، طراحی و برخورداری از سیاست افشای آسیب پذیری ها VDP یا Vulnerability Disclosure Policy است. جزئیات و نحوه بهره گیری از سیاست افشای آسیب پذیری ها VDP در استاندارد ISO 29147 تعریف شده است. این سیاست بستری را فراهم میکند که متخصصین نفوذی که مشکلات امنیتی را در سامانه های اینترنتی کشف میکنند بجای سو استفاده از این آسیب پذیری ها، آنها را به اطلاع آن سازمان رسانده و در مقابل از پاداش مالی برخوردار گردند. یکی از مهمترین مزایای این روش این است که طراحی و تصویب و استفاده از این متد به صاحبان سامانه های اینترنتی این امکان را میدهد که سامانه های خود را به طور دائمی در معرض بررسی های امنیتی قرار دهند. گرچه این در روش برخلاف Bug Bounty  که دستمزدی معین در زمان مشخص به متخصصین امنیت تعلق میگرد، پاداش معین و مشخصی به نفوذ گران تعلق نمیگیرد، ولی معمولا شرکتها و سازمانها برای ترغیب نفوذ گران و برای تشویق آنها برای عدم سوءاستفاده از آسیب پذیری های کشف شده و ارائه آنها به این سازمانها، پاداشی را برای این نفوذ گران در نظر میگیرند.

    با توجه به مطالب ذکر شده بهترین سیاست بهره گیری از مزایای تمام این روشها با توجه به گستردگی و نیازهای امنیتی هر مجموعه ای است. سه روش ذکر شده در این مطلب میتوانند همپوشانی کاملی را در جهت تامین و تضمین امنیت سامانه های اینترنتی بوجود آورند.

    شرکتها و سازمانهای فراوانی در زمینه برگزاری مسابقات کشف باگ و طراحی و اجرای سیاست افشای آسیب پذیری ها برای سازمانها و موسسات مختلف فعالیت میکنند که در مطالب بعدی با موفق ترین آنها آشنا خواهیم شد.

  • چگونه متخصص امنیت شویم

    رشته  امنیت از مهمترین و جذابترین زیر شاخه های آی تی است که با گذشت زمان و پی بردن به اهمیت امن سازی زیرساختهای تکنولوژیکی روز به روز علاقه مندان فراوان تری را به خود جذب مینماید. گرچه در کشورمان ایران تقسیم بندی رایج دقیقا مطابق با اصول آن در دیگر کشورها نیست، و متخصصین امنیت برای فعالیت باید بر تمام زیر شاخه های امنیت تسلط کافی داشته باشند ولی دانستن استانداردهای بین المللی و زیر شاخه های پذیرفته شده در دیگر کشورها برای تمامی علاقه مندان و هر متخصص امنیت ضروری خواهد بود.

    در این مقاله با توجه به استانداردهای شناخته شده بین المللی و نیاز روز، تخصص های متفاوت رشته امنیت و پیش نیازهای آنها به صورت اجمالی بررسی خواهد شد تا کمکی به دانشجویان و علاقمندان تحصیل و فعالیت در این رشته گردد.

    ۱- متخصص امنیت شبکه (Network Security Expert)

    امنیت زیرساختهای ارتباطی و ساختارهای شبکه یکی از مهمترین بخشهایی است که هر کمپانی باید توجه خاصی را به آن مبذول نماید. عدم توجه به امنیت شبکه های ارتباطی میتواند خسارات جبران ناپذیری به بار آورد. از این رو متخصصین شبکه مسئولیت سنگین و خطیری در پیش دارند. متخصصین امنیت علی الخصوص امنیت شبکه نیازمند داشتن آگاهی و تسلط هم بر روشهای نفوذ و هم بر عبور از مکانیزمهای دفاعی (Offensive and Defense Evasion) و ساختارهای دفاعی (Defensive) هستند. به عبارت دیگر یک متخصص شبکه در کنار برخوردار بودن از دانش تقویت ساختارهای شبکه ای (Network Hardening Techniques) نیازمند داشتن نگاهی همانند یک نفوذ گر نیز است.

    • تسلط کامل و عمیق به استانداردها و مدلهای OSI and TCP/IP کاربرد ها، شباهت ها و تفاوتهای آنها در لایه های مختلف
    • تسلط کامل به پروتکل های TCP, UDP نحوه کارکرد و تفاوتهای آنها در لایه های مختلف
    • آشنایی با تکنولوژی های ایثرنت (Ethernet) و بی سیم (Wireless) و استاندارد های IEEE 802.3 و IEEE 802.11 و زیر شاخه های آن
    • آشنایی با ساختار تمام سیستم عاملها (Windows, Linux, OSX) و نحوه کارکرد آنها و تسلط کافی و توانایی تعامل با سیستم با استفاده از دستورات خط فرمان (CLI)
    • آشنایی با زبانهای برنامه نویسی خصوصا زبانهای اسکریپت نویسی همانند پایتون، روبی، پرل و تسلط بر حداقل یکی از آنها
    • آشنایی با انواع آلگوریتم های رمزنگاری و نحوه بکارگیری آنها
    • آشنایی با انواع حملات مخاطره انگیزی که امنیت یک شبکه را تهدید خواهد کرد و راههای مقابله با آنها
    • آشنایی و تسلط کامل به انواع نرم افزارهای پالایش شبکه همانند Wireshark, Nmap, Nessus, Qualys, Retina و غیره
    • آشنایی با انواع سیستمهای حفاظت نرم افزاری و سخت افزاری و نحوه عملکرد آنها از قبیل سیستم های تشخیص نفوذ (IPS, IDS) و دیواره های آتش (Firewall)
    • آشنایی با انواع تجهیزات شبکه ای سخت افزاری همانند Cisco, Junpier, Microsoft, Mikrotik, HP, Dell، نحوه پیکر بندی و عملکرد آنها در سیستم عاملهای مختلف، و آسیب پذیری های شناخته شده آنها
    • آشنایی با استانداردها و فریم ورک های امنیتی از قبیل ISO 27001/27002 و NIST

     

    ۲- متخصص امنیت وب (Web Security Expert)

    با توجه به رشد روز افزون وبگاه ها و سامانه های اینترنتی و اهمیت فوق العاده این سامانه ها برای شرکت ها و سازمانهای مختلف و جلوگیری از تهدیدات و مشکلات امنیتی که این سامانه ها را تهدید میکند، تقاضا و بازاری رو به رشد را برای متخصصین امنیت وب میتوان پیش بینی کرد. همانند متخصصین دیگر زیر شاخه های امنیت برخوردار بودن از دانش و آشنایی با نحوه تفکر نفوذ گران از الزامات موفقیت در این رشته است.

    • آشنایی با زبانهای برنامه نویسی سمت کلاینت و سرور از جمله (JavaScript, HTML, SQL, PHP, ASP,… )
    • آشنایی با انواع سیستمهای مدیریت محتوا (Content Management Systems) از قبیل WordPress, Drupal, Joomla نحوه کارکرد و آسیب پذیری های مرتبط با آنها
    • تسلط کامل به استانداردها و مدلهای OSI and TCP/IP کاربرد ها، شباهت ها و تفاوتهای آنها در لایه های مختلف
    • تسلط کامل به پروتکل های TCP, UDP نحوه کارکرد و تفاوتهای آنها در لایه های مختلف
    • آشنایی با زبانهای برنامه نویسی خصوصا زبانهای اسکریپت نویسی همانند پایتون، روبی، پرل و تسلط بر حداقل یکی از آنها
    • آشنایی با ساختار تمام سیستم عاملها (Windows, Linux, OSX) و نحوه کارکرد آنها و تسلط کافی و توانایی تعامل با سیستم با استفاده از دستورات خط فرمان (CLI)
    • آشنایی با انواع آلگوریتم های رمزنگاری و نحوه بکارگیری آنها
    • آشنایی با انواع نرم افزارهای پالایش و نرم افزارهای کشف خودکار و نیم خودکار آسیب پذیری در سامانه های اینترنتی از قبیل Wireshark, Fiddler, Nmap, Nessus, Nexpose, Burp Suite, OWASP ZAP, و غیره
    • آشنایی با ابزارهای تست سورس کد و دیباگ از قبیل Chrome and Firefox DevTools, CA Veracod
    • آشنایی با انواع دیوارهای آتش وب (Web Application Firewall) و نحوه پیکر بندی و عملکرد آنها
    • آشنایی با تکنولوژی های جدید از قبیل بلاکچین و نحوه استفاده از آنها برای تقویت امنیت سامانه های اینترنتی
    • آشنایی با قوانین جرایم رایانه ای و سایبری و محدوده فعالیت (Scope Compliance) علی الخصوص برای تست نفوذ (Penetration Testing) و ارزیابی امنیتی (Vulnerability Assessment)
    • آشنایی با استانداردها و فریم ورک های امنیتی از قبیل ISO 27001/27002 و NIST

     

     ۳- متخصص امنیت اینترنت اشیا (IoT Security Expert)

    گسترش و تنوع روز افزون کاربرد اینترنت اشیا و تجهیزات متنوعی که این تکنولوژی در آنها به کار میرود با سرعت فراوانی رو به فزونی است. گسترش سریع شهرهای هوشمند، ماشینهای هوشمند و خودران، لزوم و اهمیت برقراری و حفظ امنیت این تجهیزات را دوچندان خواهد کرد. با توجه به جدید بودن این تکنولوژی و گستردگی فراوان آن میتوان آینده کاری موفقی را برای متخصصین این رشته پیش بینی کرد.

    • آشنایی با استانداردها و مدلهای OSI and TCP/IP کاربرد ها، شباهت ها و تفاوتهای آنها در لایه های مختلف
    • آشنایی با پروتکل های TCP, UDP نحوه کارکرد و تفاوتهای آنها در لایه های مختلف
    • آشنایی با ساختار تمام سیستم عاملها (Windows, Linux, OSX) و نحوه کارکرد آنها و تسلط کافی و توانایی تعامل با سیستم با استفاده از دستورات خط فرمان (CLI)
    • آشنایی با تکنولوژی بی سیم (Wireless) و استاندارد IEEE 802.11 و زیر شاخه های آن
    • آشنایی با سامانه سرپرستی و گردآوری داده (SCADA) و نحوه عملکرد و مشکلات امنیتی مرتبط با این تکنولوژی
    • آشنایی با پروتکل Zigbee و استاندارد IEEE 802.15.4
    • آشنایی با نسخه های مختلف Bluetooth و نحوه عملکرد آنها
    • آشنایی با پروتکلهای LoraWan, Z-Wave و نحوه عملکرد آنها
    • آشنایی با پروتکل NFC و نحوه عملکرد آن
    • آشنایی با پروتکل های Insteon و Thread
    • آشنایی با حداقل یک زبان اسکریپت نویسی همانند پایتون

     

    ۴- متخصص امنیت ابری (Cloud Security Expert)

    مزایای متعدد مجازی سازی  بر کسی پوشیده نیست، کاهش هزینه ها، استفاده بهینه از منابع سخت افزاری، تامین و گسترش سریع زیرساختهای مورد نیاز، تنها بخش کوچکی از مزایای مجازی سازی و استفاده از تکنولوژی های ابری است. همانند دیگر گرایش های امنیت میتوان آینده کاری مناسبی را برای این رشته متصور بود.

    • تسلط کامل و عمیق به استانداردها و مدلهای  OSI and TCP/IP کاربرد ها، شباهت ها و تفاوتهای آنها در لایه های مختلف
    • تسلط کامل به پروتکل های TCP, UDP نحوه کارکرد و تفاوتهای آنها در لایه های مختلف
    • آشنایی با ساختار تمام سیستم عاملها (Windows, Linux, OSX) و نحوه کارکرد آنها و تسلط کافی و توانایی تعامل با سیستم با استفاده از دستورات خط فرمان (CLI)
    • آشنایی با زبانهای برنامه نویسی متداول و جدید در حوزه برنامه نویسی ابری مانند SQL, Clojure Math, Haskell Functional
    • آشنایی با سرویس دهنده های مطرح ابری از قبیل Amazon Web Service (AWS), Microsoft Azure, Google Cloud Platform و غیره و انواع سرویس های ارائه شده
    • آشنایی با انواع نرم افزارها و سخت افزارهای ابری، نحوه کارکرد و تعامل با آنها
    • آشنایی با انواع تهدیدات امنیتی که سرویس های ابری را تهدید میکنند و نحوه پیشگیری و تعامل با آنها

     

    ۵- متخصص جرم شناسی (Forensic Expert)

    با توجه به افزایش اعمال مجرمانه در فضای مجازی و سایبری گرایش جرم شناسی یکی از مورد نیاز ترین زیر شاخه های امنیت است. متخصص جرم شناسی در کنار داشتن دانشی عمیق از پیش نیازهای این رشته، نیازمند داشتن آگاهی و دانش از دیگر زیر شاخه های امنیت نیز خواهد بود.

    • آشنایی با پروسه دریافت و نگهداری مدارک بررسی شده (Chain of Custody)
    • آشنایی با فراریت و عدم ثبات اطلاعات استخراجی و نحوه تعامل با آنها خصوصا در حافظه و اولویت بندی آنها (The Order of Volatility)
    • آشنایی با زیر شاخه های مختلف جرم شناسی از قبیل جرم شناسی وب (Web Forensic)، جرم شناسی شبکه (Network Forensic) و جرم شناسی دیجیتال (Digital Forensic)
    • آشنایی با استانداردها و مدلهای OSI and TCP/IP و پروتکل های TCP, UDP و نحوه کارکرد آنها در بخش جرایم مربوط به وب و شبکه های ارتباطی
    • آشنایی با ساختار تمام سیستم عاملها (Windows, Linux, OSX) و نحوه کارکرد آنها و تسلط کافی و توانایی تعامل با سیستم با استفاده از دستورات خط فرمان (CLI)
    • آشنایی با نحوه بازیابی لاگ فایلهای مختلف از ترافیک شبکه
    • آشنایی با نحوه عملکرد انواع ویروسها و فایلهای مختلف
    • آشنایی با نحوه و کارکرد انواع مختلف حافظه های سیستمی و نحوه صحیح بازیابی اطلاعات (Memory Acquisition)
    • آشنایی با انواع فایل فرمت های سیستم عاملهای مختلف و نحوه بازیابی و نگهداری آنها و ارزش قانونی هر کدام از فایلهای بازیابی شده
    • آشنایی با انواع سخت افزارهای بازیابی اطلاعات از قبیل Tableau Hardware, Media Clone, Talino Sumuri Workstations و غیره
    • آشنایی با انواع نرم افزار های بازیابی اطلاعات از قبیل SANS SIFT, Volatility, The Sleuth Kit, Autopsy, FTK Imager و غیره
    • آشنایی با نحوه بازیابی اطلاعات مخفی شده، حذف شده، رمز گذاری شده از سیستمهای دیجیتالی مختلف
    • آشنایی و تسلط کامل به قوانین جرایم رایانه و جرم شناسی

     

    ۶- متخصص کرکینگ و مهندسی معکوس (Reverse Engineering Expert)

    مهندسی معکوس یکی از پیچیده ترین زیر شاخه های آی تی و امنیت است که دانشی فراوان و عمیقی می طلبد. با توجه به پیچیدگی و گمراه کنندگی روز افزون حملات مخرب و استفاده از روشهای نوین برای توسعه فایلهای مخرب، حضور متخصصین مهندسی معکوس در هر تیم امنیتی از ضروریات خواهد بود.

    • تسلط کامل به زبانهای برنامه نویسی سطح پایین مانند اسمبلی و C
    • آشنایی با ساختار تمام سیستم عاملها (Windows, Linux, OSX) و نحوه کارکرد آنها و تسلط کافی و توانایی تعامل با سیستم با استفاده از دستورات خط فرمان (CLI)
    • آشنایی با عملکرد سیستم حافظه و نحوه عملکرد پروسس ها (Process Handling) در سیستم عاملهای مختلف
    • آشنایی و تسلط بر انواع نرم افزارهای دیباگ از قبیل Olly Debugger, x64_dbg, IDA

     

    لازم به ذکر است هدف اصلی از نگارش این مقاله آشنایی علاقمندان با کلیات و حداقل های ورود به رشته های مختلف امنیت است و لیست تهیه شده از پیش نیازهای گرایش های مختلف تنها چکیده ای از دانشی است که هر متخصص دنیای امنیت باید به آن مسلط باشد. قطعا مطالعه، تمرین، داشتن بینشی خلاقانه و جسورانه یا به اصطلاح “Out of the box thinking” همزمان با احترام به قوانین مدون، آینده درخشانی برای تمام علاقمندان به این رشته رقم خواهد زد.

     

دکمه بازگشت به بالا
بستن