مد سکیوریتی چیست؟ آیا برای شما هم سوالی در مورد نحوه محافظت از امنیت سایت ها و برنامه های آنلاین تحت وب وجود آمده است، که چگونه امنیت آنها حفظ میگردد؟ و چه طور سایتها و برنامه با این همه پیشرفت در زمینه کشف باگ و حملات لایه ۷ گسترده میتوانند به کار خود ادامه دهند؟
در سالهای اخیر همزمان با پیشرفت برنامه های سایت و فریم ورک های برنامه نویسی ، کشف باگ ها نیز گستردگی خاص خود را داشته اند. همچنین به دلیل وجود رقابت ناسالم و یا تلاش برای بر اندازی سایت و … برخی از هکرها جهت خرابکاری سایتها و برنامه های مختلف که آنلاین هستند اقداماتی را انجام میدهند که بعضا جلوگیری از آنها خارج از توان برنامه نویس و یا طراح سایت میباشد. در این مواقع چاره کار چیست؟ برنامه های سایتها آیا درصورتی که بروز نگردند نمیتوان جلوی ریسک امنیتی آنها را گرفت؟
جواب اول این سوال هم بله و هم خیر میباشد. ریسک ها و باگهای کشف شده در برخی موارد بایستی حتما از طریق خود برنامه سایت بررسی و Fix گردند ولی در مواقع بسیار زیادی باگهای سایتها از طریق فایروال های لایه ۷ کنترل و محافظت میگردند. فایروال هایی که در ادامه به معرفی امکانات و ویژگی های آنها خواهیم پرداخت بسیاری از حملات را شناسایی و قبل از اجرایی شدن جلوی آنها را میگیردند.
بررسی ماژول امنیتی ModSecurity
ماژول ModSecurity یک فایروال وب اپلیکیشن (Web Application Firewall) است که برروی سرور هاست شما راه اندازی می گردد و باعث می شود یک لایه امنیتی مضاعف در کنار فایروالهای سخت افزاری و یا نرم افزاری پیش فرض سرور اضافه گردد.
ماژول مود سکیوریتی از سایت شما در مقابل حملات مختلف تا حد زیادی محافظت کرده و آنها را بلاک می کند. این نرمافزار به شما امکان میدهد تا وبسرور شما را از حملات مختلف مانند حملات نفوذ، حملات نفوذ SQL، حملات حاشیه، و حملات اسکریپت نویسی محافظت کنید.
هک از طریق تزریق کد یا URL Injection و نحوه مقابله با آن
ماژول مود سکیوریتی به صورت لحظهای و آنی موارد مشکوک و اقداماتی که در آن به شکل غیرمجاز تعریف شده اند را زیر نظر گرفته و بلافاصله آنها را مسدود نموده و از ادامه کار باز می دارد. همچنین این ماژول قابلیت برنامهریزی را داشته و می تواند موارد قبلی که باعث آسیب به سایتها شده است را شناسایی و خودکار مسدود نماید.
البته این مورد بستگی به نحوه پیکربندی ماژول مود سکیوریتی توسط شرکت هاست شما دارد که اگر به درستی انجام شود بسیار عالی عمل خواهد کرد.
برای مثال چندی پیش در یکی از نسخههای افزونه آلتیمیت ممبر که یک افزونه محبوب در زمینه ورود و عضویت برای وردپرس می باشد یک باگ امنیتی کشف گردید که باعث هک شدن سایت های متعددی شد.
مزایای استفاده از Mod Security
در حال حاضر، با تکامل اینترنت آسیب پذیری همراه آن نیز بسیار زیاد است. بنابراین باید امنیت خاصی را برای سرورها پیاده سازی کنیم. بنابراین در وضعیت فعلی افزونه مانند ModSecurity گزینه بسیار خوبی برای استفاده است. برای کسب اطلاعات بیشتر در مورد آن، بیایید پایین برویم..
اگر بخواهیم برخی از مزایای استفاده از افزونه ModSecurity را شرح دهیم در این جا مروری بر برخی از مزایای آن را آورده ایم:
همانطور که گفتیم Mod Security تمام درخواستهای ارسالی از وب سرور و بازخورد نسبی ارسال شده از سرورها را اسکن میکند. در صورت موفقیت آمیز بودن آزمایش، درخواست های HTTP به وب سایت ارسال می شود، اما در صورت عدم موفقیت، درخواست را مسدود می کند و موارد زیر را انجام می دهد.
نظارت بر امنیت برنامه و کنترل دسترسی در Real Time
Mod Security به شما امکان دسترسی به جریان ترافیک HTTP، در Real Time ، همراه با قابلیت بازرسی آن را می دهد. این موضوع برای نظارت بر امنیت در Real Time کافی است. یک بُعد اضافی از آنچه که از طریق مکانیسم ذخیره سازی مداوم Mod Security امکان پذیر است وجود دارد، که به شما امکان می دهد عناصر سیستم را در طول زمان ردیابی کنید و همبستگی رویداد را ایجاد کنید.
ثبت جامع ترافیک HTTP
سرورهای وب به طور سنتی در مورد ورود به سیستم برای اهداف امنیتی بسیار کمی انجام می دهند. آنها به طور پیش فرض بسیار کم وارد سیستم می شوند و حتی با تغییرات زیاد نمی توانید هر آنچه را که نیاز دارید به دست آورید.
من هنوز به وب سروری برخورد نکرده ام که بتواند اطلاعات کامل تراکنش را ثبت کند. ModSecurity به شما این توانایی را می دهد که هر چیزی را که نیاز دارید، از جمله داده های تراکنش خام، که برای Forensics (جرم شناسی سایبری) ضروری است، ثبت کنید. علاوه بر این، میتوانید انتخاب کنید که کدام تراکنشها ثبت شوند، کدام بخشهای تراکنش ثبت نشوند و کدام بخشها پاکسازی شوند.
ارزیابی امنیت بطور مستمر
باید در نظر داشته باشید ارزیابی امنیتی به عنوان یک رویداد برنامهریزیشده فعال شناخته میشود که در آن یک تیم مستقل برای انجام یک حمله شبیهسازی شده منشأ میگیرد. ارزیابی امنیت مستمر نوعی از نظارت بلادرنگ است که در آن به جای تمرکز بر رفتار طرفهای خارجی، بر رفتار خود سیستم تمرکز میکنید. این یک نوع سیستم هشدار اولیه است که می تواند ردپای بسیاری از ناهنجاری ها و ضعف های امنیتی را قبل از بهره برداری از آنها شناسایی کند.
کاهش سطح حملات
یکی از کاربردهای مورد علاقه من برای Mod Security کاهش سطح حمله است، که در آن به طور انتخابی ویژگی های HTTP را که مایل به پذیرش آن هستید را محدود می کند (به عنوان مثال، request methods، request headers، انواع محتوا و غیره). Mod Security می تواند به شما در اعمال بسیاری از محدودیت های مشابه، مستقیماً یا از طریق همکاری با سایر ماژول های آپاچی کمک کند.
ماژول ModSecurity چه کاربردی دارد
در بخشهای بالا تقریبا با این ماژول آشنا شدید اما در این قسمت می خواهیم به برخی از کاربردها و یا قابلیتهایی که مود سکوریتی به سایت اضافه می کند و باعث افرایش امنیت سایت شما می گردد را بیان نماییم:
- بررسی آنی درخواستهای ارسالی به سایت مانند درخواستهای عضویت و…
- بررسی فایلهای آپلودی در سایت و جلوگیری از آپلود برخی فایلها
- بررسی و مدیریت ترافیک و درخواستهای سایت
- قابلیت تشخیص رباتها و محدودسازی آنها
- جلوگیری از اجرای برخی از دستوراتی که می تواند به سایت آسیب وارد کند
همواره جهت برقراری امنیت برنامه های مبتنی بر وب ابتدا دقت تیم توسعه دهنده باید در نظر گرفته شود. فرد یا افرادی که یک برنامه مبتنی بر وب را تولید میکنند در درجه اول باید با استفاده از روش های استاندارد کدزنی برنامه خود را از گزند حملات متصور مصون بدارند. اما از آنجایی که برخی مواقع با وجود در نظر داشتن تمام تمهیدات لازم جهت برقراری امنیت، خطای انسانی و یا وجود باگهایی در خود زبان توسعه گر وجود دارد استفاده از WAF ها لازم و ضروری به نظر میرسد و این امر با توجه به گستردگی حملات سایبری اجتناب ناپذیر به نظر می آید.
نحوه راه اندازی WAF
با راه اندازی یک WAF مانند ModSecurity قوانینی که در بالا گفته شد بر ورودی های سرور شما حاکم میشود. این بدان معنیست که تمامی ترافیک ورودی به سیستم شما ابتدا باید مجوزهای لازم از قوانین را بگذرانند که این موجب کندی سرعت سیستم می شود. به همین دلیل و با توجه به ضرورت وجود WAF ها توصیه میشود در صورت امکان از یک WAF سخت افزاری استفاده شود و چنانچه این امر مقدور نیست از WAF های نرم افزاری استفاده شود. البته در نظر داشته باشید که در صورت استفاده از قوانین کمتر ولی ضروری و یا کانفیگ صحیح میتوانید مشکل کاهش سرعت را تا حد زیادی رفع کنید. استفاده از این افزونه با توجه به اینکه میتواند جلو حملات را گرفته و تا حد زیادی از خسارت مالی جلوگیری کند بسیار مقرون به صرفه می باشد.
گرچه کندی نسبی سرعت توسط ModSecurity را میتوان بعنوان یکی از معایت این افزونه امنیتی به حساب آورد ولی رایگان بودن آن و دقت قابل قبول این افزونه در مقابل حملاتی مانند xss یا sql injection را میتوان یک مزیت برای آن دانست.
یکی دیگر از معایب این افزونه اشتباه هایی ست که توسط آن صورت میگیرد. معمولا تنظیم قوانین ModSecurity اشتباهاتی را بدنبال دارد که هنگام استفاده عملیاتی از آن خود را نشان داده و بعضا رفع آن ها ممکن است کمی زمان بر باشد.
مزایای ModSecurity در لاگ گیری
یکی از مزایای این افزونه لاگ گیری از تمامی رخدادهای مربوطه می باشد که میتواند مانیتورینگ قوی و مطلوبی را برای شما به همراه داشته باشد.
ModSecurity در زمان حملات میتواند بسیار سریع فعال شده و دسترسی مهاجم را ببنند. این کار از طریق سه روش انجام شود:
Negative security model: مدل امنیتی منفی درخواستها را برای وجود ناهنجاری، رفتارهای غیر متعارف و دیگر خطراتی که ممکن است برای WA داشته باشد بررسی میکند. این مدل برای هر درخواست ناهنجار یک Score یا نمره اختصاص داده و به همراه آن اطلاعات دیگری نظیر آدرس IP، جلسات برنامه یا Application Sessions و اکانت کاربر را نگهداری میکند. درخواست هایی که نمره ناهنجاری آنها بالا باشد لاگ گیری و Reject میشوند.
Positive security model: زمانی که مدل امنیتی مثبت فعال و آماده به کار شد فقط درخواستهای معتبر یا Valid پذیرش شده و تمامی درخواست های دیگر Reject خواهد شد. برای فعالسازی این مدل نیاز است تا اطلاعات کافی در مورد WA خود داشته باشید. بهتر است این مدل برای WAهایی فعال شود که بصورت سنگین و با ترافیک بالا در حال استفاده بوده و در زمانهای طولانی نیز آپدیت میشود تا اعمال تغییر در این مد نیز کاهش یابد.
Known weaknesses and vulnerabilities: زبان rule نویسی در ModeSecurity این ماژول را به یک ابزار External ایده آل برای Patch کردن WAها تبدیل کرده است. این قابلیت مدسکیوریتی گاها پچ مجازی نیز نامبرده میشود. زمانی که یک آسیبپذیری در WA بوجود امد ممکن است رفع مشکل آن ماهها طول بکشد که شما میتوانید با استفاده از ماژول mod security دسترسی را به بخشی از برنامه که مشکل دار است و یا درخواست هایی که ممکن است WA را تهدید کند محدود سازید. با این کار نیازی نیست سورس کد WA را دستکاری نمایید. سیستم WA از طریق یک لایه امنیتی از خارج، امن خواهد شد.
شاید این مقاله را دوست داشته باشید: مروری بر عملکرد بات نت ها