هدف لب
شبیهسازی یک enable secret گمشده روی یک روتر، انجام بازیابی رمز عبور با استفاده از حالت ROMMON و رجیستر پیکربندی، تنظیم مجدد رمز عبور، و تأیید اینکه پیکربندی اصلی روتر (بهجز رمز عبور) پس از آن کاملاً دستنخورده باقی میماند.
هدف لب (چرا مهم است)
دسترسی فیزیکی به پورت کنسول یک روتر بهطور خاص بازیابی رمز عبور را امکانپذیر میکند چون این رویه هیچ احراز هویت قبلیای نیاز ندارد — یک انتخاب طراحی عمدی که نیازهای بازیابی مشروع را در برابر ریسکی که هرکسی با دسترسی فیزیکی کنسول میتواند رمز عبور هر دستگاهی را بازنشانی کند متوازن میکند، که دقیقاً چرایی این است که امنیت فیزیکی تجهیزات شبکه بههماناندازه هر کنترل دسترسی از راه دور اهمیت دارد.
توپولوژی لب
R1 با یک کابل کنسول متصل
Enable secret تنظیم شده اما فراموش شدهوظیفه ۱: تأیید ناشناختهبودن رمز عبور
تلاش کن به حالت privileged EXEC با یک رمز عبور نادرست وارد شوی و تأیید کن دسترسی رد میشود.
وظیفه ۲: راهاندازی مجدد و وقفه فرآیند بوت
روتر را power cycle یا reload کن، و یک توالی break را در طول ۶۰ ثانیه اول بوت بفرست تا وارد حالت ROMMON شوی.
وظیفه ۳: تغییر رجیستر پیکربندی برای ردکردن پیکربندی شروع
از ROMMON، رجیستر پیکربندی را طوری تغییر بده که بدون بارگذاری پیکربندی شروع ذخیرهشده بوت شود.
وظیفه ۴: راهاندازی مجدد و ورود به حالت Privileged بدون رمز عبور
روتر را reload کن، و تأیید کن حالت privileged EXEC اکنون میتواند بدون هیچ رمز عبوری وارد شود، چون پیکربندی شروع (حاوی enable secret) رد شده بود.
وظیفه ۵: کپی پیکربندی شروع به پیکربندی در حال اجرا
پیکربندی شروع واقعی را به پیکربندی در حال اجرا بارگذاری کن تا تنظیمات واقعی روتر، اکنون قابلدسترسی در حالت privileged، بازگردانده شود.
وظیفه ۶: تنظیم یک رمز عبور جدید و بازگرداندن رجیستر پیکربندی
یک enable secret جدید تنظیم کن، رجیستر پیکربندی را به مقدار معمولش بازگردان، و پیکربندی را ذخیره کن.
راهحل و تأیید
R1> enable
Password: [حدس نادرست]
% Access denied
-- تأیید میکند رمز عبور واقعاً ناشناخته است،
-- نه صرفاً یکبار اشتباه تایپشده-- روتر را reload کن، سپس توالی break (معمولاً
-- Ctrl+Break در بیشتر برنامههای ترمینال) را
-- در طول ۶۰ ثانیه اول بوت بفرست
rommon 1 >rommon 1 > confreg 0x2142
-- 0x2142 به روتر میگوید در حال نادیدهگرفتن
-- پیکربندی شروع بوت شود -- پیشفرض معمولاً
-- 0x2102 است
rommon 2 > reset-- پس از راهاندازی مجدد:
Router> enable
Router#
-- هیچ رمز عبوری مورد نیاز نبود، چون پیکربندی
-- شروع (حاوی enable secret) اصلاً بارگذاری نشدRouter# copy startup-config running-config
-- این پیکربندی واقعی (hostname، اینترفیسها،
-- مسیریابی، و غیره) را به پیکربندی در حال
-- اجرا بارگذاری میکند، اکنون که از قبل
-- دسترسی privileged داریم -- هر چیزی بهجز نیاز
-- به رمز عبور قدیمی بازگردانده میشودRouter(config)# enable secret NewPassword2026
Router(config)# config-register 0x2102
-- بازگرداندن رجیستر به مقدار معمولش تضمین
-- میکند روتر بهطور معمول بوت میشود، و
-- پیکربندی شروع (با رمز عبور جدید) را در هر
-- راهاندازی مجدد بعدی بارگذاری میکند
Router(config)# end
Router# copy running-config startup-configR1# reload
-- پس از راهاندازی مجدد، تأیید رفتار معمولی:
R1> enable
Password: NewPassword2026
R1#
-- بازیابی رمز عبور کامل شد، و روتر با همه
-- تنظیمات اصلی (hostname، اینترفیسها، و
-- غیره) دستنخورده بهطور معمول بوت میشودنکته کلیدی
گام نهایی حیاتی و آسان-فراموششدنی بازگرداندن رجیستر پیکربندی به 0x2102 و ذخیره پیکربندی است — ردکردن این باعث میشود روتر برای همیشه پیکربندی شروعش را در هر بوت آینده نادیده بگیرد، و بیسروصدا هر تغییر پیکربندیای که پس از این بازیابی انجام شده را دور بریزد مگر صراحتاً ذخیره شود و رجیستر بهدرستی بازگردانده شود.