امروز،
اگر از کاربران سیستم عامل ویندوز هستید حتما برای خودتان یک username و password برای ورود به سیستم دارید. آیا تا به حال از خودتان سئوال پرسیده اید
که این username و password در کجای سیستم ذخیره می شود و آیا ممکن است کسی بتواند به پسوردهای ما در سیستم دسترسی پیدا کند یا خیر ؟
خوب در ابتدا به این موضوع توجه کنید که در هر جاییکه صحبت از ذخیره سازی اطلاعات می شود ما نیاز به یک پایگاه داده یا Database برای نگهداری داده ها داریم
و در خصوص username ها و password هایی که در تقریبا در همه انواع سیستم عامل های لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید کلاینت و سرور مایکروسافت این پایگاه داده به نام SAM یا Security Account Manager شناخته می شود.
این فایل حاوی کلیه username ها و password های ورود به سیستم عامل ویندوز است اما قطعا اطلاعات احراز هویتی در هیچ سیستمی بصورت رمزنگاری نشده ذخیره سازی نمی شوند و در خصوص فایل SAM نیز این موضوع صادق است .
ساختار فایل SAM
ساختار فایل SAM تقریبا ساده است ، ترکیبی از نام کاربری و در جلوی آن یک شناسه منحصر به فرد امنیتی برای کاربر که به آن SID گفته می شود
و در ادامه Hash پسوردهایی که با الگوریتم های موجود در سیستم تولید شده اند. در واقع کلیه Password ها در سیستم لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید شما به شکل یک رشته Hash شده نگهداری می شوند
و همانطور که می دانید Hash یک الگوریتم رمزنگاری یک طرفه است . منظور از یک طرفه این است که پسورد شما به هیچ عنوان زمانیکه Hash می شود و در داخل این پایگاه داده
ذخیره می شود به هیچ عنوان مجددا تبدیل به پسورد نمی شود و مقایسه نمی شود و این فرآیند یکطرفه است !!
renadm:500:aad3b435b51404eeaad3b435b51404ee:3e24dcead23468ce597d6883c576f657:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
support:1000:aad3b435b51404eeaad3b435b51404ee:64f12cddaa88057e06a81b54e73b949b:::
hdes:6ec74661650377df488415415bf10321:securus.corp.com:SECURUS:::
Administrator:c4a850e0fee5af324a57fd2eeb8dbd24:SECURUS.CORP.COM:SECURUS:::
خوب اینجا سئوالی پیش می آید که خوب سیستم عامل از کجا متوجه می شود که پسورد کاربر ما صحیح است ؟ سیستم عامل شما بعد از اینکه پسورد را دریافت کرد
آن را با استفاده از الگوریتم Hashing ای که در فایل SAM قبلا ذخیره سازی کرده است تبدیل به Hash می کند و با Hash موجود در پایگاه داده مقایسه می کند ، اگر Hash ها برابر بودند پسورد درست است
و اگر اشتباه بودند قطعا پسورد نیز اشتباه است. این فرآیند نه تنها برای لاگین به سیستم عامل لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید ویندوز بلکه با الگوریتم های Hashing مختلف در تقریبا تمامی اینترنت استفاده می شود.
الگوریتم های مورد استفاده در فایل SAM بیشتر LM و NTLM هستند که LM یک الگوریتم ضعیف و قدیمی و NTLM الگوریتمی جدید و بهبود یافته است. شما می توانید فایل SAM سیستم خودتان را از مسیر زیر پیدا کنید :
%SystemRoot%/system32/config/SAM
امنیت در فایل SAM با استفاده از SYSKEY
بصورت پیشفرض دو مکانیزم امنیتی برای نگهداری از محتویات فایل SAM توسط مایکروسافت در نظر گرفته شده است . در وهله اول شما به هیچ عنوان نمی توانید در حالت روشن در سیستم عامل این فایل را کپی کنید یا محتویات آن را مشاهده کنید .
شما نه می توانید این فایل را در حالت عادی Copy و نه Cut یا Move کنید. اما مکانیزم دیگر امنیتی که برای حفاظت از این فایل در نظر گرفته شده است قابلیتی به نام SYSKEY می باشد.
نرم افزارهای بسیاری هستند که امکان Offline Attack را به فایل SAM می دهند یعنی زمانیکه سیستم با سیستم عامل دیگری Boot شده است امکان کپی کردن محتویات فایل را به شما می دهد
اما زمانیکه شما پسورد SYSKEY را بر روی سیستم فعال می کنید کلیه محتویات فایل SAM شما رمزنگاری شده و در درجه امنیتی لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید بالایی در مقابل حملات Offline قرار می گیرد. اما به هر حال و به قول معروف
در حوزه امنیت زمانیکه ما می توانیم سیستمی را لمس کنیم و دسترسی فیزیکی به آن داشته باشیم آن سیستم رسما هک شده است و شما می توانید با تکنیک هایی مثل استفاده از ابزارهای dumper ای که در اینترنت
به وفور پیدا می شوند حتی زمانیکه سیستم روشن است از محتویات فایل SAM و Hash های موجود در آن یک کپی کامل بردارید. از این Hash ها براحتی می توان برای انجام حملات Brute-Force بصورت Offline استفاده کرد.
در مطالب بعدی در خصوص ساختار Hashing ای که در LM و NTLM استفاده می شود توضیح خواهیم داد .
که این username و password در کجای سیستم ذخیره می شود و آیا ممکن است کسی بتواند به پسوردهای ما در سیستم دسترسی پیدا کند یا خیر ؟
خوب در ابتدا به این موضوع توجه کنید که در هر جاییکه صحبت از ذخیره سازی اطلاعات می شود ما نیاز به یک پایگاه داده یا Database برای نگهداری داده ها داریم
و در خصوص username ها و password هایی که در تقریبا در همه انواع سیستم عامل های لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید کلاینت و سرور مایکروسافت این پایگاه داده به نام SAM یا Security Account Manager شناخته می شود.
این فایل حاوی کلیه username ها و password های ورود به سیستم عامل ویندوز است اما قطعا اطلاعات احراز هویتی در هیچ سیستمی بصورت رمزنگاری نشده ذخیره سازی نمی شوند و در خصوص فایل SAM نیز این موضوع صادق است .
ساختار فایل SAM
ساختار فایل SAM تقریبا ساده است ، ترکیبی از نام کاربری و در جلوی آن یک شناسه منحصر به فرد امنیتی برای کاربر که به آن SID گفته می شود
و در ادامه Hash پسوردهایی که با الگوریتم های موجود در سیستم تولید شده اند. در واقع کلیه Password ها در سیستم لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید شما به شکل یک رشته Hash شده نگهداری می شوند
و همانطور که می دانید Hash یک الگوریتم رمزنگاری یک طرفه است . منظور از یک طرفه این است که پسورد شما به هیچ عنوان زمانیکه Hash می شود و در داخل این پایگاه داده
ذخیره می شود به هیچ عنوان مجددا تبدیل به پسورد نمی شود و مقایسه نمی شود و این فرآیند یکطرفه است !!
renadm:500:aad3b435b51404eeaad3b435b51404ee:3e24dcead23468ce597d6883c576f657:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
support:1000:aad3b435b51404eeaad3b435b51404ee:64f12cddaa88057e06a81b54e73b949b:::
hdes:6ec74661650377df488415415bf10321:securus.corp.com:SECURUS:::
Administrator:c4a850e0fee5af324a57fd2eeb8dbd24:SECURUS.CORP.COM:SECURUS:::
خوب اینجا سئوالی پیش می آید که خوب سیستم عامل از کجا متوجه می شود که پسورد کاربر ما صحیح است ؟ سیستم عامل شما بعد از اینکه پسورد را دریافت کرد
آن را با استفاده از الگوریتم Hashing ای که در فایل SAM قبلا ذخیره سازی کرده است تبدیل به Hash می کند و با Hash موجود در پایگاه داده مقایسه می کند ، اگر Hash ها برابر بودند پسورد درست است
و اگر اشتباه بودند قطعا پسورد نیز اشتباه است. این فرآیند نه تنها برای لاگین به سیستم عامل لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید ویندوز بلکه با الگوریتم های Hashing مختلف در تقریبا تمامی اینترنت استفاده می شود.
الگوریتم های مورد استفاده در فایل SAM بیشتر LM و NTLM هستند که LM یک الگوریتم ضعیف و قدیمی و NTLM الگوریتمی جدید و بهبود یافته است. شما می توانید فایل SAM سیستم خودتان را از مسیر زیر پیدا کنید :
%SystemRoot%/system32/config/SAM
امنیت در فایل SAM با استفاده از SYSKEY
بصورت پیشفرض دو مکانیزم امنیتی برای نگهداری از محتویات فایل SAM توسط مایکروسافت در نظر گرفته شده است . در وهله اول شما به هیچ عنوان نمی توانید در حالت روشن در سیستم عامل این فایل را کپی کنید یا محتویات آن را مشاهده کنید .
شما نه می توانید این فایل را در حالت عادی Copy و نه Cut یا Move کنید. اما مکانیزم دیگر امنیتی که برای حفاظت از این فایل در نظر گرفته شده است قابلیتی به نام SYSKEY می باشد.
نرم افزارهای بسیاری هستند که امکان Offline Attack را به فایل SAM می دهند یعنی زمانیکه سیستم با سیستم عامل دیگری Boot شده است امکان کپی کردن محتویات فایل را به شما می دهد
اما زمانیکه شما پسورد SYSKEY را بر روی سیستم فعال می کنید کلیه محتویات فایل SAM شما رمزنگاری شده و در درجه امنیتی لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید بالایی در مقابل حملات Offline قرار می گیرد. اما به هر حال و به قول معروف
در حوزه امنیت زمانیکه ما می توانیم سیستمی را لمس کنیم و دسترسی فیزیکی به آن داشته باشیم آن سیستم رسما هک شده است و شما می توانید با تکنیک هایی مثل استفاده از ابزارهای dumper ای که در اینترنت
به وفور پیدا می شوند حتی زمانیکه سیستم روشن است از محتویات فایل SAM و Hash های موجود در آن یک کپی کامل بردارید. از این Hash ها براحتی می توان برای انجام حملات Brute-Force بصورت Offline استفاده کرد.
در مطالب بعدی در خصوص ساختار Hashing ای که در LM و NTLM استفاده می شود توضیح خواهیم داد .
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید