علی رغم گذشت نزدیک به 13 سال از طراحی و اجرای سیستم مدیریت امنیت اطلاعات در سازمان های دولتی ایران و دریافت گواهینامه استاندارد ISO 27001 توسط بسیاری از سازمان ها و شرکتهای کشور، متاسفانه هنوز این سیستم مدیریت در کشور به بلوغ نرسیده است و زوایا و ابهامات فراوانی در خصوص آن وجود دارد. یکی از دلایل عمده این موضوع رویکرد برون سپاری در پروژه های استقرار سیستم مدیریت امنیت اطلاعات و رویکرد متفاوت مشاورین و پیمانکاران در این حوزه بوده است. با توجه به عدم شناخت کارفرماها نسبت به الزامات استقرار سیستم مدیریت امنیت اطلاعات، در این حوزه بعضاً توسط مشاورین و پیمانکاران بهصورت سلیقه ای عمل شده است. نکته قابل تأمل این است که علی رغم اینکه نزدیک به هفت سال است که سازمان فناوری اطلاعات بهعنوان دیده بان ISMS در کشور متولی این موضوع است، اما هنوز شرح خدمات یکسان و استانداردی برای این موضوع وجود ندارد. آنچه در این مقاله به آن پرداخته خواهد شد، پاسخگویی به یکی از ابهامات در حوزه تست نفوذپذیری در استقرار سیستم مدیریت امنیت اطلاعات است.
در بسیاری از پروژه های سیستم مدیریت امنیت اطلاعات، تست نفوذپذیری بهعنوان یک از بندها در شرح خدمات از پیمانکار خواسته می شود (در این مقاله به روش یکپارچه سازی خروجی تست نفوذپذیری در فرآیند مدیریت ریسک پرداخته شده است). پیش از آنکه به این موضوع بپردازیم که این کار، درست است یا خیر، بهتر است تست نفوذپذیری را تعریف کنیم. در کنار تست نفوذپذیری، عامل دیگری بهعنوان پویش آسیب پذیری[1] یا ارزیابی آسیب پذیری فنی[2] نیز تعریف می شود. در ارزیابی آسیب پذیری فنی، با استفاده از روش های ابزاری و دستی به جستجو و شناسایی آسیب پذیری ها خواهیم پرداخت. در این اقدام، لیست درگاه های باز و آسیب پذیری های کلیه تجهیزات فنی اعم از کلا ینتها، سرو یسدهنده ها، سوییچ ها، رادیوها، برنامه های کاربردی، دیواره های آتش، سیستم های مهاجم یاب، دیواره های آتش برنامه های کاربردی تحت وب[3] و ... شناسایی خواهد شد. هدف در این گام شناسایی آسیب پذیری هاست؛ اما در تست نفوذپذیری یک قدم جلوتر خواهیم رفت. در تست نفوذپذیری، فراتر از شناسایی آسیب پذیری، به تلاش و اقدام جهت نفوذ و پیدا کردن شواهدی جهت نفوذ نیز خواهیم پرداخت. در واقع تست نفوذپذیری عملیاتی زمان برتر و حساستر از شناسایی آسیب پذیری است که حساسیت های خاص خود را دارد. حال سؤال اینجاست که در استقرار سیستم مدیریت امنیت اطلاعات، کدام سطح مورد انتظار است؟
برای پاسخگویی به سؤال فوق ضروری است به متن استاندارد رجوع کنیم. در آخرین نسخه معتبر استاندارد سیستم مدیریت امنیت اطلاعات یعنی ISO/IEC 27001:2013 در بندهای زیر به این موضوع اشاره شده است:
بهجز بندهای فوق در برخی کنترل های دیگر استاندارد نظیر کنترل A.18.2.3 استاندارد نیز به این موضوع اشاره شده است. نکته مهم در این حوزه این است که آنچه الزام استاندارد ISO 27001:2013 است، ارزیابی ریسک و شناسایی آسیب پذیری هاست. مطابق با الزامات این سیستم مدیریتی، می بایست پس از شناسایی و ارزشگذاری دارایی های اطلاعاتی، آسیب پذیری ها و تهدیدات مرتبط آن را شناسایی کرد و مطابق با رویکرد ارزیابی ریسک سازمان، ریسک دارایی های اطلاعاتی را برآورد نمود؛ بنابراین تست نفوذپذیری مطابق با تعریفی که در این مقاله به آن اشاره کردیم، مد نظر استاندارد نیست؛ یعنی شناسایی آسیب پذیری به منظور ارزیابی ریسک کفایت می کند.
اما چالش مهم اینجاست. به منظور شناسایی آسیب پذیری های فنی و یا به اصطلاح پویش آسیب پذیری معمولاً از ابزارهای اسکنر استفاده می شود. این ابزارها در برخی موارد دارای False-Positive و یا اصطلاحاً خطا می باشند. کارشناسان تست نفوذپذیری معمولاً به منظور صحت سنجی وجود یا عدم وجود آسیب پذیری ها از روش های دستی استفاده می نماید. در این روش ها با استفاده از مجموعه ای از کدهای نرم افزاری و یا روش های فنی دیگر، صحت وجود آسیب پذیری بررسی می گردد. در برخی از موارد کنترل صحت یک آیتم، مستلزم ورود به مراحل نفوذ و در واقع تست نفوذپذیری است؛ اما این یک اصل کلی نیست. برخی از متخصصین تست نفوذپذیری به این اصل معتقدند که عملاً ما زمانی از وجود آسیب پذیری ها حصول اطمینان می کنیم که آن ها را با روش های دستی تست نماییم. بهعنوان مثال اگر آسیب پذیری در خصوص ضعف کلمه عبور و احتمال حمله Brute force وجود دارد، حتماً باید با ابزارهای خاص تست این حمله مورد بررسی قرار گرفته و کلمه عبور شناسایی شود.
نتیجه گیری نهایی اینکه شناسایی آسیب پذیری ها برای دارایی های فنی موجود در محدوده یک الزام است و میبایست انجام شود؛ اما نفوذ به خودی خود الزام نیست. مگر اینکه برای حصول اطمینان از وجود برخی از آسیب پذیری ها، نیازمند به تست آن ها باشیم. نکته مهم و حیاتی در اینجا این رعایت الزام کنترل A.12.7.1 استاندارد است. موضوع شناسایی آسیب پذیری ها نباید کسب و کار سازمان را با وقفه مواجهه نماید؛ یعنی این عملیات نباید منجر به از دسترس خارج شدن و یا اختلال در هیچ یک از سرویس های سازمان نشود. با رعایت این نکته شناسایی آسیب پذیری ها و ارزیابی ریسک فنی، بدون دغدغه برای سازمان اجرا خواهد شد. همچنین پیشنهاد می شود در شرح خدمات پروژه های استقرار سیستم مدیریت امنیت اطلاعات، پویش آسیب پذیری های فنی تا مرحله حصول اطمینان از وجود آسیب پذیری ها در شرح خدمات قرار گیرد.
[1] Vulnerability Scanning
[2] Technical Vulnerability Assessment
[3] Web Application Firewall (WAF)
میثم ارجمندفر
جمعه ، ۲۳ تیر ماه ۹۶
با سلام و تشکر از مطالب بیان شده.به نظر بنده با توجه به اینکه انجام تست نفوذپذیری به مراتب هزینه ای بیش از پویش آسیب پذیری ها دارد و اینکه به تخصص و دانش بیشتری در این خصوص نیاز است . لذا سازمان ها قادر به انجام تست بر روی همه آسیب پذیری ها نمی باشند. بنابراین تعیین اولویت ها در انجام تست بسیار مهم است. نکته مهم این است که صرفاً یک آسیب پذیری بحرانی تعیین کننده اولویت در انجام تست نفوذ نمی باشد.لذا پیشنهاد می شود با انجام ارزیابی ریسک جامع که به ارزش دارایی و احتمال وقوع و سایر عوامل دیگری که در تعیین میزان ریسک دارایی موثر است، اولویت ها تعیین شود.
میلاد یداللهی
من هم با نظر شما موافقم، به نظر انتخاب چند سامانه یا سرویس حیاتی و محوری برای انجام تست نفوذپذیری روش مناسبی باشه! از طرفی می توان از اطلاعاتی که از فرآیند تست نفوذپذیری حاصل می شود کمک گرفت و احتمال وقوع تهدید را در فرآیند مدیریت ریسک بهتر تخمین زد.
امیر خوانی
یکشنبه ، ۲۵ تیر ماه ۹۶
قطعا ارزیابی ریسک دقیق و جامع از الزامات سیستم مدیریت امنیت اطلاعات است که می بایست بر روی تمامی دارایی های اطلاعاتی انجام شود. طبیعتا پویش آسیب پذیری می بایست بر روی تمامی دارایی های فنی صورت پذیرد. اما در خصوص تست نفوذپذیری، پیشنهاد شما پیشنهاد مناسبی است. پیشنهاد دیگر، می تواند تست نفوذپذیری بر روی دارایی های با ارزش بالا باشدو یا دارایی ها و سرور و سرویس هایی که از بستر اینترنت قابل مشاهده هستند.
سهشنبه ، ۲۰ تیر ماه ۹۶
نکته اشاره شده به عنوان یکی از چالش های مهم در فرآیند پیاده سازی ISMS می باشد که در صورتیکه به صورت شفاف تعریف شده و برای تمامی ذینفعان پروژه های مذکور به ویژه سازمان ها و شرکت های کارفرما روشن باشد، می تواند در بهره ورری پروژه و افزایش احتمال موفقیت آن کمک زیادی بکند.