در ابتدا با خبری بد آغاز میکنیم: هر سال صدها هزار سایت وردپرس هک میشوند.
به نظر ترسناک میرسد درست است؟ اما نه زیاد. چون خبرهای خوبی هم وجود دارند:
حملهی هکرها به دلیل آسیبپذیری آخرین نرمافزار هستهای وردپرس نیست. اکثر سایتها به دلیل مشکلاتی که کاملا قابل پیشگیری هستند، هک میشوند. مانند بهروز رسانی نکردن یا استفاده از کلمه عبورهای ناامن.
وبسایتهای وردپرس چگونه هک میشوند؟ (طبق دادهها)
خب، شما میدانید که سالانه وبسایتهای وردپرسی بسیاری هک میشوند. اما، این اتفاق چگونه رخ میدهد؟ آیا یک مشکل جهانی در وردپرس است؟ یا موضوع از فعالیتهای وبمسترها ناشی میشود؟
در ادامه دلیل هک شدن اغلب سایتهای وردپرسی با توجه به دادههای جمعآوری شده، آورده شده است.
منقضی شدن نرمافزار اصلی
در اینجا یک همبستگی پیشبینی شدهای با گزارش ۲۰۱۷ سوکوری از وبسایتهای هک شده وجود دارد. بین تمام سایتهای هک شده وردپرس، سوکوری نگاهی داشته به ۳۹.۳درصد آنها که تاریخ نرمافزار اصلی وردپرسشان در زمان وقوع حادثه منقضی شده بوده است.
پس شما بلافاصله میتوانید رابطه نزدیک بین هک شدن و استفاده از یک نرمافزار تاریخ گذشته را ببینید. اما این موضوع پیشرفت قابل ملاحظهای از سال ۲۰۱۶ داشته که این آمار ۶۱ درصد بوده است.
طبق پایگاهداده آسیبپذیری WPScan، حدود ۷۴درصد آسیبپذیریهای شناخته شده، در نرمافزار اصلی وردپرس بودهاند. اما نکته تعجبآور اینجاست: نسخههایی که بیشترین آسیبپذیری را داشتهاند به وردپرس X.۳ بازمیگردد.
اما متاسفانه تنها ۶۲ درصد از سایتهای وردپرس از آخرین نسخه استفاده میکنند که باعث میشود بسیاری از سایتها همچنان نسبت به هکرها، آسیبپذیر باشد در حالی که این امر قابل پیشگیری است.
در نهایت میتوانید این ارتباط را یک بار دیگر با آسیبپذیری اساسی وردپرس REST API در فوریه ۲۰۱۷ ببینید. جایی که صدها هزار سایت با مشکل روبهرو شدند.
وردپرس ۴.۷.۱ شامل ایرادهای میشد که برای آسیب زدن به آن سایتها مورد استفاده قرار گرفتند. اما چند هفته پیش از آنکه از آن عیب و ایرادها سوءاستفاده شود، وردپرس ۴.۷.۲ ارائه شد تا تمام نواقص را رفع کند.
تمام مالکان سایتهای وردپرسی که بخشهای امنیت اتوماتیک را غیرفعال نکرده بودند یا بیدرنگ به نسخه جدید وردپرس بهروز رسانی کرده بودند، در اما ماندند. اما کسانی که از بهروز رسانی استفاده کردند به مشکل خوردند.
نکته:تیم امنیتی وردپرس در خصوص رفع مشکلات در نرمافزار اصلی وردپرس و امنیت سایت وردپرس ، بسیار خوب کار میکند. اگر شما به موقع تمام بهروز رسانیهای امنیتی را به کار بگیرید، احتمال اینکه سایت شما با مشکلی به علت آسیبپذیریهای هستهای روبهرو شود،کم است. اما اگر این کار را نکنید، وقتی ویروسی وارد کار شود، شما ریسک کردهاید.
تمها یا افزونههای تاریخ گذشته
یکی از چیزهایی که افراد در خصوص وردپرس خیلی دوست دارند، آرایش گیجکننده تمها(پوسته) و افزونههای آن است. در زمان نوشتن این مطلب، بیش از ۵۶ هزار مورد در مخزن وردپرس و هزاران افزونه پرمیوم دیگر در اینترنت پخش شدهاند.
با این که اینها گزینههای عالی جهت گسترش سایت شما هستند، هر بسط ، مسیر بالقوه جدیدی برای یک هکر است. در حالی که غالب توسعهگران وردپرس در خصوص دنبال کردن استانداردهای کدی و استفاده سریع از هر بهروز رسانی خوب عمل میکنند، همچنان چند مشکل بالقوه وجود دارد:
- یک تم یا افزونه آسیبپذیری دارد و چون برخلاف نرمافزار هستهای وردپرس نظارتهای زیادی دریافت نمیکند، این آسیبپذیری ناشناخته میماند.
- توسعهدهنده ،کار روی آن بسط را متوقف کرده ، اما افراد همچنان از آن استفاده میکنند.
- توسعهدهنده ، به سرعت مشکل را پیدا میکند ، اما دیگران بهروز رسانی را انجام نمیدهند.
مشکل چقدر اساسی است؟
در گزارشی از Wordfence در خصوص مالکان سایتهای هک شده، بیش از ۶۰ درصد آنها میدانند که هکر چگونه با استفاده از ویژگی آسیبپذیری یک تم یا افزونه وارد شده است.
به طور مشابه در گزارش ۲۰۱۶ سوکوری، تنها ۳ افزونه برای بیش از ۱۵ درصد سایتهای هک شدهی مورد بررسی ، مقصر شناخته شدند.
نکته شوکه کننده اما اینجاست:
آسیبپذیری این افزونهها مدتها بوده که شناخته شده ، اما مالکان سایتها تنها افزونه را جهت حفاظت از سایت خود بهروز رسانی نکرده بودند.
نکته: تمها و افزونههای وردپرس فرانویسهای را ایجاد میکنند و باعث میشوند سایت وردپرس شما به روی هکرها باز شود و امنیت سایت وردپرس شما به خطر بیافتد. با این حال بخش اعظم این ریسک را میتوان با استفاده از بهترین شیوهها متوقف کرد. افزونههای خود را بهروز نگه دارید و آنها را تنها از منابع قابل اعتماد نصب کنید.
همچنین باید انجمنهای گواهی عمومی همگانی (GPL) افزونه پرمیوم وردپرس را دریافت کنید. در حالی که وردپرس تحت GPL گواهی گرفته و این عالی است و یکی از دلایلی است که ما وردپرس را دوست داریم، خریدار باید آگاه باشد. به این افزونهها گاه افزونه تهی نیز اطلاق میشود.
خرید افزونه از انجمنهای GPL به این معناست که شما دارید به یک شخص ثالث اعتماد میکنید که آخرین نسخه بهروز رسانیها را از توسعه دهنده دریافت کند و اکثر مواقع شما هیچ پشتیبانی دریافت نمیکنید. دریافت بهروز رسانیهای افزونه از توسعهدهنده ، ایمنترین مسیر است. همچنین ما طرفدار توسعهدهندگان و کار سخت آنها هستیم!
اعتبار لاگینهای در معرض خطر برای وردپرس، FTP و هاستینگ
این واقعا مشکل وردپرس نیست، اما درصد قابل توجهی از هکها از طرف هکرهایی هستند که به اعتبار لاگینهای وردپرس، هاستینگهای وبمسترها یا حسابهای FTP دست میبرند.
در همان گزارش Wordfence، حملههای جستوجوی فراگیر حدود ۱۶ درصد سایتهای هک شده با کلمهعبورهای دزدیده شده، فیشینگ، ایستگاههای کار و حسابهای FTP را در برمیگیرند که هرچند کوچک، اما حضور قابل توجهی دارند.
وقتی هکر کلید در اصلی را پیدا میکند، دیگر میزان امنیت سایت وردپرس شما مهم نیست.
وردپرس در واقع با ایجاد خودکار کلمهعبورهای امن کار عالی انجام میدهد. اما امن نگه داشتن کلمههای عبور و همچنین استفاده از کلمهعبورهای قوی برای هاستینگ و FTP همچنان به کاربران بستگی دارد.
نکته: برداشتن گامهای ساده برای حفظ ایمنی اعتبار حساب میتواند از ورود ساده هکرها جلوگیری کند. در تمام حسابهای وردپرس از کلمههای عبور سخت استفاده کرده یا آن را تقویت کنید و تعداد تلاشها برای لاگین را محدود کنید تا از حملات جستوجوی فراگیر جلوگیری کنید.
در صورت امکان برای حسابهای هاستینگ از رمز دو مرحلهای استفاده کنید و هیچگاه کلمهعبور FTP خود را در متون آشکار نگه ندارید (مانند بعضی برنامههای FTP).
اگر بین FTP و SFTP انتخابی دارید (پروتکل انتقال فایل SSH) همیشه از SFTP استفاده کنید. این اطمینان میدهد که هیچوقت، کلمهعبورهای متنی آشکار یا دادههای فایل انتقال داده نمیشوند.
حملات زنجیره تامین
اخیرا مثالهایی بوده مبنی بر این که هکرها با استفاه از یک حیله شیطنتآمیز به اسم حمله زنجیره تامین به سایتها دسترسی پیدا کردهاند. اساسا هکر فعالیتهای زیر را انجام میدهد:
- خرید یک افزونه در WordPress.org که قبلا باکیفیت بوده است
- اضافه کردن یک ورودی پنهان به کد افزونه
- انتظار برای این که دیگران افزونه را بهروز رسانی کنند و سپس تزریق ورودی پنهان
در حالی که این نوع حملات به هیچ عنوان فراگیر نیستند، جلوگیری از آنها سختتر است زیرا آنها از فعالیتی ناشی میشوند که شما باید آن را انجام دهید (بهروز رسانی یک افزونه).
با این وجود، تیم WordPress.org معمولا خیلی سریع این مسائل را شناسایی کرده و افزونه را از دستورالعمل حذف میکند.
نکته: جلوگیری از این مورد سخت است چون بهروز نگه داشتن در آخرین نسخه کار خوبی است. جهت کمک، افزونههای امنیتی چون Wordfence میتوانند وقتی یک افزونه از WordPress.org حذف شد به شما هشدار دهند تا سریعا به آن بپردازید. یک راهبرد خوبی بکآپ میتواند در ریکاوری شما بدون این که آسیب دائمی ببینید، مفید باشد.
محیط هاستینگ ضعیف و فناوری منقضی شده
ورای آن چه برای امنیت سایت وردپرس شما رخ میدهد، محیط هاستینگ شما و فناوریهایی که استفاده میکنید نیز تفاوت ایجاد میکنند. برای مثال با وجود این که PHP 7 در مقایسه با PHP 5 بهبودهای امنیتی بسیار بیشتری ارائه میدهد، تنها حدود ۳۳ درصد سایتهای وردپرس از PHP 7 یا نسخههای بالاتر استفاده میکنند.

