راهکارهایی برای افزایش امنیت وب سایت

راهکارهایی برای افزایش امنیت وب سایت

امید صادقی ادمین
مدت زمان مطالعه: 15 دقیقه 21 خرداد 01

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


مهمترین مشکلات امنیتی در وب

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


  • Injection flaws

 Injection flaws ناشی از شکست در فیلتر کردن ورودی نامعتبر است. این  موضوع زمانی رخ می دهد که داده های بدون فیلتر را به  SQL server( SQL injection )، به مرورگر (XSS که بعداً در این مورد صحبت خواهیم کرد)، به LDAP server ( LDAP injection ) یا هرجای دیگر ارسال کنید. مشکل در اینجا این است که مهاجم می تواند دستوراتی را به این قسمت ها تزریق کند. در نتیجه اطلاعات از بین رفته و اطلاعات ربوده می شود.
برای پیشگیری از این موضوع میبایست هر چیزی که برنامه شما از منابع نامعتبر دریافت می کند باید فیلتر شود، ترجیحاً طبق لیست سفید. شما تقریباً نباید از لیست سیاه استفاده کنید.
ازآنجا که انجام فیلترینگ بسیار سخت است (مانند رمزنگاری)، معمولا توصیه می گردد که به توابع فیلترینگ فریم ورک خود تکیه کنید. 


  • Cross Site Scripting ( XSS )

در این نوع از حمله که بسیار رایج است، برنامه مهاجم کد های جاوا اسکریپت را به سایت تزریق می کند. هنگامی که این ورودی به کاربر بازگردانده شود، مرورگر کاربر آن را اجرا می کند و می تواند منجر به سرقت اطلاعات کاربر گردد.
در این حمله با باز کردن یک صفحه وب سایت و یا کلیک روی یک لینک کدی به صورت مخفی روی کامپیوتر کاربر اجرا میشود که می‌تواند اطلاعات مهمی را از سیستم کاربر سرقت کند. هکرها با استفاده از این حمله، کوکی‌ها را سرقت می کنند و از طریق آنها به اطلاعات کاربران دسترسی پیدا میکنند.
هنگامی که کاربر وارد یک حساب اینترنتی مانند ایمیل، حساب بانکی یا حساب های دیگر میشود اطلاعاتی (کوکی ها) روی کامپیوتر کاربر ذخیره می شود.
یک راه حل ساده برای امنیت وب وجود دارد، تگ های HTML را به سرویس گیرنده باز نگردانید. این راه حل باعث جلوگیری از HTML injection نیز می گردد.
ایجاد فیلتر درinput ها، رمزگذاری داده ها در خروجی، استفاده از response header های مناسب و استفاده از CSP یا سیاست های امنیت محتوا از جمله راه حل های جلوگیری از این نوع حملات است.


  • Cross Site Request Forgery ( CSRF )

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

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

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

این حمله هنگامی که از مجوز مناسب استفاده شود، خنثی می گردد. این بدان معناست که مکانیسم پاسخ به چالش یا challenge-response برای تأئید هویت و اختیار درخواست کننده مورد نیاز است. 

برای جلوگیری از این نوع حملات بررسی نمایید:

  • در صورتیکه فریمورک شما دارای حفاظت CSRF داخلی است، از آن استفاده کنید.
  • برای نرم افزارهای stateful از synchronizer token pattern استفاده کنید.
  • برای نرم افزارهای stateless از double submit cookies استفاده کنید.
  • از درخواست های GET برای تغییر state استفاده نکنید.
  • حداقل یک mitigation از بخش Defense in Depth Mitigations را پیاده سازی کنید.


چگونه امنیت وب سایت را افزایش دهیم؟

  • نرم افزار و افزونه ها را به روز نگه دارید.

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


  • HTTPS و گواهی SSL اضافه کنید.

برای ایمن نگه داشتن وب سایت خود، به یک URL امن نیاز دارید. اگر بازدیدکنندگان سایت شما پیشنهاد ارسال اطلاعات خصوصی خود را می دهند، به HTTPS نیاز دارید نه HTTP.


  • HTTPs چیست؟

 HTTPS (Hypertext Transfer Protocol Secure) پروتکلی است که برای تامین امنیت اینترنت استفاده می شود. HTTPS مانع از وقفه ها و اختلال ها در هنگام انتقال محتوا می شوند.
