Security

کد نویسی ضعیف سایت های وردپرس را در معرض خطر هک شدن قرار می دهد

WordPress محبوب ترین سیستم مدیریت محتوا در جهان است که برای بیش از 75 میلیون وب سایت استفاده می شود. 22٪ دامنه های جدید ثبت شده در ایالات متحده، وردپرس را نصب می کنند. به همین دلیل برای بسیاری تعجب آور است که چرا برای وردپرس از طرف برنامه نویسان، برنامه ای مناسب و مدون در نظر گرفته نشده است. دراین مقاله معایب کد نویسی ضعیف وردپرس بیان می شود.

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

 کد نویسی ضعیف
کد نویسی ضعیف

کد نویسی ضعیف چیست؟

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

کد به خوبی قالب بندی نشده است

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

Typos در کد

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

عدم استفاده از کد مدولار

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

عدم استفاده از ورودی کاربر

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

محافظت نادرست از داده ها

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

کد نویسی ضعیف وردپرس
کد نویسی ضعیف وردپرس

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

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

بررسی خطای ضعیف

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

چرا کد نویسی ضعیف وردپرس خطر ناک است؟

طبق اعلام موسسه مهندسی نرم افزار، 90 درصد از کل حوادث امنیتی گزارش شده در اثر سوء استفاده و نقص در طراحی یا کد نرم افزار رخ می دهد. بسیاری از این نقص ها در نتیجه شیوه های کد نویسی ضعیف رخ داده است.

براساس گزارش ریسک حملات سایبری 2015 HP Security Research 2015: ‘علل اصلی آسیب پذیری های نرم افزاری که معمولاً مورد سوء استفاده قرار می گیرند نقص و اشکالات هستند. متخصصان امنیت دریافته اند که بیشتر آسیب پذیری ها ناشی از تعداد نسبتاً کمی از خطاهای برنامه نویسی رایج است. واضح است که شیوه های نادرست کد نویسی می تواند آسیب پذیری هایی را در وب سایت شما ایجاد کند که توسط مجرمان سایبری قابل استفاده باشد.

وردپرس چگونه دارای کد نادرست است؟

قرارداد های نامگذاری وردپرس عجیب هستند

یکی از رایج ترین انتقادات به وردپرس نام های متغیر و نامتعارف و نامنظم آن است. به عنوان مثال، یک تابع get_the_content وجود دارد که داده های ارسال شده به بلاگ را بازمی گرداند و یک تابع the_content که داده های ارسال شده به بلاگ را چاپ می کند. اما به طرز عجیبی، get_permalink داده ها را برمی گرداند، در حالی که انتظار می رود تابع با عنوان get_the_permalink نامگذاری شده باشد. این عدم توجه خطاهای موجود در هسته وردپرس را برجسته می کند.

وردپرس ویژگی های بسیار اساسی را ندارد

WordPress یک CMS بسیار انعطاف پذیر است که می تواند برای همه چیز از فروشگاه های قدرتمند تجارت الکترونیک گرفته تا بلاگ های ساده استفاده شود. با این حال، مفیدترین ویژگی های موجود در برنامه های وردپرس معمولاً با استفاده از افزونه ها و تم های سفارشی بدست می آیند. یک ویژگی کاربردی که وجود ندارد، حافظه پنهان پیشرفته است. کاربران برای داشتن حافظه نهان، مجبور به نصب افزونه های شخص ثالث هستند.

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

وردپرس از برخی تکنیک های کد گذاری قدیمی استفاده می کند

WordPress یکی از معدود سیستم های مدیریت محتوای مدرن است که به توابع، تعداد محدودی کلاس و تعداد زیادی حلقه کد تکیه می کند. این نرم افزار همچنین مخلوطی از HTML Javascript و CSS است. این روش تا حدودی منسوخ شده است.

کد گذاری
کد گذاری

افزونه ها و تم های شخص ثالث باعث نگرانی می شوند

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

گزارش هایی وجود دارد که از 3،972 آسیب پذیری شناخته شده WordPress ، 52٪ از افزونه های WordPress ، 37٪ از هسته WordPress و 11٪ از تم های WordPress استفاده می کنند. بسیاری از افزونه ها در برابر سوء استفاده از پرونده ها و تزریق SQL آسیب پذیر هستند.

کاربران WordPress همچنین می توانند نصب خود را از راه های زیر امن نمایند:

  • احراز هویت 2 عاملی
  • محدود کردن تعداد افزونه ها
  • فقط از افزونه های منابع معتبر استفاده شود
  • انتخاب رمزهای عبور قوی
  • نصب افزونه های امنیتی و افزونه های اسکن بدافزار
  • به روز رسانی
  • تنظیم مجوزهای صحیح پرونده و پوشه
  • حذف پرونده های بلااستفاده مانند افزونه های غیر فعال و تم ها
  • غیرفعال کردن مسیرهای پیگیری
  • امنیت وب سایت در سطح سرور

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

نوشته های مشابه

دیدگاهتان را بنویسید

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

دکمه بازگشت به بالا