
به اشتراک بگذارید

به اشتراک بگذارید
اگر مدیریت یک وبسایت یا سرور را بر عهده دارید، احتمالاً واژه «شل» (Shell) لرزه بر اندامتان میاندازد؛ و حق هم دارید! یک شل در سرور لینوکس مانند یک کلید یدک در دستان دزد است که به او اجازه میدهد وارد تمام اتاقهای خانه شما شود، مدارک را بدزدد یا حتی کل ساختمان را به آتش بکشد. در واقع، اجرا شدن شل در سرور لینوکس به معنای پایان حریم خصوصی دادههای شماست.
طبق آمارهای امنیت سایبری در سال 2024، بیش از 58٪ حملات به وبسایتهای وردپرسی و سیستمهای مدیریت محتوا، از طریق آپلود اسکریپتهای مخرب و عدم جلوگیری از آپلود شل در هاست رخ داده است.
| موضوع امنیت | اهمیت در لینوکس | تاثیر بر هاست اشتراکی |
| آپلود فایل مخرب | بسیار بالا | بحرانی |
| توابع خطرناک PHP | حیاتی | کنترل شده توسط مدیر |
| دسترسی فایل سیستم | بالا | محدود شده با CageFS |
حتماً زمانی که این مقاله را باز کردهاید، به دنبال راهی قطعی برای بستن منافذ نفوذ هستید یا شاید اخیراً نشانههایی از فعالیت مشکوک در سرور خود دیدهاید. نگران نباشید؛ ما در این آموزش گامبهگام و عملی، از سطح مبتدی تا تنظیمات پیشرفته سرور را بررسی میکنیم تا شما را به یک دژ مستحکم در برابر نفوذگران تبدیل کنیم. پس همراه ما باشید تا امنیت را یکبار برای همیشه برقرار کنیم. 😉👇
آنچه در این مقاله میخوانید:

در دنیای هاستینگ، «وبشل» (Web Shell) یک اسکریپت کوچک (معمولاً به زبان PHP، Python یا Perl) است که نفوذگر آن را روی هاست شما آپلود میکند. پس از آپلود، هکر از طریق یک پنل گرافیکی تحت وب، دستورات سیستمعاملی را مستقیماً به هسته لینوکس میفرستد. تشبیه ساده این است: هاست شما مثل یک واحد آپارتمان در یک ساختمان بزرگ است؛ اگر هکر بتواند یک شل اجرا کند، یعنی پنجره واحد شما را شکسته و حالا به کنترل پنل کل ساختمان دسترسی پیدا کرده است.
ساختار نفوذ شل:
هکر (خارج از شبکه)
⬇️
ارسال درخواست مخرب (Exploit)
⬇️
[لایه اپلیکیشن] -> یافتن باگ آپلود فایل
⬇️
[لایه اجرا] -> آپلود فایل shell.php
⬇️
[لایه دسترسی] -> اجرای دستورات سیستم (مانند rm -rf)
اهمیت این موضوع زمانی مشخص میشود که بدانید یک شل ساده میتواند تمام زحمات چندین ساله شما را در چند ثانیه نابود کند. دلایل اصلی که باید همین امروز اقدام کنید عبارتند از:
قبل از شروع مراحل عملی، باید دسترسیهای لازم را داشته باشید:
در این بخش همراه تیم وبداده باشید تا به صورت عملی و تصویری، لایههای دفاعی را یکی پس از دیگری بنا کنیم. ما از مدل دفاع چندلایه (Defense in Depth) استفاده میکنیم.
بسیاری از شلهای مخرب برای اجرای دستورات خود از توابع پیشفرض PHP استفاده میکنند. با غیرفعال کردن exec و shell_exec و سایر توابع مشابه، عملاً دست و پای هکر را میبندید.
مراحل اجرا:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source حتی اگر هکر موفق شود شل را آپلود کند، اگر وبسرور اجازه اجرای فایلهای PHP را در آن پوشه ندهد، شل عملاً یک فایل متنی بیخطر خواهد بود.
برای هاست اشتراکی (با استفاده از .htaccess):
در پوشه /wp-content/uploads/ یا هر پوشه آپلود دیگری، یک فایل با نام .htaccess بسازید و کدهای زیر را در آن قرار دهید:
<Files *.php>
Order Deny,Allow
Deny from all
</Files> ModSecurity یک فایروال اپلیکیشن (WAF) قدرتمند است که درخواستهای ورودی را بررسی کرده و اگر حاوی کدهای شل باشد، آنها را قبل از رسیدن به مقصد مسدود میکند.