برای ایجاد اتصال آنلاین ایمن، وب سایت شما همچنین به گواهی SSL نیاز دارد. اگر وب سایت شما از بازدیدکنندگان می خواهد که ثبت نام کنند یا هر نوع  تراکنش را انجام دهند، باید اتصال خود را رمزگذاری کنید.


  • SSL چیست؟

SSL (Secure Sockets Layer) یکی دیگر از پروتکل های ضروری سایت است. SSL اطلاعات شخصی بازدید کننده بین وب سایت و پایگاه داده را رمزگذاری می کند تا از خوانده شدن اطلاعات توسط دیگران در هنگام انتقال جلوگیری گردد.
همچنین دسترسی افراد بدون مجوز به داده ها را سلب می کند.برای اطلاعات بیشتر در این زمینه پیشنهاد می کنیم مقاله SSL چیست؟ را مطالعه فرمایید.


  •  یک رمز عبور هوشمند انتخاب کنید.

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

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

اگر مدیر CMS هستید، اطمینان حاصل نمایید که همه کارکنان رمزهای عبور خود را به طور مکرر تغییر می دهند.


  • از میزبان وب امن استفاده کنید.

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


  • WAF چیست؟

WAF یا Web Application Firewall یک فایروال است که بسته های داده در وب سایت یا وب اپلیکیشن را مانیتور، فیلتر و یا مسدود می کند. WAF می تواند مبتنی بر شبکه، مبتنی بر هاست یا مبتنی برفضای ابر باشد. WAF جلوی حملات تحت وب که به سرور صورت می گیرد را گرفته و سایت های حمله کننده را بلاک کند.
 WAF درخواست های پروتکل HTTP را تجزیه و تحلیل می کند وبا استفاده از مجموعه ای از قوانین قسمت های مخرب را مشخص می نماید.  


  •  مزیت های WAF 

  • از وب سایت، در مقابل حملات  ( XSS ) Cross-site scripting محافظت می کند.
  • امنیت وب سایت را در مقابل حملات SQL injection، تأمین می نماید.
  • امنیت وب سایت را در مقابل حملات DDoS تأمین می کند.
  • ازوب سایت در مقابل حملات session hijacking محافظت می کند.

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

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

از موارد دیگری که در هنگام انتخاب و خرید هاست باید مورد توجه قرار گیرد، بک آپ گیری منظم و ارتقا ویژگی های امنیتی است.


  • تغییر تنظیمات پیش فرض CMS

شایع ترین حملات علیه وب سایت ها کاملاً خودکار است. آنچه بسیاری از ربات های حمله متکی بر آن هستند این است که کاربران تنظیمات CMS خود را به صورت پیش فرض داشته باشند.

پس از انتخاب CMS خود، فوراً تنظیمات پیش فرض خود را تغییر دهید. تغییرات به جلوگیری از وقوع تعداد زیادی از حملات کمک می کند. تنظیمات CMS  شامل تنظیمات کنترل نظرات و مجوزها است.

یک مثال عالی از تغییر تنظیمات پیش فرض که باید انجام دهید "مجوزهای فایل" است. شما می توانید مجوزها را تغییر دهید تا مشخص شود هر کسی چه کاری را می تواند در یک فایل انجام دهد.
هر فایل دارای سه نوع مجوز است:
Read یا خواندن: مشاهده محتویات فایل.
Write یا نوشتن: محتویات فایل را تغییر دهید.
Execute یا اجرا: فایل یا اسکریپت برنامه را اجرا کنید.
 همراه با تنظیمات پیش فرض مجوز فایل، سه نوع کاربر وجود دارد:
Owner یا مالک: اغلب سازنده فایل است؛ اما مالکیت آن قابل تغییر است. فقط یک کاربر می تواند مالک در یک زمان باشد.
Group یا گروه: هر فایل به یک گروه اختصاص داده شده است. کاربرانی که بخشی از آن گروه خاص هستند به مجوزهای گروه دسترسی خواهند داشت.
Public یا عمومی: بقیه کاربران
کاربران و تنظیمات مجوز آنها را سفارشی کنید. تنظیمات پیش فرض را همانطور که هست نگه ندارید، در غیر اینصورت با مشکلات امنیتی وب سایت روبرو خواهید شد.


  • بک آپ گیری از وب سایت خود

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

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

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


  • فایلهای پیکربندی وب سرور خود را بشناسید.

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

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

  • وب سرورهای Apache از فایل .htaccess استفاده می کنند.
  • سرورهای Nginx از nginx.conf استفاده می کنند.
  • سرورهای Microsoft IIS از web.config استفاده می کنند.

