SHET22

رفع مشکل امنیتی افزونه WP Statistics در وردپرس

رفع مشکل امنیتی افزونه WP Statistics در وردپرس

اگه برای دیدن آمار سایتتون از افزونهٔ WP Statistics استفاده می‌کنید، شاید خبر نفوذ SQL Injection این افزونه نگرانتون کرده باشه. خیالتون راحت؛ این مشکل به سال ۲۰۱۷ برمی‌گرده و خیلی وقته برطرف شده. پس فقط نصب بودن WP Statistics به این معنی نیست که سایتتون هک شده.

توی این مقاله می‌بینیم این مشکل دقیقاً چی بوده، کدوم نسخه‌ها رو درگیر می‌کرده و الان چه کاری از دست شما برمیاد. جواب کوتاه اینه: نسخهٔ افزونه رو بررسی کنید، قبل از هر تغییری نسخهٔ پشتیبان بگیرید و WP Statistics رو به آخرین نسخهٔ پایداری که پیشخوان وردپرس پیشنهاد می‌ده به‌روزرسانی کنید.

ماجرای آسیب‌پذیری WP Statistics چی بود؟

سال ۲۰۱۷ یک نقص امنیتی با شناسهٔ CVE-2017-18515 در WP Statistics گزارش شد. CVE یک شناسهٔ عمومی برای مشخص کردن دقیق آسیب‌پذیری‌های امنیتیه. این نقص به مهاجمی که از قبل وارد سایت شده بود اجازه می‌داد از بخش خاصی از افزونه برای اجرای تزریق SQL استفاده کنه.

یعنی این حمله بدون دسترسی به سایت انجام نمی‌شد. طبق گزارش Tenable، مهاجم باید اول وارد سایت می‌شد و یک حساب کاربری تأییدشده داشت. بااین‌حال، نقص مهمی بود؛ چون می‌تونست اطلاعات پایگاه داده رو در معرض خطر بذاره.

SQL Injection یعنی چی؟

SQL Injection یا «تزریق SQL» یعنی مهاجم یک ورودی دست‌کاری‌شده برای سایت می‌فرسته تا دستور ناخواسته‌ای روی پایگاه داده اجرا بشه. پایگاه داده همون جاییه که اطلاعاتی مثل نوشته‌ها، تنظیمات و حساب‌های کاربری سایتتون نگهداری می‌شن.

مثلاً اگه افزونه ورودی کاربر رو درست بررسی نکنه، ممکنه بخشی از اون ورودی به‌جای یک متن معمولی، مثل دستور پایگاه داده اجرا بشه. نتیجه به نوع نقص و سطح دسترسی مهاجم بستگی داره؛ پس همهٔ آسیب‌پذیری‌های SQL Injection اثر یکسانی ندارن.

کدوم نسخه‌های WP Statistics آسیب‌پذیر بودن؟

آسیب‌پذیری CVE-2017-18515 نسخهٔ 12.0.7 و نسخه‌های قدیمی‌تر رو درگیر می‌کرد و اصلاحش در نسخهٔ 12.0.8 منتشر شد. فهرست تغییرات رسمی WP Statistics در GitHub هم رفع SQL Injection رو برای نسخهٔ 12.0.8 ثبت کرده.

نسخهٔ 12.0.9 کمی بعد منتشر شد و تغییر امنیتی اون بیشتر به رفع XSS مربوط بود. XSS یا «تزریق اسکریپت» نوع دیگه‌ای از آسیب‌پذیریه که ممکنه کد ناخواسته‌ای رو داخل مرورگر کاربر اجرا کنه. پس نسخهٔ 12.0.8 آسیب‌پذیر نبود و لازم نیست 12.0.9 رو اولین نسخهٔ امن برای این مشکل بدونیم.

مشکل در کدوم تابع بود؟

بخش آسیب‌پذیر به تابع wp_statistics_searchengine_query() مربوط می‌شد. افزونه سطح دسترسی کاربر رو به‌اندازهٔ کافی بررسی نمی‌کرد و دادهٔ ورودی هم به‌شکل امن برای استفاده در درخواست پایگاه داده آماده نمی‌شد.

