در این بخش از دوره SEC504 از موسسه SANS شما با ابزار Cain and Able آشنا خواهید شد که از این ابزار جهت انجام فرآیند های مختلف در تست نفوذ مانند شکستن پسورد استفاده می گردد.
ابزار Cain and Able
ابزار Cain and Able یک ابزار پویا از ابزارهای امنیتی است که از آن میتوان هم برای حمله به یک سیستم و هم برای مدیریت آن استفاده کرد. نام این ابزار اشاره به هابیل و قابیل دارد چرا که این ابزار هم شامل دو بخش Cain و Able است و بر خلاف برادران هابیل و قابیل که با هم دچار مشکل بودند، این دو ابزار به خوبی با هم کار میکنند.
به صورت معمول Cain برای جمع آوری اطلاعات در مورد سیستم داخلی (Local Sysytem) و استراق سمع (Sniff) مورد استفاده قرار میگیرد و شامل یک محیط گرافیکی مناسب است، در حالی که Able در پس زمینه اجرا شده و میتواند به صورت دسترسی از راه دور به یک سیستم، اطلاعات را از آن استخراج نماید.
ابزار Cain and Able توسط فردی به نام Massimiliano Montoro ایجاد شده است و شامل بیش از دوازده قابلیت مختلف میباشد. اگرچه در این بخش که مربوط به شکستن یا کرک کلمات عبور است به این ابزار اشاره میکنیم، ولی یکی از کاربردهای این ابزار، شکستن کلمات عبور است. در واقع میتوان به این ابزار هم لقب چاقوی همه کاره یا سوئیسی را اعطا کرد.
در ادامه به برخی از قابلیتهای Cain and Able میپردازیم:
• کشف خودکار LAN بی سیم، که در اصل یک ابزار War Driving است و کاملا شبیه Netstumbler میباشد.
• یک ابزار Traceroute مبتنی بر GUI، که با استفاده از تکنیکهای مشابه traceroute کار میکند.
• یک sniffer که برای Capture نمودن بستههای مربوط به پروتکلهای مختلف از یک شبکه میتواند مورد استفاده قرار گیرد.
• یک ماشین حساب هش (Hash Calculator) که متن ورودی را دریافت میکند و هشهای MD2، MD4، MD5، SHA-I، SHA-2، RIPEMD-160 ، LM مایکروسافت، ویندوز NT، MySQL و PIX را نشان میدهد. به این ترتیب، مهاجم میتواند به سرعت اطلاعات خاص کشف شده در سیستم هدف را مورد بررسی قرار دهد.
• یک ابزار کاوشگر شبکه محلی (network neighborhood exploration tool) برای جستجو و یافتن سرورهای ویندوز در دسترس در یک شبکه
• یک ابزار برای استخراج کردن و نمایش دادن، کلمات عبور رمزگذاری شده یا هش شده که در دستگاه محلی ذخیره شده (Cache) است، که از جمله آنها میتوان به استاندارد ویندوز LANMAN و NT، و همچنین گذرواژه خاص برنامههایی مانند Outlook، Outlook Express، Identities Outlook Express، Outlook 2002، Internet Explorer ، و MSN Explorer اشاره کرد.
• یک ابزار برای مسمومیت حافظه کش ARP یا ARP Poisoning که میتواند ترافیک را روی یک شبکه محلی تغییر دهد به طوری که یک مهاجم به راحتی بتواند اطلاعات رد و بدل شده در محیط سوییچ را مشاهده نماید.
• یک ابزار promiscuous mode checker، برای تست اینکه آیا یک ماشین در شبکه یک Sniffer را اجرا میکند یا خیر، البته این کار را ابزاری مانند Sentinelهم انجام میدهد.
• یک VOIP Sniffer که ترافیک Clear-text مربوط به VOIP را گوش نموده و به فایلهای WAV تبدیل میکند تا بعدا بتوان به آنها گوش داده شود.
• همچنین از این ابزار برای ایجاد RSA Secure ID Token نیز استفاده میشود و البته قابلیتهای دیگری در مورد شکستن کلمات عبور
یکی از بخشهای مهم ابزار Cain and Able، بخش شکستن کلمات عبور آن میباشد. ابزار Cain از پروتکلها و انواع کلمات عبور مربوط به سیستمعاملهای مختلف پشتیبانی میکند. در این بخش به انواع کلمات عبوری که مربوط به ویندوز میباشد اشاره میکنیم.
Microsoft LANMAN: مایکروسافت LANMAN، یک مدل از احراز هویت تحت ویندوز میباشد که بسیار ضعیف است. لازم به ذکر است که به این احراز هویت به اختصار LM نیز میگویند. علیرغم ضعیف بودن این نوع از احراز هویت، هنوز هم در سیستمهای ویندوز NT، 2000، XP و 2003 به طور پیشفرض استفاده میشود.
NT Hash: یک مدل دیگر از احراز هویت در ویندوز بوده که نسبت به LM قوی تر میباشد و در ویندوز XP، 2000، NT و 2003 پشتیبانی میشود.
LANMAN challenge/response: این نوع احراز هویت مربوط به شبکه میباشد و زمانی که از طریق شبکه احراز هویت انجام میشود، از این نوع احراز هویت استفاده میشود.
NTLMv1 و NTLMv2: این نوع از احراز هویتهای تحت شبکه بسیار قویتر از LM تحت شبکه میباشند.
MS-Kerberos5 Pre-Auth: این نوع از احراز هویت بیشتر در سطح اکیتودایرکتوری استفاده میشود.
آشنایی با احراز هویت در ویندوز
علاوه بر کلمات عبور تحت ویندوز، کلمات عبور سیستمهای مختلف دیگر مانند سیسکو، VPN، دیتابیسهای مختلف و دستگاههای مختلف دیگر نیز توسط Cain and Able پشتیبانی میگردد.
پیکربندی Cain and Able
پیکربندی Cain and Able بسیار ساده است. شما میتوانید یک دیکشنری را که از قبل ایجاد نمودهاید به آن معرفی نمایید و حالات مختلفی را نیز به آن اضافه کنید. به عنوان مثال میتوان حالات ترکیبی مانند حروف کوچک یا تمامی حروف به صورت بزرگ، معکوس کلمات عبور داخل دیکشنری یا حروف اول به صورت بزرگ و حالات دیگر را به دیکشنری اضافه نمود.
پس از نصب ابزار Cain and Able و اجرای آن مطابق شکل زیر وارد بخش Crack و سپس بر روی علامت به علاوه کلیک نمایید.
پس از باز شدن صفحه جدید، میبایست نحوه ورود هش به Cain را مشخص نمایید. برای این بخش سه گزینه وجود دارد، گزینه اول برای وارد کردن هش از سیستم داخلی میباشد(همان سیستمیکه در Cain بر روی آن نصب شده است). گزینه دوم برای وارد نمودن هش از طریق یک فایل متنی است و گزینه سوم مربوط به وارد کردن SAM File میباشد.
پس از انتخاب هر کدام از گزینهها، هشها به داخل Cain وارد میشوند.
همانطور که در تصویر بالا مشاهده میفرمایید، سه نام کاربری وجود دارد و تنها یکی از آنها دارای کلمه عبور میباشد که کاربر Test است. نحوه ذخیره سازی کلمه عبور برای کاربر test به صورت LM و NTLM میباشد. البته کلمه عبور مربوط به کاربر Test همانطور که در تصویر ملاحظه مینمایید، کمتر از 8 کاراکتر میباشد(ستون <8 ستاره دار میباشد).
برای به دست آوردن کلمه عبور اصلی باید بر روی Test راست کلیک نموده و یکی از گزینههای مربوطه را انتخاب نماییم. در این حالت ما قصد استفاده از یک دیکشنری را داریم. پس گزینه مربوط به Dictionary Attack را انتخاب میکنیم و با توجه به نوع احراز هویت، گزینه مورد نظر را انتخاب میکنیم که در این حالت ما LM را انتخاب مینماییم.
پس از انتخاب نوع احراز هویت صفحهای باز خواهد شد که باید دیکشنری مورد نظر را به آن معرفی نموده و حالات ترکیبی را با توجه به نیاز خود تنظیم نماییم. سپس بر روی گزینه Start کلیک نماییم تا عملیات شکستن کلمه عبور آغاز شود.
همانطور که در تصویر بالا مشاهده مینمایید، در بخش 1، فایل دیکشنری انتخاب شده است و در بخش 2 گزینههای مختلفی برای ترکیب کلمات عبور وجود دارد که میتوانید از آنها استفاده نمایید. در بخش 3 مشخص میشود که این کلمه عبور کمتر از 8 کاراکتر میباشد و در بخش 4 مشخص میکند که کلمه عبور چیست.
اگر از گزینه Brute Force استفاده کرده باشید، صفحه زیر نمایش داده خواهد شد.
همانطور که مشاهده مینمایید، این صفحه کمی متفاوتتر از صفحه مربوط به Dictionary Attack میباشد.
در این صفحه باید حداقل و حداکثر طول کلمه عبور را مشخص نموده و در بخش Predefined باید مشخص نمایید که کلمه عبور از چه نوعی میباشد. آیا شامل حروف کوچک، اعداد، حروف بزرگ، علامات و یا ترکیبی از آنهاست. با انتخاب این گزینه و کلیک بر روی Start حمله Brute Force آغاز خواهد شد.