ModSecurity چیست؟
امنیت در دنیای وب به ویژه برای سایتهای سازمانی و شرکتی از اهمیت زیادی برخوردار است. با توجه به در دسترس بودن در سطح جهانی، تهدیدها نیز میتوانند در همین ابعاد بزرگ، خطرناک و زیاد باشند. بنابراین توجه به مسائل امنیتی در ایجاد وبسایتهای اینترنتی و نرمافزارهای تحت وب، بسیار مهم است.
برای دستیابی به امنیت، روشهای گوناگونی وجود دارد. نخستین روش، رعایت اصول امنیتی در هنگام توسعهی نرمافزارهای اینترنتی یا طراحی سایت است. حتی با صرف زمان و هزینهی زیاد و تلاش مداوم، دستیابی به امنیت ۱۰۰ درصدی در این لایه تقریبا غیرممکن است. بنابراین لایههای امنیتی دیگر که تلاش میکنند تهدیدها را زودتر شناسایی کنند و مانع نفوذ آنها به سیستم شوند، توسعه یافتهاند.
برخی از این لایههای امنیتی عبارتند از: «فایروالهای سختافزاری» در سطح سختافزار، «فایروال نرمافزاری»، «ویروسیاب»، «سرورهای واسط» و چندین روش دیگر که همه تلاش میکنند شناسایی تهدیدهای امنیتی را هر چه زودتر و پیش از رسیدن به محل اصلی نگهداری اطلاعات به انجام برسانند.
ModSecurity
یکی از این لایههای امنیتی که در نزدیکترین لایه به نرمافزار فعالیت میکند، ModSecurity نام دارد. ModSecurity یک افزونهی امنیتی برای اجرا در محیط Apache است. این افزونه حاوی قوانین قابل تغییری است که برای شناسایی تهدیدهای معمول و متداول در دنیای وب به کار میروند. برخی از این تهدیدها عبارتند از: SQL Injecton، XSS و جلوگیری از ورود غیرمجاز.
ModSecurity افزونهای رایگان است. برخی افراد، گروهها و شرکتها فهرست قوانین امنیتی خاصی برای ModSecurity توسعه دادهاند که کمک میکند تهدیدهای جدید بهتر شناسایی شوند، همچنین درصد خطا در شناسایی کاهش یابد. شرکت مشهور امنیتی کومودو یک از این شرکتها است.
مزایا و معایب ModSecurity
مهمترین مزیت استفاده از ModSecurity، دستیابی ارزانقیمت و سریع به حد قابل قبولی از امنیت است. نصب و راهاندازی این افزونه در زمان بسیار کوتاه و با تخصص کمی در حوزهی امنیت قابل انجام است. همچنین میتوان با استفاده از قوانین تعریف شده توسط اشخاص و شرکتهای معتبر، امنیت نرمافزار تحت وب را بهبود چشمگیری بخشید.
استفاده از ModSecurity دو اشکال قابل توجه به دنبال دارد. اشکال اول، اشتباههای این افزونه است. احتمال دارد به دلیل تعریف نادرست قوانین، برخی استفادههای معمول از سایت با اشکالهایی مواجه شود. این اشکال با انجام تغییرات در تنظیمات افزونه تا حد زیادی قابل رفع شدن است. اشکال دوم، کاهش کارایی و سرعت اجرای سایت است. زیرا هر درخواست ابتدا میبایست توسط ModSecurity پردازش شود و در صورت تایید به مرحلهی اجرا برسد.
موارد استفاده از ModSecurity
استفاده از ModSecurity در بسیاری از موارد میتواند کمک بزرگی به حفظ امنیت باشد. برای مثال هنگامی که از یک CMS قدیمی استفاده میکنید که به دلیل تغییرات زیاد یا عدم توسعه، امکان به روزرسانی آن وجود ندارد. CMSهای قدیمی اهداف خوبی برای خرابکاران و هکرهای اینترنتی هستند. مثال دیگر هنگامی است که یک سایت نه چندان ایمن و نوشته شده در گذشته را در اختیار دارید و عملا امکان بررسی و بازنویسی بخشهای حساس آن برایتان امکانپذیر نیست.
بسیاری از هکرها برای شناسایی حفرههای امنیتی از ابزارها و اسکریپتهایی استفاده میکنند که به صورت کور تلاش میکنند اشکالات متداول را در سایتها و نرمافزارهای تحت وب شناسایی کنند. استفاده از ModSecurity سپری قوی در برابر این گروه از خرابکاران است.
ModSecurity در مقایسه با سایر روشها
محل اجرای ModSecurity به عنوان افزونهای در وب سرور آپاچی است. بنابراین بخشی از توان و حافظهی سیستم درگیر آن خواهد شد. اگر سرعت و حافظهی سرور توان کافی برای پاسخگویی به درخواستها و پردازش امنیتی آنها را نداشته باشد، میبایست به روشهای جایگزین دیگر مانند فایروال سختافزاری، فایروال نرمافزاری یا سرویسهای واسط مانند CloudFlare بیندیشید. هر یک از این ابزارها و روشها مزایا، معایب و هزینههای خاص خود را به دنبال خواهند داشت.