هک وردپرس

هک وب سایت های وردپرسی (wordpress hacking)

با محبوبیت بیشتر طراحی وب سایت، یک سری CMS ها هم محبوبیت زیادی پیدا کردند. یکی از این CMSها وردپرس است. آنقدر محبوبیت پیدا کرده است که بیشتر از ۴۰ درصد کل وب سایت‌های جهان را تشکیل می‌دهد. با محبوبیت آن، حملات به این مدل وب سایت‌ها هم بالا رفت و مشکلات زیادی برای صاحبان این وب سایت‌ها به وجود آورده است. پیدا کردن راه‌حل برای این حملات بسیار واجب است و باعث امنیت وب سایت وردپرسی شما می‌شود. اگر بخواهم چند مدل حمله را برای شما لیست کنم می‌توانم به حملاتی مانند بدافزارها، حملات DDos، حملات XSS و ... می‌توان اشاره کرد.

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

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

زمان مطالعه: 3 دقیقه
بازدید: 2338
پرسش و پاسخ: 0

این که وب سایت‌های وردپرسی بخش عظیمی از وب سایت‌های جهان را پوشش می‌دهد بر کسی پوشیده نیست. طبق آمار در سال ۲۰۲۲ این آمار بیش از ۴۳ درصد مل وب سایت‌های جهان را تشکیل می‌دهد. این آمار باعث می‌شود که درصد حملات به این نوع وب سایت‌ها بیشتر شود. این حملات راه‌های مختلفی دارد که در این مقاله به بررسی آن‌ها می‌پردازیم.

هک وب سایت وردپرس

اگر شما هم سایت وردپرسی دارید این مطلب برای برقراری امنیت سایت شما بسیار مفید است.

وردپرس بزرگترین سیستم مدیریت محتوا در جهان با بیش از ۵۰۰۰۰ افزونه و تم است که به افراد حرفه ای و تازه کار اجازه می دهد تا وب سایت های شگفت انگیز و حرفه ای را به راحتی ایجاد کنند. اما با محبوبیت زیاد، پایگاه کاربری عظیم و گزینه های توسعه رایگان در دسترس، وردپرس اغلب هدف مجرمان سایبری است که از آسیب پذیری‌ها برای ایجاد آسیب سوء استفاده می‌کنند.

در اینجا ۷ مورد از قابل توجه‌ترین انواع حملاتی که امروزه صفحات وردپرس را تحت تاثیر قرار می‌دهند و نحوه ایمن سازی در مقابل این حملات را آورده ایم:

حملات Brute Force برای هک وردپرس

حملات Brute Force در وردپرس

این شکل از حمله بسیار زیبا نیست، اما ثابت کرده است که در برابر رمزهای عبور ضعیف و نام‌های کاربری مانند «123»، «password» و «admin» بسیار مؤثر است.

با این حال، یک حمله ساده یک راه دفاع ساده دارد. نکات زیر را برای جلوگیری از این حمله رعایت کنید:

  • رمزهای عبور طولانی
  • ترکیبی از کاراکترهای عددی و الفبایی برای رمز عبور
  • از کلمات فرهنگ لغت و کلمات مربوط به سایت یا شرکت خود برای رمز عبور اجتناب کنید
  • از تعویض‌های رمز آشکار مانند «Flat/Fl@t» اجتناب کنید
  • احراز هویت دو مرحله ای را به عنوان یک لایه امنیتی اضافی اضافه کنید

نکته : یک قانون سرانگشتی این است که اگر به نظر می‌رسد که تعداد زیادی درخواست ورود تصادفی دریافت می‌کنید، به احتمال زیاد تحت یک حمله brute force قرار گرفته‌اید.

Predictable Login Credentials برای هک وردپرس

