نویسنده پشتیبانی وب یار
امتیاز مطلب
تعداد بازدید 4132
تاریخ بروزرسانی ۱۴ آذر ۱۴۰۰

امنیت وردپرس در لوگین

در این مقاله قصد داریم در مورد یکی از مهمترین موضوعات  وب سایت ورد پرسی یعنی امنیت وردپرس صحبت کنیم. امنیت وب سایت باید یک نگرانی همیشگی برای صاحبان وب سایت ها باشد. چرا؟ چون هکرها در 7 روز هفته و 24 ساعت شبانه روز منتظر فرصت هستند. تا از این فرصت برای حمله به وب سایت استفاده کنند. چیزی با نام امنیت بدون خطا وجود ندارد. پس دائما در حال به روز کردن اطلاعات خود در این زمینه باشید. تا بتوانید از حمله های احتمالی جلوگیری کنید. در ادامه با ما همراه باشید تا راهکارهای مفیدی که در این زمینه وجود دارد را بررسی کنیم.

 

امنیت وردپرس

 

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

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

 

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

گاهی وقت ها این اشتباه از طرف برنامه نویس انجام می شود. حتما می پرسید چگونه؟ سهل انگاری، تنبلی، دست کم گرفتن و مسائلی از این قبیل ممکن است باعث شود برنامه نویس از آزمودن درست و محکم متغیرها غافل شود. برخلاف برنامه نویس هکر ها این کار را به خوبی انجام می دهند. با این کار می توانن به خوبی صفحات را دور زده و هویت خود را به عنوان مدیر وب سایت معرفی کنند. برنامه نویس php بطور پیش فرض، داده های ثابت مانند get و post را با درخواست های http ارسال می کند. اگر متغیرهایی که با این نوع از درخواست ها به آنها مقدار داده  می شود به درستی ارزیابی نشوند چه اتفاقی می افتد؟ این موقعیت به هکر ها داد می شود و آنها را بدون دانستن رمز عبور وارد صفحه تعیین هویت شود و خود را به عنوان مدیر سایت معرفی کند.

 

یک طراح خوب وب سایت چگونه عمل می کند؟

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

 

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

اگر به قطعه کد زیر خوب نگاه کنید متوجه می شوید که پس مقدار دهی درست، رمز عبور admin برابر 1 می شود . پس از بررسی متغیر در صورت درست بودن یا همان مقدار 1، تایید هویت انجام شده و پیام خوش آمد گویی ظاهر می‌شود. در غیر اینصورت پیام رمز شما اشتباه است نمایش داده می شود.

 

امنیت وردپرس

خب تنها کاری که هکر باید انجام دهد اینست که مقدار 1 را با متغیر admin  جاگذاری کند. چگونه می تواند این کار را  انجام دهد؟ به قطعه کد زیر نگاه کنید. نفوذگران با فهماندن عدد 1 به به متغییر admin  می توانند به عنوان مدیر به سایت وارد شوند. جایگزاری اطلاعات جعلی به متغیرهایی که به درستی ارزیابی نشدند و معیوب هستند با روش post هدف قرار می گیرد.

 

login block2

صفحه Login . Php ابتدا رمز عبور ارسالی را بررسی میکند و به سرعت درمیابد که رمز عبور اشتباه است و متغیر ادمین نیز مقداردهی نمیشود. در خطوط بعدی , مقدار متغیر ادمین مورد بررسی قرار میگیرد که برابر با ۱ میشود . زیرا بعد از اجرای کد , exploit.php , در یکی از خطوط به صورت مخفی , متغیری با نام Admin , مقدار ۱ را با خود حمل میکند و این مقدار را به Login . Php میرساند. در صفحه Login . Php نیز, متغیر ادمین بدون توجه به مقدار رمز وارد شده, برابر ۱ میشود و سیستم نیز پیغام Welcome to system را به نفوذگر هدیه میدهد.

 

نشست ها در کد نویسی وردپرس

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

 

امنیت وردپرس

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

 

پیمایش دایرکتوری ها

یکی از خطرناکترین موارد امنیتی در وردپرس و تمام CMC های PHP است . هدف اصلی پیمایش دایرکتوری , فراخوانی و خواندن فایلها و مقادیری است که نفوذگر به صورت عادی از دیدن و خواندن آنها محروم است . با استفاده از این نوع آسیب پذیریها می توان به هدف بزرگتری مانند CMD.EXE نیز دست یافت . توابعی که با مقداردهی نامناسب می توانند بستری مناسب برای این اقدام را ایجاد نمایند , عبارتند از :

  • Require
  • Require_once
  • include once
  • Include
  • Fopen

 

 

حتما شما هم به عنوان برنامه نویس با این توابع آشنایی دارید. چقدر با معانی لغوی این توابع آشنایی دارید؟ این توابع وظایفی را به عهده دارند که بی ارتباط با معانب انها نیستند . پس اگر معانی آنها را بدانید می تواند به استفاده شما از آنها کمک بسیاری کند. توابع معمولا یک آرگومان ورودی دریافت می کنند. عملیاتی بر روی آرگومان انجام می شود. خروجی را ایجاد می کنند. موضوعی که در اینجا اهمیت دارد این است که فراخوانی این آرگومان ها توسط هکر ها براحتی قابل اجراست. پس احتمال آسیب به کدهایphp ( و در حال حاضر به ISS5) هم وجود دارد. نفوذگران به وب سایت می توانند از طریق پیمایش دایرکتوری به CMD دسترسی پیدا کرده و ماموریت خود را به انجام برسانند.

راه حل امنیتی چیست؟

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

 

دستورات تحت خط فرمان

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

نکته مهم:

یک وب مستر با محتوای فروشگاهی و محصولات مختلف مانند:

  • تصاویر
  • کتاب

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

 

 

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

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

 

  • Wordfence: رمزهای عبور قوی را اعمال می کند و از حملات brute force جلوگیری می کند.
  • iThemes: با حملات خودکار مبارزه می کند و تعداد تلاش برای ورود را محدود می کند. همچنین اعتبار کاربری سخت تری را پیاده سازی می کند.
  • All in One Security and Firewall: از حملات brute force جلوگیری می کند و اجازه می دهد سطح IP مسدود شود و کاربر پس از یک دوره زمانی مشخص قفل شود. سایر ویژگی های محافظت از ورود به سیستم شامل قفل ورود به سیستم و لیست سفید و لیست سیاه آدرس های IP است.
  • McAfee Secure: چندین لایه حفاظتی از جمله علامت سایت قابل اعتماد، اسکن بدافزار و پوشش محافظت از هویت را برای فروشگاه های تجارت الکترونیک ارائه می دهد.

 

 

کلام آخر:

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

مقالات مرتبط

نشانی ایمیل شما منتشر نخواهد شد.