البته برای رفع مشکل نیازی نیست این تابع یا فایل‌های افزونه رو خودتون دست‌کاری کنید. ویرایش مستقیم فایل‌ها ممکنه سایت رو به‌هم بریزه و تغییراتتون هم با به‌روزرسانی بعدی از بین می‌ره.

آیا الان هم سایت شما در خطره؟

اگه WP Statistics رو مرتب به‌روزرسانی کرده باشید، آسیب‌پذیری سال ۲۰۱۷ نباید روی نسخهٔ فعلی سایتتون باشه. فعالیت افزونه هم متوقف نشده و همچنان در مخزن رسمی وردپرس منتشر و به‌روزرسانی می‌شه.

ولی رفع این نقص قدیمی به این معنی نیست که می‌تونید به‌روزرسانی‌های بعدی رو نادیده بگیرید. افزونه‌ها در طول زمان تغییر می‌کنن و ممکنه مشکل امنیتی تازه‌ای براشون پیدا بشه. برای دیدن سابقهٔ گزارش‌های امنیتی این افزونه می‌تونید فهرست آسیب‌پذیری‌های WP Statistics در WPScan رو بررسی کنید.

روش بررسی و به‌روزرسانی افزونه WP Statistics

اول از فایل‌ها و پایگاه دادهٔ سایتتون نسخهٔ پشتیبان بگیرید. خیلی از سرویس‌های میزبانی این امکان رو داخل پنل هاست می‌ذارن. مطمئن بشید فرایند پشتیبان‌گیری کامل شده و روش برگردوندن نسخهٔ پشتیبان رو هم بلدید.

حالا وارد پیشخوان وردپرس بشید و از منوی «افزونه‌ها» روی «افزونه‌های نصب‌شده» بزنید. WP Statistics رو توی فهرست پیدا کنید. شمارهٔ نسخه کنار اطلاعات افزونه دیده می‌شه. اگه نسخهٔ تازه‌ای آماده باشه، وردپرس دکمهٔ به‌روزرسانی رو هم همون‌جا نشون می‌ده.

در صفحهٔ افزونه‌های نصب‌شده می‌تونید نسخهٔ WP Statistics رو ببینید، افزونه رو به‌روزرسانی کنید و آپدیت خودکار اون رو فعال کنید.
در صفحهٔ افزونه‌های نصب‌شده می‌تونید نسخهٔ WP Statistics رو ببینید، افزونه رو به‌روزرسانی کنید و آپدیت خودکار اون رو فعال کنید.

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

وردپرس توی همین صفحه امکان به‌روزرسانی خودکار افزونه‌ها رو هم در اختیارتون می‌ذاره. اگه ممکنه اصلاحیه‌های مهم رو فراموش کنید، می‌تونید به‌روزرسانی خودکار WP Statistics رو فعال کنید. بااین‌حال، باز هم بهتره نسخه‌های پشتیبان سایتتون رو بررسی کنید و بعد از هر آپدیت، نگاهی به بخش‌های مهم سایت بندازید.

آیا وردپرس خودش آمار بازدید رو نشون می‌ده؟

هستهٔ وردپرس صفحه‌ای شبیه گزارش‌های کامل WP Statistics برای نمایش بازدیدکننده‌ها، منابع ورودی و جزئیات آماری نداره. برای دیدن این نوع گزارش‌ها معمولاً به یک افزونه یا سرویس آمار نیاز دارید.

WP Statistics یک افزونهٔ رایگانه و نسخهٔ اصلیش از مخزن رسمی وردپرس نصب می‌شه. برای رفع این آسیب‌پذیری قدیمی هم نیازی نیست افزونهٔ امنیتی پولی بخرید. کار اصلی شما اینه که WP Statistics رو به نسخهٔ پایدار فعلی به‌روزرسانی کنید و نسخهٔ پشتیبان داشته باشید.

افزونه WP Statistics
افزونه WP Statistics