یک روش نفوذ مانند Brute Force می باشد که از صفحات wp-admin با امنیت پایین، سوء استفاده می کند. پنل مدیریتی به کاربران امکان دسترسی به اقدامات مختلفی را در وب سایت وردپرس می دهد و در صورتی که هکر حتی به بخشی از آن دسترسی داشته باشد می تواند عملیات خرابکارانه زیادی روی سایت انجام دهد.

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

این نوع حملات از ابزارهای Brute Force، برای تشخیص رمز عبور استفاده می کنند که از طریق لیست رمزهای فاش شده، سعی در پیش بینی رمزهای عبور ضعیف دارند. این حمله می تواند به wp-admin، کنترل پنل هاست، حساب های FTP، پایگاه داده SQL یا اکانت های ایمیل مرتبط با مدیر سایت وردپرسی، انجام گیرد.

با وجود گزینه های بسیار متنوعی که یک هکر می تواند برای نفوذ به سایت وردپرسی انتخاب کند، مهمترین نکته این است که هرگز از نام های کاربری مانند "admin" استفاده نکنید. برای دسترسی به بخش مدیریت وردپرس باید تدابیر امنیتی بیشتری در نظر بگیرید، مانند فعال کردن ورود دو مرحله ای یا 2FA یا ورود به پیامک که می تواند ورود غیرمجاز به مدیریت سایت را تا حد زیادی کاهش دهد.

همچنین تنظیم رمزهای عبور قوی برای تمامی کاربران سایت، بسیار مهم است. اگر از افزونه فایروال در وردپرس استفاده می کنید، لایه حفاظتی ایجاد شده توسط آن، می تواند درخواست های ارسال شده به wp-admin به جز IP هایی که از قبل در لیست مجاز قرار داده اید را مسدود کند.

آسیب پذیری های اصلی برای هک وردپرس

آسیب پذیری های اصلی وردپرس

وردپرس منبع باز(open source) است و به کسب و کار شما اجازه می‌دهد هزینه‌های خود را کاهش دهید و فرصت‌های نوآوری گسترده‌ای را برای خود فراهم می‌کنید.

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

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

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

برای محافظت از سایت خود در برابر تهدیدات جدید و موجود، همیشه مطمئن شوید که آخرین به‌روزرسانی‌ها را نصب کرده‌اید. این کار را با ورود به حساب مدیریت وردپرس خود انجام دهید, به Dashboard / Updates بروید و وردپرس خود را به آخرین نسخه آپدیت کنید.

هک وردپرس با حملات SQL Injection

هک وردپرس با حملات SQL Injection

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

هر بخش ورودی کاربر در سایت وردپرس شما مانند فرم تماس یا کادر جستجو ممکن است در معرض حمله SQL Injection باشد.

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

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

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

آسیب پذیری پلاگین ها و تم ها در وردپرس

آسیب پذیری پلاگین ها و تم ها در وردپرس

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

یک افزونه قدیمی ممکن است در معرض حمله قرار گیرد، بنابراین در اینجا چند نکته برای محافظت از صفحه شما وجود دارد:

  • همیشه افزونه های خود را از داشبورد وردپرس به روز کنید
  • از Plugin Security Scanner موجود در Dashboard > Tools برای شناسایی مشکلات احتمالی افزونه های فعلی خود استفاده کنید

نکته : اگر افزونه ای بیش از 6 ماه به روز نشده باشد، ممکن است توسعه دهنده آن را رها کرده باشد. این پلاگین ها بیشتر در برابر سوء استفاده‌ها آسیب‌پذیر هستند و بهتر است به طور کامل از استفاده آنها اجتناب کنید.

هک وردپرس با Cross Site Scripting

هک وردپرس با Cross Site Scripting

این یک نوع حمله دیگری است که به طور منظم دیده می شود و اغلب به عنوان حمله XSS شناخته می‌شود.

حمله XSS آپلود بی‌صدا کد جاوا اسکریپت مخرب توسط یک مجرم سایبری با هدف جمع‌آوری داده‌ها بدون اطلاع کاربر یا هدایت مجدد به سایت دیگری است.