پشتیبانی امنیتی PHP 5.6 رسما در پایان ۲۰۱۸ به پایان میرسد. و نسخههای پایینتر PHP 5 نیز سالهاست که پشتیبانی امنیتی دریافت نکردهاند.
این یعنی استفاده از یک محیط هاستینگ PHP 5.6 یا پایینتر، به زودی شما را در معرض آسیبپذیریهای بالقوه امنیتی شناخته شده در PHP قرار میدهد.
با وجود این حقیقت، میزان قابل توجه حدود ۲۸ درصد سایتهای وردپرس همچنان از نسخههای پایینتر از PHP 5.6 استفاده میکنند. با توجه به این که اخیرا تعداد آسیبپذیریهای ناشناخته PHP را در سالهای قبل دیدهایم، این مشکل بزرگی است.
ورای دسترسی دادن به شما در خصوص آخرین فناوریها، استفاده از هاستینگ امن وردپرس میتواند کمک کند تا به طور خودکار بسیاری از آسیبپذیریهای امنیتی بالقوه را با موارد زیر متوقف کنید:
- برنامه فایروال وب
- بهروز رسانیهای خودکار برای موارد امنیتی
- کلمهعبور دو مرحلهای
- بکآپهای خودکار
نکته: استفاده از یک محیط امن هاستینگ و نسخههای آخر فناوریهای مهم مانند PHP کمک میکند تا امنیت سایت وردپرس شما بیشتر شود.
چه کسی مسئول امنیت سایت وردپرس است؟
حال ممکن است فکر کنید که چه کسی مسئول مبارزه با تمام مسائل مطرح شده است؟
به طور رسمی این مسئولیت به تیم امنیتی وردپرس برمیگردد (هرچند مشارکتکنندگان فردی و توسعهدهندگان از سرتاسر دنیا نقش بزرگی در امن نگه داشتن وردپرس دارند).
تیم امنیتی وردپرس شامل ۵۰ متخصص اعم از پژوهشگران امنیتی و توسعهدهندگان پیشرو میشود. حدود نیمی از این متخصصان در شرکت به طور اتوماتیک کار میکنند. بقیه در امنیت وب فعالیت دارند و تیم همچنین با پژوهشگران امنیتی و شرکتهای هاستینگ مشورت میکند.
اگر به نحوه عملکرد تیم امنیتی وردپرس علاقه دارید، میتوانید گفتوگوی ۴۸ دقیقهای آرون کمپبل را از WordCamp اروپا در سال ۲۰۱۷ ببینید. اما به طور کلی تیم امنیتی وردپرس فعالیتهای زیر را انجام میدهد:
- شناسایی و رفع باگها و مشکلات بالقوه با استفاده از ابزار بخشی، مانند HackerOne’s bug bounties
- مشاوره در خصوص تمام نسخههای هستهای وردپرس
تیم امنیتی وردپرس ، سیاستی مبنی بر شفافسازی دارد. یعنی به محض این که آنها باگ را رفع کرده و برنامه بدون مشکل امنیتی را منتشر میکنند، به طور عمومی مسئله را اعلام میکنند (این بخشی از دلیل مورد حمله قرار گرفتن بسیاری از سایتها در سال ۲۰۱۷ بود، آنها همچنان بهروز رسانی را حتی پس از این که تیم امنیتی به طور عمومی باگ را اعلام کرده بود، انجام نداده بودند).
کاری که تیم امنیتی وردپرس انجام نمیدهد این است که تمام تمها و افزونههای WordPress.org را چک کند. این تمها و افزونهها به طور داوطلبانه مورد بررسی قرار میگیرند اما این مرور تضمینی بر این نیست که آنها آسیبپذیری امنیتی ندارند و امنیت سایت وردپرس شما به طور کامل تضمین نشده است.
اگر تمام دادهها و وقایع ذکر شده را ببینید، مشاهده میکنید که روند عمومی زیر وجود دارد:
در حالی که هیچ سیستم مدیریت محتوایی به طور ۱۰۰ درصد امنیت ندارد، وردپرس یک سیستم امنیتی باکیفیت برای نرمافزار هستهای دارد و اکثر هکها ناشی از این هستند که وبمسترها بهترین شیوهها را در خصوص امنیتهای ساده به کار نبردهاند.
نظرات کاربران