اگر شک دارید که قبلاً هک شدهاید، باید از ابزارهای اسکن استفاده کنید.
این ابزار که با نام Maldet نیز شناخته میشود، یکی از بهترین گزینهها برای سرورهای لینوکسی است.
wget [http://www.rfxn.com/downloads/maldetect-current.tar.gz](http://www.rfxn.com/downloads/maldetect-current.tar.gz)
tar -xzvf maldetect-current.tar.gz
cd maldetect-*
sh install.sh
# اجرای اسکن بر روی پوشه سایتها
maldet -a /home/username/public_html | ابزار شناسایی | سرعت اسکن | قدرت شناسایی | مناسب برای |
|---|---|---|---|
| LMD (Maldet) | متوسط | خوب (رایگان) | مدیران سرور و VPS |
| Imunify360 | بسیار بالا | عالی (تجاری) | هاستینگهای حرفهای |
| ClamAV | بالا | متوسط | اسکن عمومی فایلها |
در سال 2024، یکی از مشتریان ما که از سرویسهای معمولی استفاده میکرد، دچار افت شدید سرعت و ارسال ایمیلهای اسپم انبوه شده بود. پس از بررسی، متوجه شدیم که هکر از طریق یک افزونه قدیمی، شلی را در پوشه تصاویر آپلود کرده است. با اجرای دستور grep دستی، توانستیم شل را پیدا کنیم:
grep -rnw '/home/user/public_html/' -e 'shell_exec' نتیجه شگفتآور بود؛ بیش از 15 فایل مخرب در لایههای مختلف مخفی شده بودند. با انتقال به سرورهای امن وبداده و فعالسازی CageFS، دسترسی هکر برای همیشه قطع شد.
ما در وبداده، امنیت را به شانس واگذار نمیکنیم. با خرید هر یک از سرویسهای سرور مجازی یا هاستینگ ما، از ویژگیهای زیر بهرهمند میشوید:
جمعبندی؛ جلوگیری از اجرا شدن شل در سرور لینوکس نیازمند یک استراتژی هوشمندانه است. شما نباید فقط به یک قفل بسنده کنید. با غیرفعال کردن توابع خطرناک، محدود کردن پوشههای آپلود و استفاده از ابزارهای مانیتورینگ، ریسک هک شدن را به حداقل میرسانید.
فراموش نکنید که نفوذگران همیشه در حال آپدیت روشهای خود هستند، پس شما هم باید از تکنولوژیهای روز 2025 استفاده کنید. اگر زمان یا تخصص کافی برای انجام این تنظیمات پیچیده را ندارید، تیم فنی وبداده در کنار شماست تا امنترین تجربه میزبانی را برایتان رقم بزند.
امیدوارم این مقاله از بلاگ وبداده برای شما مفید بوده باشد. در صورتی که سوالی داشتید یا در هر مرحله از تنظیمات دچار مشکل شدید، میتوانید در بخش نظرات با ما در ارتباط باشید. ما با کمال میل به شما پاسخ میدهیم! 🚀
در 90٪ مواقع خیر؛ اما برخی قالبها یا افزونههای خاص که نیاز به ارتباط مستقیم با سیستمعامل دارند (مثل افزونههای فشردهسازی تصویر) ممکن است دچار مشکل شوند. پیشنهاد میشود ابتدا در محیط تست انجام دهید.