چند کار مهم بعد از به‌روزرسانی

  • نسخهٔ جدید افزونه رو توی صفحهٔ افزونه‌های نصب‌شده بررسی کنید.
  • صفحهٔ اصلی، ورود کاربران و گزارش‌های آماری رو امتحان کنید.
  • افزونه‌ها و قالب‌هایی رو که استفاده نمی‌کنید حذف کنید.
  • برای مدیر سایت یک رمز قوی و ورود دومرحله‌ای در نظر بگیرید.
  • وردپرس، قالب‌ها و همهٔ افزونه‌ها رو مرتب به‌روزرسانی کنید.
  • اگه احتمال می‌دید قبلاً نفوذی اتفاق افتاده، گزارش‌های امنیتی و حساب‌های کاربری ناشناس رو بررسی کنید.

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

جمع‌بندی

مشکل SQL Injection افزونهٔ WP Statistics یک رخداد امنیتی واقعی بود، ولی به سال ۲۰۱۷ و نسخهٔ 12.0.7 و قدیمی‌تر برمی‌گشت. این نقص در نسخهٔ 12.0.8 رفع شد. به همین دلیل، پیشنهاد نصب نسخهٔ 12.0.9 دیگه راهنمای مناسبی برای امروز نیست.

اگه هنوز نسخه‌ای خیلی قدیمی روی سایتتون دارید، سراغ یک نسخهٔ تاریخی مثل 12.0.9 نرید. اول نسخهٔ پشتیبان بگیرید و بعد آخرین نسخهٔ پایداری رو نصب کنید که پیشخوان وردپرس از مخزن رسمی پیشنهاد می‌ده. در پایان هم عملکرد سایتتون رو بررسی کنید و اگه لازم بود، به‌روزرسانی خودکار افزونه رو فعال کنید.

سؤالات متداول

آیا WP Statistics هنوز به این SQL Injection آسیب‌پذیره؟

نه، این نقص نسخهٔ 12.0.7 و نسخه‌های قدیمی‌تر رو درگیر می‌کرد و در نسخهٔ 12.0.8 رفع شد. برای امنیت بهتر، آخرین نسخهٔ پایدار افزونه رو از مخزن رسمی وردپرس نصب کنید.

باید WP Statistics رو به نسخهٔ 12.0.9 آپدیت کنم؟

نه، نسخهٔ 12.0.9 هم خیلی قدیمیه. بعد از گرفتن نسخهٔ پشتیبان، افزونه رو به آخرین نسخهٔ پایداری آپدیت کنید که پیشخوان وردپرس پیشنهاد می‌ده.

برای رفع این مشکل به افزونهٔ امنیتی پولی نیاز دارم؟

نه، این نقص با به‌روزرسانی خود WP Statistics رفع می‌شه. نسخهٔ اصلی WP Statistics رایگانه و می‌تونید اون رو از مخزن رسمی وردپرس نصب کنید.

آیا خود وردپرس آمار کامل بازدید رو نشون می‌ده؟

نه، هستهٔ وردپرس گزارش کاملی مثل WP Statistics برای بازدیدکننده‌ها و منابع ورودی نداره. برای دیدن این گزارش‌ها باید از یک افزونه یا سرویس آمار استفاده کنید.

نظر شما در این مورد چیه؟

  1. کاربر مهمان۱۶ آذر ۱۳۹۸

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

    • تیم پشتیبانیتیم پشتیبانی۱۶ آذر ۱۳۹۸

      با سلام و احترام
      از گوگل آنالیتیکس استفاده بفرمایید

  2. کاربر مهمان۱۳ مهر ۱۳۹۶

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

    • تیم پشتیبانیتیم پشتیبانی۱۳ مهر ۱۳۹۶

      درود.

      بله، منابع زیادی مصرف می شود.

  3. U7097۱۴ تیر ۱۳۹۶

    سلام من همین الان از کانال میهن وردپرس این مقاله رو دیدم
    من هم نسخه ۱۲.۰.۸ داشتم همین الان در حال بروزرسانی به ۱۲.۰.۹ هست
    همگی تیم میهن وردپرس دستتون طلا
    خداقوت

پشتیبانپشتیبانپشتیبانپشتیبانپشتیبان
تیم میهن وردپرس
پشتیبانپشتیبانپشتیبانپشتیبانپشتیبان
تیم میهن وردپرسخارج از ساعات کاری هستیم؛ دستیار هوش مصنوعی پاسخگوی شماست.هوش مصنوعی

در حال بارگذاری...

هر سوالی دارید بپرسید.پاسخگوی شما هستیم.