روش‌های فیشینگ مانند اشتراک در خبرنامه یا پست‌های انجمن، انواع رایج حملات XSS هستند.

بهترین راه برای جلوگیری از این حمله، اطمینان از روش‌های صحیح اعتبارسنجی داده‌ها در کل سایت وردپرس شما است. اعتبارسنجی مهارت مهمی است که برای امنیت مناسب لازم است و اساساً به معنای بررسی این است که همه داده‌های وب ‌سایت شما با آنچه انتظار دارید مطابقت داشته باشد.

وردپرس دارای چندین توابع توسعه دهنده فوق العاده برای پاکسازی داده‌ها است، اما برای کسانی که شروع به اسکریپت نویسی می‌کنند، چند افزونه وردپرس XSS وجود دارد که به محافظت در برابر تزریق کد کمک می کند. برخی از افزونه های وردپرس می‌توانند با ارائه عملکردهای امنیتی برای مسدود کردن و جلوگیری از آسیب پذیری‌ها به جلوگیری از حملات XSS کمک کنند.

هک وردپرس با حملات DDos

هک وردپرس با حملات DDos

حملات DDoS یکی از حملاتی است که امروزه بیشتر مورد بحث قرار می گیرد که بیمارستان ها، بانک ها و سازمان های برجسته در سراسر جهان مانند سونی، نتفلیکس و آمازون را فلج کرده است.

Distributed Danial Of Service (DDoS) زمانی اتفاق می افتد که یک وب سرور با حجم زیادی از درخواست ها بمباران می شود که در نهایت سرور از کار می افتد.

حملات DDoS بسیار سازماندهی شده هستند و وب سایت های کوچک و بزرگ را هدف قرار می دهند.

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

یک حمله DDos قدرتمند است اما راه هایی برای دفاع از وب سایت خود وجود دارد مانند:

  • برای کاهش تعداد درخواست‌ها، می‌توانید APIهای مورد سوء استفاده را در طول حمله غیرفعال کنید
  • غیرفعال کردن برنامه های شخص ثالث برای تعامل با صفحه وردپرس شما نیز ممکن است کمک کننده باشد
  • استفاده از پلاگین‌هایی که به طور خودکار IP هایی را که فعالیت‌های مشکوک انجام می‌دهند مسدود می‌کنند

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

در میان سایر ویژگی‌ها، افزونه Search Improvement Console وردپرس IP‌هایی را که درخواست‌های خاصی را که شما تنظیم کرده‌اید جستجو می‌کنند، مسدود می‌کند.

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

هک وردپرس با بد افزارها

هک وردپرس با بد افزارها

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

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

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

به یاد داشته باشید که همیشه به‌روزرسانی‌ها را بررسی کنید و یک VPN با آخرین محافظت از نشت DNS، احراز هویت SSL و پروتکل‌های رمزگذاری نصب کنید تا شبکه و دستگاه‌های خود را ایمن نگه دارید.

مطمئن شوید که یک پلاگین پشتیبان وردپرس با پشتیبان گیری برنامه ریزی شده منظم نصب کرده اید.

چگونه یک گواهی SSL رایگان در وردپرس تنظیم کنیم یک آموزش خوب برای راه اندازی ssl در وردپرس برای شماست.

روش‌هایی که منجر به هک وب سایت وردپرسی می شود:

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

دسترسی به فایل wp-config.php

wp-config.php  حاوی اطلاعات حساسی است که برای ورود به پایگاه داده وردپرس استفاده می شوند. اکثر شرکت های هاستینگ، مدیریت پایگاه داده از راه دور را مسدود می کنند، مگر اینکه IP درخواست کننده از طریق cPanel یا WHM در لیست مجاز قرار گرفته باشد. جزئیات موجود در wp-config.php بسیار حساس هستند و به بهترین وجه می بایست محافظت شوند. افزودن یک لایه حفاظتی اضافی برای ممانعت از دسترسی به این فایل، جهت کاهش خطرات امنیتی مفید است. برای انجام این کار، کد زیر را به فایل htaccess. اضافه کنید:.