همه مدیران وب نمی دانند که از کدام وب سروراستفاده می کنند. اگر شما یکی از آنها هستید، از یک اسکنر وب سایت مانند Sitecheck برای بررسی وب سایت خود استفاده کنید. این برنامه بدافزارهای شناخته شده، ویروس ها، وضعیت لیست سیاه، خطاهای وب سایت و موارد دیگر را اسکن می کند.

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


  • امنیت شبکه را تقویت کنید.

برای ایجاد امنیت بهتر در وب سایت خود، باید امنیت شبکه خود را تجزیه و تحلیل کنید.

کارکنانی که از رایانه های اداری استفاده می کنند ممکن است ناخواسته مسیری ناامن برای وب سایت شما ایجاد کنند.

برای جلوگیری از دسترسی آنها به سرور وب سایت شما، موارد زیر را در کسب و کار خود در نظر بگیرید:

  • لاگین سیستم های کامپیوتری پس از مدت کوتاهی عدم فعالیت منقضی شود.
  • اطمینان حاصل کنید که سیستم شما هر سه ماه یکبار تغییرات رمز عبور را به کاربران اطلاع می دهد.
  • اطمینان حاصل کنید که همه دستگاه های متصل به شبکه هر بار که متصل می شوند از نظر بدافزار اسکن می شود.

افزونه های امنیتی وردپرس

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

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

 

  • Sucuri
  • iThemes Security Pro
  • Jetpack Security
  • WPScan
  • Wordfence
  • BulletProof Security
  • All In One WP Security & Firewall
  • Google Authenticator

 

WPA چیست؟

Wi-Fi Protected Access  یک استاندارد امنیتی است که برای دستگاه هایی با اینترنت بی سیم مانند دستگاه های تلفن همراه طراحی شده است. WPA جانشین پروتکل امنیتی قدیمی تر Wired Equivalent Privacy (WEP) است که تمام داده های منتقل شده از طریق اتصال بی سیم را برای امنیت رمزگذاری می کند.

تاثیر امنیت سایت بر سئو

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

در حالت دوم بحث استفاده از گواهی امنیتی SSL است، که استفاده از آن با رعایت یک سری دستورالعمل می تواند تاثیر مثبتی بر روی سئو سایت ما بگذارد.

تأثیرات مثبت گواهی نامه امنیتی SSL به شرح زیر است:

  • تمامی صفحات HTTP به صورت 301 به صفحات HTTPS ریدایرکت شوند.
  • بهتر است از گواهی نامه امنیتی SSL رایگان استفاده نکنید.
  • خطایی از جانب گواهی وجود نداشته باشد و در گوگل به رنگ سبز نشان داده شود.
  • گواهی امنیتی مورد استفاده برای مرورگر های معتبر قابل شناسایی باشد.

به موارد زیر برای تامین امنیت سایت خود توجه کنید:

  • از امنیت هاست خود مطمئن شوید بهتر است هاست خود را از شرکت های معتبر تهیه کنید.
  • از سیستم مدیریت محتوای معتبر استفاده کنید( مانند: وردپرس ، جوملا و... )
  • به هیچ وجه از کد های نال شده و افزونه های نامعتبر استفاده نکنید.
  • ابزار های مورد استفاده برای وب سایت خود را مدام بروز رسانی کنید.
  • درخصوص تامین امنیت وب سایت خود همواره اطلاعاتتان را بروز نگه دارید.

جمع بندی

در این مقاله مهمترین راهکارهای امنیت وب سایت و مهمترین مشکلات امنیتی در وب مورد بررسی قرار گرفته است. همچنین با توجه به استفاده بسیاری از مشاغل از وب سایت های وردپرسی افزونه های امنیتی ورد پرس معرفی گردید.

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

این مقاله را با دوستان خود به اشتراک بگذارید.

موفق باشید. 

برچسب ها :
دسته بندی ها :