جلوگیری از اجرای فایل PHP در پوشه wp-content

4.5 / 5. تعداد رای: 2

جلوگیری از اجرای فایل PHP در پوشه wp-content

به طور پیش‌‌فرض وردپرس تعدادی از دایرکتوری‌‌ها را قابل نوشتن می‌کند تا شما و کاربران این امکان را داشته باشید که در سایت خود قالب‌‌ها، پلاگین‌‌ها، تصاویر و ویدئو آپلود کنید. اما داستان فایل‌های PHP متفاوت است. این فایل‌ها قابلیت ایجاد تغییر از راه دور روی سایت شما خواهند داشت و این فاجعه است! پس حتما از روش جلوگیری از اجرای فایل PHP در پوشه wp-content استفاده کنید.

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

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

درسته که این موضوع باعث ترس بسیاری از افراد می‌شود اما یک راه حل بسیار آسان برای این مشکل وجود دارد که با انجام آن می‌‌تونید مشکل را برطرف کنید. این امکان برای شما وجود دارد که اجرای PHP را در دایرکتوری‌‌های خاصی که به آن را نیازی ندارید غیرفعال کنید. انجام چنین کاری باعث می‌‌شود که هر فایل PHP داخل آن دایرکتوری اجرا نمی‌شود.

در این مقاله ما به شما نحوه غیرفعال کردن اجرای PHP در WordPress با استفاده از فایل htaccess را نشان خواهیم داد.

جلوگیری از اجرای فایل PHP با استفاده از htaccess

معمولا فایل‌‌های htaccess در پوشه root بسیاری از سایت‌‌های وردپرسی موجود است. در واقع این فایل‌‌ها یک پیکربندی بسیار قدرتمند هستند که برای محافظت از رمز عبور پنل مدیریت، غیرفعال کردن مرورگر پوشه، سازگار کردن برای سئو با ساختار URL و بسیاری موارد دیگر مورد استفاده قرار می‌گیرد.

به صورت پیش‌‌فرض فایل‌‌های .htaccess در پوشه root وب‌‌سایت وردپرسی شما وجود دارد اما شما قادرید از آن در دایرکتوری‌‌های داخلی وردپرس استفاده کنید.

برای اینکه بتوانید از سایت خود در برابر backdoor محافظت کنید باید یک فایل .htaccess ایجاد کنید و و آن را در wp-includes، plugins، uploads و themes سایت خود آپلود کنید.

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

<Files *.php>
deny from all
</Files>

حالا باید فایل را روی کامپیوتر خود ذخیره کنید.

بعد از طی کردن تمامی موارد بالا نیاز دارید که این فایل را در پوشه‌‌های wp-includes و /wp-content/uploads/ که بر روی سرور هاست وردپرس شما آپلود کنید.

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

وقتی‌‌که فایل .htaccess را با کدهایی که بالا آورده شده اضافه کنید در واقع اجرای هر فایل PHP را در این دایرکتوری متوقف می‌‌کنید.

استفاده از این ترفند .htaccess به شما کمک می کند امنیت وردپرس خود را بیشتر کنید. اما این موضوع برای سایت وردپرسی که هک شده باشد مناسب نیست و نمی‌‌تونه آنو تعمیر کند.

هیچوقت فراموش نکنید که بک دور‌ها هوشمندانه جاسازی خواهند شد و می‌‌توانند از دید مستقیم پنهان شوند! پس همیشه از روش‌های افزایش امنیت وردپرس استفاده کنید.

نکته خاصی هست که این مقاله رو تکمیل‌تر کنه؟

  1. U325969 ۱۷ تیر ۱۴۰۲

    سلام
    سایت وردپرس ام دسترسی به افزونه ها و بخش های دیگه ندادم و خطای ۴۰۳ میده احتمالا دچار حمله شده چون htaccess هاست تغییر کرده و هرچه ویرایش یا حذف میکنم دوباره ایجاد میشه و کدهای هم نمیتونم تغییر بدم
    لطفا راهنمایی کنید

  2. U37251 ۱۲ اسفند ۱۳۹۹

    با سلام
    بابت این نوشته ممنونم اما چند سوآل برایم پیش آمده که اگر پاسخ بدهید سپاس‌گزار خواهم بود.
    ۱- منظورتان این چهار پوشه است: wp-includes و plugins و uploads و themes؟ چون متن انگلیسی بالا به نظر می‌آید به هم ریخته باشد.
    ۲- پوشه‌ی wp-content نیازی ندارد؟
    ۳- آیا ممکن است اجرای این کد در آینده برای برخی از عملکرد‌های صحیح سایت مشکلی درست کند؟ مثلاً اجرای برخی دستورات یا افزونه‌ها و قالب‌ها؟

    • Reza Rad رضا راد ۱۲ اسفند ۱۳۹۹

      درود بر شما
      ۱. بله
      ۲. خیر چون فایل‌های قالب و افزونه‌ها در آن قرار دارند.
      ۳. خیر

  3. U33619 ۲۷ آذر ۱۳۹۹

    سلام خسته نباشید
    می خواستم بدونم چرا در هاست من هم فایل wp-config هستش و هم فایل wp-config-sample ؟
    و آیا اینکه وجود همزمان این 2 تا فایل از نظر امنیتی مشکلی رو واسه سایت من به وجود نمی آره ؟

    • Reza Rad رضا راد ۲۷ آذر ۱۳۹۹

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

    • U325969 ۱۷ تیر ۱۴۰۲

      دیدم این آموزش رو
      متاسفانه وقتی حذف میکنم htaccess رو و میرم پیشخوان قسمت پیوند یکتا بهم اجازه دسترسی نمیده و خطای ۴۰۳ میده کلا به افزونه ها و تنظیمات و بقیه قسمت پیشخوان دسترسی ندارم و روش میزنم خطای ۴۰۳ میده
      این فایل htaccess هم هرچی کدشو تغییر میدم باز اون کد مخرب روش نوشته میشه
      انگار به خاطر همین کدی که به طور خودکار روی htaccess نوشته میشه دسترسی به قسمت های مختلف پیشخوان گرفته شده
      نمیدونم چطور میتونم جلوی نوشتن خودکار htaccess رو بگیرم

      • Reza Rad رضا راد ۱۷ تیر ۱۴۰۲

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