<files wp-config.php>

order allow,deny

deny from all

</files>

عدم تغییر نام پیشوند جدول

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

استفاده از FTP ساده به جای  SFTP / SSH

حساب های FTP برای آپلود فایل ها به سرور وب خود با استفاده از یک سرویس گیرنده FTP استفاده می شود. بیشتر ارائه دهندگان میزبانی از اتصالات FTP با استفاده از پروتکل های مختلف پشتیبانی می کنند. شما می توانید با استفاده از FTP، SFTP یا SSH ساده متصل شوید.

هنگامی که شما با استفاده از FTP ساده به سایت خود متصل می شوید، رمز عبور شما به سرور رمزگذاری نشده ارسال می شود. می توان آن را جاسوسی و به راحتی به سرقت برد. به جای استفاده از FTP، همیشه باید از SFTP یا SSH استفاده کنید.

شما نمی خواهید کاربر FTP خود را تغییر دهید. بیشتر کاربران FTP می توانند به SFTP و همچنین SSH به وب سایت شما متصل شوند. شما فقط باید پروتکل SFTP-SSH را هنگام اتصال به وب سایت خود تغییر دهید.

مجوز فایل نادرست

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

تمام فایل های وردپرس شما باید دارای مجوز 644 باشند. تمام پوشه ها در سایت وردپرس شما باید مجوز 755 داشته باشند.

میزبانی وب ناامن

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

این مورد را می توان به راحتی با انتخاب بهترین ارائه دهنده هاست وردپرس برای وب سایت خود حل کرد. این تضمین می کند که سایت شما در یک پلت فرم امن ذخیره می شود. سرورهای مناسب امن می توانند بسیاری از حملات رایج را بر روی سایت های وردپرس متوقف کنند.

باگ امنیتی wp/v2/users

یک باگ مهم در وردپرس وجود دارد که می‌شود توسط این باگ نام کاربری و همچنین مشخصات پروفایل ادمین رو به دست آورد (البته به جز رمز عبور)

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

ابتدا ادرس دامنه را وارد کنید سپس در آخر آدرس عبارت wp-json/wp/v2/users رو وارد کنید

برای مثال : websitename.com/wp-json/wp/v2/users اگر این باگ توسط برنامه نویس آن سایت حل نشده باشد خواهید دید که اطلاعات ورود ادمین از جمله یوزر / ایمیل / در صورتی که شمارتونو بزنید شماره تماس و اگر رزومه ای نوشته باشید اونوقت رزومه شما را نمایش خواهد داد.

حال برای رفع این مشکل کافی است وارد مسیر publice_html  شوید سپس وارد پوشه‌ی wp-content  شوید سپس وارد پوشه‌ی themes شوید سپس وارد پوشه‌ی قالبی که فعال کردید شوید سپس در داخل آن فایلی به اسم functions.php  وجود دارد آن را ادیت کنید و در آخر کدها کدی که در زیر مشاهده می کنید را قرار دهید.

add_filter( 'rest_endpoints', function( $endpoints ){
if ( isset( $endpoints['/wp/v2/users'] ) ) {
unset( $endpoints['/wp/v2/users'] );
}
if ( isset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] ) ) {
unset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] );
}
return $endpoints;
});

حالا دوباره وارد آدرس باگ وردپرس شوید خواهید دید که با ارور 404 مواجه خواهید شد و هیچ دیتایی برای شما نمایش داده نمی‌شود.

در این مقاله در مورد وردپرس صحبت شد دقت کنید که بهتر است در مورد CMS یا سیستم مدیریت محتوا چیست؟ مطالعه داشته باشید.

بهزاد میرزازاده
مسیر درست با پرسش های درست ساخته می شود

مشاهده تمام مطالب نویسنده