بررسی نقاط آسیب پذیری وردپرس و راهحل مقابله با آنها
در این مقاله میخوانید
آسیب پذیری وردپرس یکی از مهمترین مواردی است که صاحبان وبسایتهای وردپرسی باید به آن توجه کنند. در این مطلب از بلاگ پارس پک، نکاتی را برای مدیریت امنیت وردپرس بیان میکنیم تا بتوانید تا حد زیادی از نفوذ به وبسایتتان جلوگیری کنید. اگر صاحب یک وبسایت وردپرسی هستید یا بهعنوان توسعهدهنده وردپرس فعالیت میکنید، این مطلب از آموزش وردپرس بلاگ پارس پک را تا پایان دنبال کنید.
آسیب پذیری وردپرس چیست و شامل چه مواردی میشود؟
آسیب پذیری وردپرس به نقاط ضعف و اشکالات امنیتی در سیستم مدیریت محتوای وردپرس گفته میشود که میتواند به مهاجمان اجازه دهد به سایتهای مبتنی بر وردپرس نفوذ کنند یا به آنها آسیب برسانند. این آسیبپذیریها میتواند شامل موارد متعددی از جمله ضعفهایی در افزونهها و قالبها، مشکلات در هسته وردپرس، نقصهایی در سیستم تایید اعتبار و مجوزها، آسیبپذیریهای SQL injection که به مهاجمان امکان مداخله در پایگاه داده وبسایت را میدهد، حملات Cross-site Scripting (XSS) که به مهاجمان اجازه میدهد اسکریپتهای مخرب را در وبسایتهای کاربران اجرا کنند و نقاط ضعف امنیتی در APIها و اجزای شخص ثالث باشد.
شناخته شدهترین نقاط آسیب پذیری وردپرس
بیایید مستقیم برویم سرِ اصل مطلب و موضوع را با شناخته شدهترین نقاط آسیب پذیری وردپرس شروع کنیم. مراحل بعدی از قبیل نحوه بررسی آسیب پذیری های وردپرس، دقیقاً بر اساسِ همین موارد امکانپذیر است. بهعبارت دیگر شما مثلِ یک پزشک، قبل از هر چیز باید درد را بشناسید تا بتوانید راهی برای درمان آن پیدا کنید.
۱. افزونهها و قالبهای ناامن
یکی از مهمترین و متداولترین نقاط ضعف امنیتی وردپرس، قالبهای آمادهای است که تقریباً همهی ما از آنها روی وبسایتمان استفاده کردهایم و در آینده هم این کار را انجام میدهیم. مهمترین دلیلی هم که باعث میشود وبسایتِ وردپرسیِ ما بهخاطر قالبها در معرض ریسک قرار بگیرند، استفاده از قالبهایی است که از وبسایتهای غیرمعتبر و در بسیاری از موارد بهصورت رایگان دریافت میکنیم. به همین دلیل است که ما همیشه به قالبها، «دروازهی آسیب پذیری وردپرس» میگوییم.
۲. آسیبپذیری SQL Injection
اگر کسی بتواند به پایگاه دادهی وبسایتتان دسترسی پیدا کند و اطلاعات آن را سرقت کند یا در یک احتمال بدتر، آن را تغییر دهد، شما به معنای واقعی کلمه با یک بحران روبهرو میشوید! حملهی SQL Injection که متاسفانه یکی از مهمترین موارد آسیب پذیری وردپرس است، وبسایت شما را دقیقاً با همین خطر مواجه میکند.
اگر چه در سال ۲۰۲۳ تعداد این حملات کمتر از گذشته شده است، با این حال همچنان یکی از رایجترین آسیب پذیری وردپرس شناخته میشود. فقط در سال ۲۰۲۲، حدود ۱۱۶۲ حمله با این روش به وبسایتهای وردپرسی گزارش شده است. همین مسئله اهمیت زیاد توجه به این راه نفوذ به وردپرس را نشان میدهد.
۳. آسیبپذیری در مقابل حملات XSS (Cross-Site Scripting)
یکی دیگر از موارد مهم و شناخته شدهی آسیب پذیری وردپرس در حملات XSS است. متاسفانه پلاگینهای زیادی وجود دارند که راه را برای این حمله باز میکنند؛ به همین دلیل است که همیشه پیشنهاد میشود تا از پلاگینهای کاملاً مطمئن برایِ وبسایت وردپرسیتان استفاده کنید.
از نظر فنی، این حمله با اجرای یک قطعه کُد جاوا اسکریپتی خارج از وبسایت انجام میشود. این یعنی در وبسایتهایی که گستردگی زیادی دارند یا از پلاگینهای متعدد استفاده میکنند، احتمال این حملات بسیار زیاد است. این روش برای نفوذ به وردپرس، معمولاً با دو روش اصلی انجام میشود:
۱. اجرای اسکریپت مخربی که در سمت مرورگر کلاینت اجرا میشود.
۲. اسکریپت مخربی که در هاست یا سرور شما ذخیره و اجرا شده و در نهایت کاربر در مرورگر خود از آن استفاده میکند.
اهمیت این روزنهی آسیب پذیری وردپرس وقتی مشخص میشود که بدانیم این روش نفوذ به وبسایت، منحصر به وبسایتهای وردپرسی نیست و حتی غولهای فناوری دنیا مثلِ اپل، فیسبوک و حتی خودِ گوگل هم در گذشته از همین روش آسیب دیدهاند.
۴. استفاده از نسخههای قدیمی PHP
وردپرس برای قسمت بکاند خود از زبان برنامهنویسی PHP استفاده میکند. حالا اگر ورژن PHP شما بهروز نباشد، راه را برای آسیب پذیری وردپرس باز میکنید. PHP ستون فقرات وردپرس است، به همین دلیل بسیار مهم است که همیشه آن را بهروز نگه دارید تا مطمئن شوید که همهی نقاط آسیب پذیری وردپرس برای هکرها بسته شده است. بهروزرسانی PHP علاوه بر اینکه آسیب پذیری وردپرس را کاهش میدهد، همچنین باعث میشود که عملکرد وبسایت شما بیشتر شود.
تمام نکاتی که در این بخش بهعنوان بررسی آسیب پذیری های وردپرس بررسی کردیم، به یک نتیجهی خیلی مهم میرسیم، اسکن امنیتی وردپرس یکی از مهمترین مراحلی است که در ایمنسازی وبسایتهای وردپرسی وجود دارد. در ادامهی این مطلب، نکات این کار را بیشتر بررسی میکنیم.
اگر میخواهید یکبار برای همیشه با وردپرس و دلایل استفاده از آن برای ساخت وبسایت آشنا شوید، مقاله زیر را بخوانید.
تست امنیتی وردپرس + معرفی ۴ مورد از پلاگینهای برتر
طی تحقیقات انجام شده مشخص شد که شرکتهایی که در بازه زمانی ژوئن ۲۰۱۶ تا دسامبر ۲۰۲۱ از طریق آسیبپذیریهای وردپرس مورد حمله قرار گرفتند، بیش از ۴۳ میلیارد دلار ضرر مالی متحمل شدند. این رقم نشان میدهد که آسیبپذیریهای وردپرس میتوانند خسارات مالی سنگینی را به بار آورند. بنابراین، تمام صاحبان وبسایتهای وردپرسی باید از اهمیت بررسی منظم آسیبپذیریهای وردپرس آگاه باشند. بیایید ببینیم که چگونه آسیب پذیری های وردپرس را بررسی کنیم.
نکته منفی قضیه این است که هکرها هم همیشه در حال بهروز کردن اطلاعاتشان هستند تا بتوانند راهکارهای جدیدتری را برای نفوذ به وبسایتها پیدا کنند. این یعنی ما همیشه در یک جنگ تمام عیار هستیم و حتماً باید اطلاعاتمان را بهروز نگه داریم تا بتوانیم راههای نفوذ به وردپرس را ببندیم.
برای تحقق این هدف، اولین قدم این است که نحوه بررسی آسیبپذیریهای وردپرس را بیاموزیم. ابزارها و پلاگینهای متعددی برای این منظور طراحی شده است که میتوانند مراحل بررسی آسیب پذیری های وردپرس را انجام داده و بر اساس نتایجی که از این ابزارها بهدست میآورید، میتوانید امنیت سایتتان را افزایش دهید. مهمترین این ابزارها عبارتاند از:
۱. افزونه امنیتی Defender
یکی از بهترین ابزارهای بررسی آسیب پذیری های وردپرس، Defender است. این پلاگین قابلیتهای زیادی دارد که شاید بتوان بررسی و مسدودسازی بدافزارها را یکی از مهمترین آنها دانست که اتفاقاً همین قابلیت هم بهصورت رایگان روی این پلاگین قرار گرفته است. برخی از قابلیتهای دیگر این افزونه عبارتاند از:
- امکان بلاک کردن IP و مدیریت آنها
- ابزارهایی برای احراز هویت دو مرحلهای (2FA) از طریق گوگل
- حفاظت از وبسایت برای جلوگیری از نفوذ رباتهایی که رمزهای عبور را حدس میزنند
- مخفی کردن صفحهی ورود به وبسایت بهعنوان یکی از مهمترین موارد آسیب پذیری وردپرس
اگر بخواهید از قابلیتهای نسخهی غیر رایگان Defender استفاده کنید، باید هر ماه مبلغ ۷.۵ دلار بپردازید که البته نسبت به کارهایی که برای شما انجام میدهد، حتی برای ما که در ایران زندگی میکنیم و به ریال هم پول درمیآوریم، مبلغ چندان زیادی نباشد. این نکته را در نظر داشته باشید که Defender Pro حتی اسکن قالب و پلاگینهایی را هم که روی وبسایت اضافه کردهاید را هم انجام میدهد. این موضوع آنقدر اهمیت دارد که Defender Pro را بهعنوان بهترین روش برای بررسی آسیب پذیری وردپرس مشهور کرده است.
۲. افزونه امنیتی Wordfence
دومین پلاگین برای اسکن امنیتی وردپرس Wordfence است. این پلاگین هم میتواند وبسایت شما را بهصورت کامل انجام دهد. نسخهی رایگان این پلاگین در واقع یک اسکنر بدافزار یکپارچه است که هسته، تمها و همچنین دیگر پلاگینهای وردپرس را از نظر امنیتی بررسی و کُدهای مضر را حذف میکند.
نحوهی درآمدزایی این پلاگین هم در نوع خودش جالب است! اگرچه نسخهی رایگان این پلاگین میتواند بسیاری از نیازهای شما را پوشش دهد، اما هشدارهای لحظهای امنیت وبسایتتان را دریافت نمیکنید. در واقع این هشدارها با تاخیر ۳۰ روزه به شما نشان داده میشوند.
قیمت نسخهی حرفهای این پلاگین، حدود ۹۹ دلار در هر ماه برای شما آب میخورد که قیمت تقریباً بالایی دارد. با استفاده از نسخهی Pro این پلاگین، میتوانید از قابلیتهای زیر استفاده کنید:
- بلاک کردن IP
- فایروال قدرتمند
- امکان فعالسازی احراز هویت دو مرحلهای
- ابزارهای حرفهای برای حفاظت و رصد وبسایت
- دریافت هشدارهای امنیتی وبسایت بهصورت لحظهای
- امکان مدیریت امنیت وردپرس برای بیشتر از یک وبسایت بهصورت همزمان
۳. افزونه امنیتی iThemes Security
سومین افزونهای که میتواند مراحل بررسی آسیب پذیری های وردپرس را بهسادگی و البته مطمئن انجام دهد، افزونهی iThremes Security است. این افزونه هم مثلِ بقیهی افزونههایی که تا حالا معرفی کردیم و در ادامه هم با چند تایِ دیگر آنها آشنا میشوید، هم نسخهی رایگان دارد و هم میتوانید از نسخهی حرفهای آن استفاده کنید. این پلاگین میتواند اسکن امنیتی وردپرس را بهصورت کامل برای شما انجام دهد؛ البته این تنها قابلیت iThemes نیست!
با تهیهی نسخهی پولی این افزونه، میتوانید اسکن امنیتی وردپرس را بهصورت حرفهایتر انجام دهید. مثلاً میتوانید تعیین کنید که این اسکن در چه زمانی انجام شود. همچنین در داشبورد این پلاگین، گزینهای قرار دارد که میتوانید از آن برای بررسی آسیب پذیری وردپرس بهصورت آنی استفاده کنید.
برخی از قابلیتهای دیگر این پلاگین، شامل موارد زیر است:
- امکان بکاپگیری از اطلاعات
- محافظت از حملات Brute-Attack در صفحهی لاگین
- ابزارهای پیشرفته برای تست قدرت رمزهای عبور کاربران
- استفاده از قابلیت Google reCAPTCHA در صفحهی لاگین و فرمهای وبسایت برای جلوگیری از نفوذ رباتها
برای استفاده از قابلیتهای پیشرفتهی این افزونه هم باید ماهانه ۸۰ دلار پرداخت کنید. البته نسخهی یک سالهی این پلاگین هم با قیمت ۴۹۹ دلار در دسترس شماست.
برای آشنایی با ۵ راهکار کاربردی برای افزایش امنیت سایت وردپرسی مقاله زیر را بخوانید.
۴. افزونه امنیتی Jetpack
Jetpack هم از جمله پلاگینهایی است که برای مدیریت امنیت وردپرس محبوبیت بسیار بالایی دارد. این پلاگین آنقدر معروف است که به یکی از اجزای اصلی اکوسیستم وردپرس تبدیل شده و بسیاری از هاستینگهای معتبر دنیا، این پلاگین را بهصورت پیشفرض روی هاستهای وردپرسی خود نصب میکنند؛ دلیلشان هم واضح است، Jetpack ابزارهای متنوعی دارد که با استفاده از آنها، تقریباً میتوانید نسبت به رفع آسیب پذیری وردپرس مطمئن باشید.
مهمترین قابلیتهای Jetpack عبارت است از:
- بکاپگیری اتوماتیک
- اسکن اتوماتیک بدافزارها
- حفاظت در برابر Spamها
- پشتیبانی از سیستم احراز هویت دو عاملی
- مانیتور کردن Downtime سرور یا هاست
به یاد داشته باشید که اگر میخواهید از نسخهی حرفهای این افزونه استفاده کنید، باید یکی از دو طرح زیر را انتخاب کنید:
Daily Plan .۱: هزینهی استفاده از این طرح برای هر ماه برابر با ۱۱.۹۷ دلار است.
Real-Time Plan .۲: هزینهی استفاده از این طرح برای هر ماه برابر با ۳۳.۵۷ دلار در هر ماه است.
تفاوت این دو طرح هم تعداد دفعات اسکن کردن و بکاپگیری است که با مراجعه به وبسایت رسمی این پلاگین، میتوانید اطلاعات کاملتری از آن کسب کنید.
امنیت وردپرس، فقط با پلاگین بهدست نمیآید!
استفاده از پلاگینهای وردپرسی، تنها قسمتی از کارِ افزایش امنیت وردپرس را برای شما انجام میدهد. سمتِ دیگر ماجرا که اتفاقاً اهمیت بسیار زیادی هم دارد، هاستی است که از آن برایِ میزبانی از وبسایتتان استفاده میکنید. برای داشتن یک وبسایت وردپرسی ایمن، سریع و مقرونبهصرفه، هاست وردپرس پارس پک بهترین گزینه است. پارس پک، با بررسی دقیق وبسایت شما از نظر آلودگی به ویروسها، خاطرتان را از امنیت سایتتان آسوده میکند. همین حالا روی لینک زیر کلیک کنید و مشخصات هاست وردپرسی پارس پک را ببینید.
جمعبندی
آسیب پذیری وردپرس تهدیدی جدی برای امنیت سایتها هستند. بنابراین، رفع آنها باید در اولویت هر سایتی قرار داشته باشد. قسمتی از این ماجرا دستِ خود شماست. یعنی شما باید رمز عبور قوی برای ورود به سایتتان انتخاب کنید. اما قسمتِ دیگر ماجرا مربوط میشود به پلاگینها، قالب و موارد مختلف دیگری که روی سایتتان نصب میشود. اینطور وقتها استفاده از یک افزونه برای اسکن امنیتی وردپرس، کاملاً ضروری است. در این مطلب از آموزش مدیریت محتوا بلاگ پارس پک، انواع آسیب پذیری های وردپرس را معرفی کردیم و نحوه بررسی آن ها را نیز توضیح دادیم. اگر سوال یا مشکلی در بررسی آسیب پذیری وردپرس دارید در بخش دیدگاهها نظراتتان را برای ما بفرستید تا بهسرعت به آنها پاسخ دهیم.
سؤالات متداول
۱. برای رفع آسیب پذیری وردپرس چهکار باید کرد؟
استفاده از پلاگینهای معتبر برای تست امنیتی، استفاده از رمز عبور قدرتمند برای پایگاه داده و صفحهی لاگین و همچنین استفاده از هاست وردپرسی با امنیت بالا، از جمله نکاتی است که استفاده از آنها برای رفع آسیب پذیری وردپرس مفید است.
۲. بهترین افزونههای اسکن امنیتی وردپرس کدام است؟
افزونههای متعددی برای اسکن امنیتی وردپرس وجود دارد که از جمله مهمترین آنها میتوان به Jetpack ،iThemes Security ،Wordfence و Defender از جمله معتبرترین و معروفترین این افزونهها است.
۳. آیا استفاده از پلاگینهایِ مدیریت امنیت وردپرس رایگان است؟
افزونههای مدیریت امنیت وردپرس، امکاناتی را بهصورت رایگان ارائه میدهند که برای امنیت اولیه سایت کافی است. اما برای بهرهمندی از امکانات پیشرفتهتر و حرفهایتر، باید نسخهی پولی این افزونهها را خریداری کنید.
۴. آیا هاست در افزایش امنیت وردپرس تاثیر دارد؟
امنیت هاست یکی از مهمترین عواملی است که میتواند امنیت وبسایتهای وردپرسی را تضمین کند. به همین دلیل، توصیه میشود از شرکتهای هاستینگ معتبر که از اقدامات امنیتی پیشرفتهای استفاده میکنند، برای خرید هاست وردپرسی استفاده کنید.