Tag Archives: authentication

صدور مجوز Authorization

صدور مجوز یا Authorization چیست؟

صدور مجوز یا اتورایزیشن (Authorization) اصطلاحی در حوزه امنیت و کنترل دسترسی (Access Control) است و به فرایندی اشاره می‌کند که طی آن مجوز و حق دسترسی به منابع مشخص می‌شود.

این منابع ممکن است هرچیزی اعم از فایل ها، داده ها، خدمات، ویژگی‌های نرم افزاری و … باشد و مجوزها نیز می‌توانند شامل مواردی نظیر نوع منابع قابل دسترسی، محدودیت‌های دسترسی (نظیر زمان یا سهم مشخصی از منابع) و اعمالی باشد که می‌توان با کمک این منابع یا روی آن‌ها انجام داد.

درک مفهوم Authorization با یک مثال در دنیای واقعی

یک اداره خصوصی را در نظر بگیرید و فرض کنید شما کارمند بخش روابط عمومی این اداره هستید. در این صورت پس از وارد شدن به محوطه یا ساختمان اداره اجازه دارید علاوه بر اتاق خودتان، به سرویس بهداشتی، بوفه، تالار سخنرانی و سایر بخش‌های عمومی رفت و آمد کنید. البته در حالت طبیعی اجازه ورود به بایگانی یا بخش انبار را نخواهید داشت.

شما هنگام استخدام، این مجوزها را براساس قوانین سازمانی و موقعیت شغلی خود پذیرفته‌اید و در صورت تلاش برای ورود به مکانی که اجازه آن به شما داده نشده است احتمالا به صورت دوستانه یا غیردوستانه جلوی شما گرفته خواهد شد. به طور مشابه در دنیای رایانه، Authorization فرایندی است که مجوزهای شما برای دسترسی به قسمت‌های مختلف یک سیستم را مشخص می‌کند.

مجوز و کنترل دسترسی

در یک سیستم رایانه ای، مجوزها در قالب سیاست های دسترسی (Access Policy) مشخص می‌کنند هر کاربر قادر به انجام چه اعمالی روی کدام منابع می‌باشد. معمولا پس از اینکه هویت کاربر در سیستم تأیید شد (Authentication)، متناسب با سیاست‌ها و قوانین مذکور، درخواست های دسترسی کاربر توسط سیستم تایید یا رد می‌شود. نحوه تخصیص این مجوزها ممکن است بر اساس نقش کاربر (Role-based) یا ویژگی‌های پیچیده‌تر انجام شود.

به عنوان مثال کارمند بخش نیروی انسانی یک سازمان معمولا پس از لاگین کردن، مجوز دسترسی به رکوردهای مربوط به اطلاعات کلیه کارمندان سازمان را خواهد داشت. دسترسی مورد بحث احتمالا امکان خواندن، تغییر، ایجاد و حذف رکوردها را به این کارمند خواهد داد.

اغلب سیستم های چندکاربره از قابلیت کنترل دسترسی برخوردار هستند و مدیر سیستم مشخص می‌کند هر کاربر در چه سطحی مجوز دسترسی به سیستم را دارد. در این سیستم ها معمولا پس از تصدیق هویت، مجموعه‌ای از قابلیت‌ها و امکانات متناسب با مجوزهای کاربر در اختیار او قرار می‌گیرد و یا زمانی که برای دسترسی به یک منبع درخواست می‌دهد فرایند کنترل دسترسی بررسی می‌کند آیا کاربر مجوز لازم جهت دسترسی به منبع موردنظر را دارد یا خیر؟

تفاوت میان Authentication و Authorization

برای روشن‌تر شدن موضوع بهتر است به بررسی تفاوت میان مفاهیم Authentication و Authorization نیز بپردازیم. اصطلاح Authentication به معنای تصدیق هویت کاربر است در حالیکه Authorization همان‌طور که گفته شد به معنای تعیین مجوز دسترسی به منابع است.

به عبارت بهتر Authentication فرایندی است که در آن صحت اصالت یا هویت کاربر بررسی می‌شود. این فرایند زمانی کاربرد دارد که لازم است سیستم با جزئیات بیشتری بداند چه کسی می‌خواهد از آن استفاده کند. در ساده‌ترین و رایج‌ترین روش برای تصدیق هویت، هر کاربر از یک نام کاربری و کلمه عبور برای نشان دادن اینکه چه کسی است استفاده می‌کند. اما اصطلاح Authorization به فرایندی اشاره می‌کند که طی آن مشخص می‌شود آیا شما مجاز به انجام یک کار یا دسترسی به یک منبع (نظیر ویرایش رکوردهای مربوط به اطلاعات کارمندان اداره) هستید یا خیر؟

هرچند در موارد بسیاری، اعطای مجوز به یک کاربر پس از اینکه هویت او مشخص شد انجام می‌گیرد اما توجه داشته باشید الزاما این موضوع همیشه هم صادق نیست. برای مثال، شما می‌توانید در یک فروشگاه آنلاین بدون اینکه در سایت لاگین کنید (به عنوان یک کاربر گمنام یا مهمان) به فهرست کالاها و قیمت آن‌ها دسترسی داشته باشید. البته تا زمانی که با کمک نام کاربری و کلمه عبور، هویت شما در سیستم تأیید نشده باشد اجازه خرید کالا را نخواهید داشت.

صدور مجوز Authorization
Authorization فرایندی است که طی آن مجوز و حق دسترسی به منابع مشخص می‌شود.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

در پشتی Backdoor

در پشتی یا Backdoor چیست؟

در پشتی یا بَک دُر (Backdoor) روشی است که برای عبور کردن از مکانیزم های معمولی تصدیق هویت (Authentication) یا رمزنگاری داده ها در یک سیستم یا محصول رایانه ای استفاده می‌شود.

چنین روش‌هایی ممکن است از طریق قطعه کدهایی که در سورس یک نرم افزار گنجانده شده و یا کدهایی که در فرم ویرها و محصولات سخت افزاری تعبیه شده است پیاده سازی شوند. گفتنی است واژه Trapdoor نیز به ندرت برای همین مفهوم به کار می‌رود.

درک مفهوم در پشتی با یک مثال ساده

برای درک بهتر این مفهوم، موضوع را با یک مثال در دنیای واقعی مورد بررسی قرار می‌دهیم. در سناریوی اول تصور کنید به تازگی خانه‌ای خریده‌اید که در آن درهای ورودی به بهترین قفل‌ها و دوربین‌های امنیتی تجهیز شده است. این درحالیست که شما از وجود یک در مخفی که توسط سازنده طراحی شده است و از طریق حفره‌ای زیرزمینی امکان ورود به خانه را فراهم می‌کند بی‌خبر هستید. در چنین شرایطی احتمالا پس از یک مسافرت دلچسب زمانی که به خانه برمی‌گردید با جای خالی لوازم گران قیمت خانه‌تان روبرو خواهید شد!

در سناریوی دوم تصور کنید یک فرد فراموشکار هستید که معمولا کلیدهایش را در خانه جا می‌گذارد یا آن‌ها را گم می‌کند! از آنجایی که فردی آینده‌نگر هستید یک در مخفی بدون قفل جایی در اطراف خانه خود ساخته‌اید که با برگ درختان پوشانده شده است و در مواقع ضروری می‌توانید برای ورود به خانه از آن استفاده کنید.

هرچند در سناریوی دوم برخلاف سناریوی اول، وجود در مخفی دارای جنبه مثبت است اما فراموش نکنید اگر همسایه‌ها یا سارقین، شما را حین استفاده از این در مخفی مشاهده کنند می‌توانند در آینده برای ورود به خانه از آن استفاده کنند. در دنیای رایانه هم درهای پشتی کارکردی مشابه با همین دو سناریو را ایفا می‌کنند.

در پشتی Backdoor
Backdoor ها امکان دور زدن مکانیزم های تصدیق هویت و روش‌های امنیتی متداول را میسر می‌کنند.

ویژگی ها و اهداف درهای پشتی

درهای پشتی معمولا به صورت محرمانه و عمدی توسط سازنده محصول یا اشخاص ثالث طراحی می‌شوند. البته برخی از آن‌ها نیز به صورت گسترده شناخته شده هستند. به علاوه ممکن است یک در پشتی به صورت غیرعمدی (برای مثال در اثر یک باگ یا خطای برنامه نویسی) در محصول به وجود آمده باشد.

درهای پشتی با اهداف مختلفی در محصولات یا سیستم های نرم افزاری و سخت افزاری ایجاد می‌شوند و مشابه با مثالی که در دنیای واقعی به آن اشاره شد الزاما مقاصد منفی را دنبال نمی‌کنند. برخی از توسعه دهندگان برای انجام امور مدیریتی به صورت از راه دور (نظیر عیب یابی و نگه داری سیستم) از بک درها در محصولات خود استفاده می‌کنند. در عین حال ممکن است بدافزارها (تروجان های دسترسی از راه دور یا Remote Access Trojan – RAT) نیز با ایجاد یک Backdoor امکان دسترسی هکرهای متجاوز را به یک سیستم رایانه ای فراهم کنند.

ذکر این نکته ضروری است که حتی اگر یک در پشتی برای مقاصد مثبت طراحی شده باشد باز هم وجود آن یک ریسک امنیتی محسوب می‌شود چرا که در صورت کشف شدن توسط هکرها، دسترسی آن‌ها به سیستم و داده هایش را برای اهداف بدخواهانه میسر می‌کند.

راهکارهای مقابله

هرچند شناسایی در پشتی در یک محصول اختصاصی معمولا کار چندان ساده‌ای نیست اما استفاده از دیوارهای آتش با پیکربندی های مناسب و نظارت روی ترافیک شبکه می‌تواند تا حدودی شناسایی و مقابله با درهای پشتی را امکان‌پذیر نماید. همچنین نرم افزارهای منبع باز اغلب می‌توانند به کاربر این حس اطمینان را منتقل کنند که در آن‌ها خبری از بَک دُر نیست چرا که پنهان کردن آن‌ها در مورد نرم افزارهایی که سورس کدشان به صورت عمومی منتشر شده است امری به مراتب دشوارتر خواهد بود.

در عین حال استفاده از ابزارهای امنیتی مناسب برای جلوگیری از آلوده شدن به بدافزارها می‌تواند شما را تا حدودی از حملات وابسته به درهای پشتی در امان نگاه دارد.

نمونه هایی از Backdoor های مشهور

از جمله معروف‌ترین درهای پشتی شناخته شده می‌توان به Back Orifice اشاره کرد که در سال 1998 با هدف مشروع مدیریت سیستم های ویندوزی از راه دور توسط گروهی از هکرها موسوم به Cult of the Dead Cow طراحی شده بود.

یکی دیگر از درهای پشتی مشهور متعلق به الگوریتم منسوخ شده Dual_EC_DRBG است که کاربرد آن در حوزه رمزنگاری بوده و به آژانس امنیت ملی آمریکا (NSA) اجازه می‌داده است داده های رمزنگاری شده با این الگوریتم را رمزگشایی کنند.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

مدیر کلمه عبور Password Manager

مدیر کلمه عبور یا Password Manager چیست؟

مدیر کلمه عبور یا پسورد منیجر (Password Manager) به ابزاری گفته می‌شود که امکان ایجاد و بازیابی کلمه‌های عبور را برای کاربر فراهم می‌کند. معمولا کلمه‌های عبور کاربر با کمک چنین ابزارهایی در یک پایگاه داده رمزنگاری شده محلی یا آنلاین نگه‌داری می‌شود و کاربر تنها با به خاطر سپردن یک کلمه عبور اصلی (موسوم به Master Password) که برای استفاده از این ابزار تعیین می‌کند می‌تواند به تمام کلمات عبور و اطلاعات ذخیره شده دسترسی پیدا کند.

اغلب این ابزارها به صورت خودکار فیلدهای مربوط به اطلاعات حساس (نظیر نام کاربری و رمز عبور) را تکمیل می‌کنند. افزون بر این برخی از آن‌ها قادرند فیلدهای مربوط به داده‌های شخصی (نظیر نام، آدرس ایمیل، شماره تلفن و …) در فرم‌های وب را نیز با اطلاعات از پیش ذخیره شده تکمیل نمایند.

از جمله مشهورترین ابزارهای مدیریت کلمه عبور می‌توان به LastPass و Dashlane اشاره نمود.

مدیر کلمه عبور Password Manager
نمایی از واسط کاربری مدیر کلمه عبور LastPass

انواع ابزارهای مدیریت کلمه عبور

ابزارهای مدیریت پسورد عموما در قالب یک نرم افزار روی رایانه یا دستگاه‌های همراه کاربر نصب می‌شوند و یا در قالب سرویس‌های آنلاین (تحت وب) مورد استفاده قرار می‌گیرند. گونه‌ای دیگر از این ابزارها نیز وجود دارد که به صورت کلیدهای سخت‌افزاری، مدیریت کلمه‌های عبور کاربر را عهده‌دار می‌شوند.

برخی از نرم‌افزارهای مدیریت کلمه عبور به صورت کاملا آفلاین عمل می‌کنند. به عبارت بهتر در این مدل پایگاه داده‌ای که اطلاعات در آن نگه‌داری می‌شود بر روی همان دستگاهی قرار دارد که نرم‌افزار روی آن نصب شده است. اما در گونه‌ای دیگر از این نرم‌افزارها، پایگاه داده روی سیستمی مجزا قرار دارد که دسترسی به آن از طریق اینترنت به صورت از راه دور و به کمک نرم افزار نصب شده صورت می‌گیرد.

پسورد منیجرهای تحت وب با کمک یک مرورگر وب قابل دسترس هستند و در مقایسه با نرم‌افزارهای محلی که روی دستگاه کاربر نصب می‌شوند این مزیت را دارند که کاربر می‌تواند روی دستگاه‌های مختلف خود به صورت یکپارچه از این ابزارها استفاده نماید. هرچند جذب کاربران در یک مدیر کلمه عبور آنلاین مستلزم اطمینان داشتن به ایمنی سامانه و سرورهای مورد استفاده است با اینحال احتمال از بین رفتن یا سرقت کلمات عبور در این سامانه‌ها درصورتی که زیرساخت‌های امنیتی مناسب درنظر گرفته شده باشد پایین‌تر است.

در گونه‌ی سوم از یک سخت افزار مانند حافظه‌های فلش USB برای مدیریت کلمه‌های عبور استفاده می‌شود. جهت دسترسی به کلمات عبور و اطلاعات ذخیره شده در این حافظه‌ها، استفاده از عامل دیگری مانند پین کد (تصدیق هویت دو عاملی) می‌تواند در حفظ امنیت اطلاعات ذخیره شده کاربر مفید واقع شود.

مزایای استفاده از یک مدیر کلمه عبور مناسب

با کمک این ابزارها لازم نیست کاربر رمزهای عبور متعدد و پیچیده‌ای را به خاطر بسپارد. بنابراین اشتباهات امنیتی مهمی نظیر انتخاب کلمه‌های عبور ساده و یکسان برای اکانت‌های مختلف توسط کاربرانی که از ابزارهای مدیریت کلمه عبور استفاده می‌کنند کمتر رخ می‌دهد. افزون بر این پسورد منیجرها می‌توانند هنگام ورود به حساب کاربری یک سایت، ابتدا نشانی وب آن صفحه را با نشانی ذخیره شده مقایسه کنند و تنها در صورت یکسان بودن آن‌ها اقدام به پر کردن فیلدهای لاگین نمایند. به این ترتیب امکان موفقیت اعمال فیشینگ به شدت کاهش می‌یابد. با توجه به این که در صورت استفاده از چنین ابزارهایی برای ورود به حساب کاربری نیازی به وارد کردن نام کاربری و پسورد وجود ندارد این اطلاعات محرمانه از دید بدافزارهایی مانند Keylogger ها نیز پنهان می‌ماند.

برخی از پسورد منیجرها بخشی برای تولید رمز عبور دارند که در صورت استفاده از الگوریتم‌های مناسب می‌تواند در انتخاب رمزهای عبور قوی و پیچیده (تا حد ممکن غیرقابل حدس) مفید واقع شوند.

نکات و آسیب‌های استفاده از مدیر کلمه عبور

باید توجه داشته باشید درصورتی که ابزار مورد استفاده توسط شما کلمه‌های عبورتان را به صورت رمزگذاری نشده ذخیره کرده باشد دسترسی به این اطلاعات حساس برای هکرها و بدافزارها بسیار آسان خواهد بود. انتخاب رمز عبور اصلی (Master) ساده امکان حدس زدن یا لو رفتن در اثر استفاده از روش‌های حمله لغت‌نامه‌ای و بروت فورس را تسهیل می‌کند. بنابراین به خاطر سپردن تنها یک رمز عبور پیچیده برای استفاده از پسورد منیجر ارزش محافظت از حجم عظیمی از نام‌های کاربری و کلمات عبور شما را خواهد داشت. در عین حال نباید این نکته را فراموش کرد که یک بدافزار با به دست آوردن این رمز اصلی (هرچند پیچیده) می‌تواند به تمامی اطلاعات ذخیره شده در پایگاه داده دسترسی پیدا کند.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

کلمه عبور Password

کلمه عبور یا Password چیست؟

کلمه عبور یا پسورد (Password) یک کلمه یا رشته‌ای از کاراکترهاست که به عنوان ابزاری برای تصدیق هویت یک کاربر مورد استفاده قرار می‌گیرد. با وارد کردن کلمه عبور صحیح که معمولا در کنار یک نام کاربری ثبت شده معنا پیدا می‌کند به کاربر اجازه دسترسی به منبعی معین اعطا می‌شود. از گذرواژه نیز به عنوان معادلی برای این اصطلاح استفاده می‌شود.

امروزه از کلمه‌های عبور برای ورود به سیستم عامل رایانه‌ها، دستگاه‌های همراه، خودپردازها، دسترسی به خدمات بسیاری از سامانه‌های آنلاین و … استفاده می‌شود. با اینحال به کارگیری گذرواژه‌ها تنها به دنیای مدرن کنونی اختصاص ندارد. حتی در زمان‌های نسبتا دور نگهبان‌ها از افراد ناشناس برای ورود به مکان‌های حفاظت شده به صورت شفاهی کلمه عبوری را درخواست می‌کردند.

معمولا هنگام وارد کردن کلمات عبور در رایانه‌های امروزی، به جای حروف وارد شده علامتی مشابه ستاره یا دایره در فیلد مربوطه نمایش داده می‌شود. به این ترتیب امکان خوانده شدن پسورد توسط افرادی که در کنار کاربر قرار دارند از بین می‌رود.

یکی از رایج‌ترین راهکارهای هکرها برای نفوذ به یک سیستم تلاش برای یافتن کلمه عبور با تست کردن احتمالات مختلف است. این شیوه، حمله جستجوی فراگیر یا بروت فورس (Brute-Force attack) نام دارد. با توجه به زمان بالایی که در این روش برای بررسی ترکیبات مختلف حروف، نمادها و اعداد مورد نیاز است معمولا هکرها ترجیح می‌دهند تنها واژه‌های رایج یا حداقل واژه‌های موجود در فرهنگ لغات یک زبان را برای ورود به سیستم مورد بررسی قرار دهند. به این روش، حمله لغت‌نامه‌ای (Dictionary Attack) گفته می‌شود و با توجه به اینکه کاربران بسیاری از واژه‌های ساده موجود در یک زبان به عنوان کلمه عبور استفاده می‌کنند روش لغت‌نامه‌ای می‌تواند در موارد بسیاری برای نفوذ به سیستم نتیجه‌ای موفقیت آمیز داشته باشد. جالب است بدانید مطابق آمارها عباراتی نظیر 123456 و password از رایج‌ترین کلمه‌های عبور در دنیا به شمار می‌روند.

نکاتی برای انتخاب کلمه عبور مناسب و ایمن

هرچند استفاده از واژه‌های رایج یک زبان به عنوان پسورد می‌تواند باعث تسهیل به خاطرسپاری آن شود اما به همان اندازه حدس زدن آن برای اشخاص غیرمجاز را نیز ساده‌تر می‌کند. در واقع یک کلمه عبور یا بهتر بگوییم یک “عبارت عبور” (یا Passphrase) که واژه‌ای معنادار و واقعی نباشد می‌تواند از نظر امنیتی یک نکته‌ی مهم تلقی شود.

بسیاری از سامانه‌ها و سازمان‌ها برای افزایش امنیت، کاربران خود را ملزم به رعایت قوانینی خاص حین انتخاب کلمه عبور می‌کنند. در ادامه برخی از نکاتی که می‌تواند برای انتخاب یک کلمه عبور مناسب مفید واقع شود بیان شده است:

  • هرچه طول (یا تعداد کاراکترهای) پسورد بیشتر باشد حدس زدن آن دشوارتر خواهد بود.
  • بهتر است از تک واژه‌های رایج و پرکاربرد یک زبان به عنوان کلمه عبور استفاده نشود. در مقابل، ترکیبی از چند کلمه غیرمرتبط و گنجاندن علائم یا اعداد در میان آن‌ها می‌تواند انتخابی مناسب باشد.
  • به کاربردن ترکیبی از حروف بزرگ و کوچک، علائم و اعداد هنگام انتخاب پسورد می‌تواند منجربه افزایش پیچیدگی آن شده و در نتیجه احتمال حدس زدن آن توسط روش‌های سیستماتیک را دشوارتر می‌نماید. دقت داشته باشید کلمه‌های عبور نسبت به بزرگی و کوچکی حروف حساس (Case Sensitive) هستند.
  • اکیدا توصیه می‌شود از المان‌هایی نظیر نام شخصی، تاریخ یا سال تولد، شماره تلفن، کد شناسایی و … به عنوان کلمه عبور خود استفاده نکنید.
  • بهتر است به صورت دوره‌ای رمزهای عبور خود را تغییر دهید.
  • پیشنهاد می‌شود برای اینکه یک پسورد پیچیده و در عین حال به یادماندنی انتخاب کنید ابتدا یک عبارت یا جمله را در ذهن خود در نظر بگیرید و سپس حروف ابتدای کلمات آن را به عنوان کلمه عبور خود برگزینید.
  • هرگز کلمه عبور خود را روی یک کاغذ یا سند حفاظت نشده یادداشت نکنید.
  • در نظر گرفتن یک یا چند کلمه فارسی و جایگزین نمودن حروف آن با حروف معادل انگلیسی که روی صفحه کلید قرار دارند نیز می‌تواند کلمه عبوری پیچیده را نتیجه دهد. به عنوان مثال کلمه‌ی فارسی “امیر” را در نظر بگیرید. حرف “ا” روی صفحه کلید معادل حرف “h” می‌باشد به همین ترتیب حروف “م”، “ی” و “ر” به ترتیب معادل با حروف “l” و “d” و “v” هستند. بنابراین کافی است کلمه عبور خود را به صورت “hldv” انتخاب کنید.
  • هنگام ورود کلمه عبور مراقب نگاه‌های افرادی که در اطراف شما قرار دارند باشید. معمولا این هشدار زمانی جدی‌تر خواهد بود که کلمه عبور شما ساده باشد و یا تایپ شما چندان سریع نباشد.
  • برای حساب‌های کاربری مختلف خود از کلمه عبوری یکسان استفاده نکنید. چرا که در این صورت فاش شدن پسورد شما در یک سامانه می‌تواند تهدیدی جدی برای حساب‌های دیگر شما ایجاد کند.

ایمنی سیستم‌های رایانه‌ای در حوزه کلمه عبور

هرچند رعایت نکات بیان شده از سوی کاربر در انتخاب پسوردهایی ایمن از اهمیت بسیار بالایی برخوردار می‌باشد اما نمی‌توان نقش سیستم‌های رایانه‌ای را در حفظ امنیت کاربران نادیده گرفت. به عنوان مثال ایجاد محدودیت در تعداد تلاش‌های مجاز برای ورود به سیستم می‌تواند مانع از نفوذ یک هکر به واسطه روش‌های سعی و خطا شود. نگه‌داری کلمات عبور کاربران سیستم به صورت متونی ساده و رمزنگاری نشده نیز می‌تواند در صورت دسترسی هکرها به منبع نگه‌داری کلمات عبور باعث بروز فاجعه‌ای غیرقابل جبران شود.

ارسال کلمه عبور انتخاب شده از طریق ایمیل موضوع دیگری است که می‌تواند امنیت سیستم را به خطر بیندازد. اجبار کاربران به انتخاب رمزهای عبور پیچیده، اجبار به تغییر دوره‌ای پسورد و ایجاد لیست سیاهی از کلمات رایج از جمله سیاست‌های مهم یک سامانه ایمن به شمار می‌روند. بسیاری از سامانه‌ها نیز در صورتی که کاربر پس از ورود به سیستم برای مدت زمانی نسبتا طولانی از آن استفاده نکند به اجبار از او تقاضا می‌کنند کلمه عبور خود را مجددا وارد نماید. به این ترتیب امکان دسترسی افراد غیر مجاز به سیستم تا حد ممکن پایین خواهد آمد.

استفاده از روش‌های جایگزین صفحه کلید (نظیر پسوردهای صوتی) و روش های تصدیق هویت دو عاملی و چند عاملی و انتقال کلمات عبور از طریق ارتباطات ایمن نیز می‌تواند باعث بالاتر رفتن امنیت فرایند ورود به یک سیستم شود.

در کنار نکات و سیاست‌های امنیتی بیان شده، امروزه پسوردهای یک بار مصرف، رمزهای عبور غیرمتنی (نظیر رمزهای گرافیکی)، روش‌های تصدیق هویت بیومتریک (نظیر اثر انگشت و الگوی عنبیه) و … می‌تواند جایگزین‌های مناسب و ایمنی برای کلمه‌های عبور رایج به شمار روند.

به یادسپاری کلمه عبور

هرچند توصیه کارشناسان امنیتی استفاده از کلمات عبور پیچیده است اما طبیعتا پیچیده‌تر شدن پسوردها باعث می‌شود به خاطر سپردن آن‌ها برای کاربران نیز به امری دشوارتر تبدیل شود. این موضوع زمانی به مسأله‌ای بغرنج تبدیل می‌شود که قرار باشد هر کاربر از کلمات عبور متفاوتی برای ورود به سامانه‌های مختلف استفاده نماید.

در چنین حالتی برای آنکه کاربران را از دشواری‌های به خاطر سپردن مجموعه‌ای از کلمات عبور پیچیده رهایی بخشیم استفاده از ابزارهای مدیریت کلمه عبور (Password Manager) توصیه می‌شود. این نرم‌افزارها قادر به نگه‌داری ایمن و رمزنگاری شده تمامی پسوردهای کاربر هستند و تنها چیزی که لازم است کاربر به خاطر بسپارد یک رمز عبور اصلی برای استفاده از نرم افزار مدیریت کلمه عبور است.

کلمه عبور Password
فرم ورود به یک سایت – فیلد متنی دوم محل وارد کردن پسورد است. حروف وارد شده در این فیلد با نمایش دایره‌های کوچکی پنهان شده‌اند تا مانع از خوانده شدن آن توسط اشخاص دیگر شود.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

حمله بروت فورس Brute-force attack

حمله بروت فورس یا Brute-force attack چیست؟

حمله بروت فورس (Brute-force attack) حمله‌ای است که طی آن، فرد حمله کننده با بررسی کلمه‌های عبور مختلف به صورت سیستماتیک سعی می‌کند کلید رمزگشایی یا رمز عبور یک سیستم تصدیق هویت را به دست آورد.

به عبارت بهتر در حملات Brute force، حالات مختلف ممکن برای رمز عبور مورد بررسی قرار می‌گیرد تا رمز عبور صحیح شناسایی شود. این نوع حملات، مبتنی بر روش حل مسأله‌ای به نام جستجوی بروت فورس یا جستجوی فراگیر (exhaustive search) عمل می‌کنند که در آن با بررسی تمام حالات ممکن برای پاسخ، به دنبال کاندیدی می‌گردیم که تمام شرایط مدنظر مسأله را برآورده می‌سازد. از اینرو این حملات را با نام “حمله جستجوی فراگیر” نیز می‌شناسند.

برای رمزهای عبور کوتاه، حمله بروت فورس می‌تواند در زمان کوتاهی تمام رمزهای عبور ممکن را مورد بررسی و آزمایش قرار دهد و به نتیجه‌ی مطلوب دست پیدا کند، اما در مورد رمزهای عبور طولانی، استفاده از این روش نیازمند صرف زمانی بسیار طولانی (در حد چندین ماه یا حتی چندین سال) می‌باشد که عملا آن را به روشی نامناسب و بدون کارایی تبدیل می‌کند (پیچیدگی زمانی مورد نیاز برای بروت فورس به صورت نمایی با افزایش طول رمز یا کلید افزایش می‌یابد). از اینرو معمولا بروت فورس به عنوان آخرین حربه‌ی هکرها و زمانی که نقطه‌ی ضعفی برای نفوذ به سیستم مشاهده نشود مورد استفاده قرار می‌گیرد.

معمولا در این نوع حملات از واحد پردازش گرافیکی (GPU) برای بررسی حالات مختلف رمز عبور استفاده می‌شود. چرا که گونه‌های مدرن این پردازنده‌ها ضمن در دسترس بودن و قیمت مناسب (به نسبت کارایی) برای انجام کارهای تکراری از کارایی بیشتری در مقایسه با یک پردازنده مرکزی (CPU) برخوردار هستند.

با توجه به ماهیت، روش بروت فورس می‌تواند حداقل از نقطه نظر تئوری برای رمزگشایی هر نوع داده‌ی رمزنگاری شده و سیستم تصدیق هویتی (ولو در زمانی نامعقول) مورد استفاده قرار بگیرد. از سوی دیگر، روش حمله لغت‌نامه‌ای (Dictionary attack) با وجود اینکه از سرعت بالاتری برای رمزهای ساده برخوردار است اما به دلیل محدود بودن فضای مورد جستجو به هیچ وجه نمی‌تواند مانند بروت فورس، یافتن رمز صحیح را تضمین نماید.

مقابله با حمله بروت فورس

بسیاری از سیستم‌های تصدیق هویت از روش‌های مختلفی برای مقابله با این نوع حملات استفاده می‌کنند. محدود کردن تعداد دفعات تلاش ناموفق برای ورود به حساب کاربری در یک وبسایت و پیچیده‌تر کردن فرایند ورود (با استفاده از روش‌هایی نظیر کپچا) از جمله‌ی این روش‌ها به شمار می‌روند. از سوی دیگر کاربر نیز می‌تواند با انتخاب رمزهای عبور پیچیده و طولانی (ترکیب رقم، حرف و نماد) و هم‌چنین در صورت امکان، استفاده از روش‌های تصدیق هویت دو عاملی امنیت خود را در برابر این نوع حملات تا حد ممکن افزایش دهند.

حمله بروت فورس معکوس (Reverse Brute-force attack)

در گونه‌ی معکوس این نوع حملات برخلاف روش معمولی، فرد متجاوز به جای بررسی رمزهای عبور مختلف برای یک نام کاربری معین، مجموعه‌ای محدود از رمزهای عبور را برای تمام نام‌های کاربری ثبت شده در یک سامانه مورد بررسی قرار می‌دهد. در چنین حملاتی، کاربرانی که از رمزهای عبور ساده و کوتاه‌تر استفاده کرده‌اند آسیب‌پذیرتر خواهند بود.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

حمله لغت نامه ای Dictionary Attack

حمله لغت نامه ای یا Dictionary Attack چیست؟

حمله لغت نامه ای (Dictionary Attack) در علوم رایانه، به روشی گفته می‌شود که در آن متجاوز تلاش می‌کند با امتحان کردن مجموعه‌ای از واژه‌های رایج، کلید رمزگشایی یا کلمه عبور یک سیستم تصدیق هویت را به دست آورد.

به عبارت بهتر، در حملات لغت نامه ای، فرد حمله کننده لیستی از واژه‌ها، عبارات و حتی ترکیب حروف، ارقام و نمادها را مورد استفاده قرار می‌دهد که از احتمال بیشتری برای انتخاب شدن به عنوان رمز برخوردار هستند.

برخلاف حملات بروت فورس (که در آن‌ها به صورت سیستماتیک فضای کلید بسیار بزرگی مورد تست قرار می‌گیرد)، در حملات مبتنی بر لغت‌نامه تنها عباراتی که رایج‌تر هستند بررسی می‌شود. بنابراین در صورتی که کاربر از یک رمز عبور پیچیده و غیر رایج استفاده کند امکان موفقیت متجاوز در حمله لغت‌نامه‌ای بسیار پایین خواهد بود. اما جالب است بدانید متأسفانه بسیاری از افراد برای تسهیل به خاطر سپردن رمز عبور خود، از رمزهای ساده‌ای همچون 123456 و یا qwerty استفاده می‌کنند که حتی بدون استفاده از یک لغت‌نامه کامل نیز به سرعت قابل شناسایی می‌باشد!

نرم‌افزارهای متعددی برای انجام حملات لغت‌نامه‌ای طراحی شده است (که طبق قوانین مجاز به ذکر اسامی آن‌ها نیستیم). البته ذکر این نکته ضروری است که در این نوع حملات، هرچه لغت‌نامه‌ی مورد استفاده دارای عبارات بیشتری (در حد میلیون‌ها عدد!) باشد، احتمال موفقیت حمله و هم‌چنین زمان مورد نیاز برای بررسی تمام لغات افزایش خواهد یافت. در برخی از لغت‌نامه‌ها، عبارات رایج‌تر در ابتدای لیست قرار داده می‌شوند که به این ترتیب شکستن رمزهای متداول آسان‌تر می‌شود. بنابراین به شما توصیه می‌کنیم برای غلبه بر این نوع حملات از رمزهای عبور پیچیده، ترجیحا بدون معنا و مفهوم و در عین حال ترکیبی از حرف، رقم و نماد استفاده کنید به طوری که مطمئن شوید نه تنها رمزتان در هیچ لغت‌نامه‌ای یافت نمی‌شود بلکه کار را برای سایر روش‌ها مثل حمله بروت فورس نیز بسیار دشوارتر کرده‌اید.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

تصدیق هویت دو عاملی Two-Factor Authentication

تصدیق هویت دو عاملی یا Two-Factor Authentication چیست؟

تصدیق هویت دو عاملی یا اصالت سنجی دو عاملی (Two-Factor Authentication یا به اختصار 2FA) روشی برای تأیید هویت کاربر است که در آن از دو بخش امنیتی مختلف برای اطمینان از صحت هویت فرد استفاده می‌شود. این بخش‌ها می‌توانند شامل موردی سری یا شخصی باشد که کاربر از آن مطلع است (آنچه فقط خودش می‌داند)، چیزی باشد که کاربر مالک آنست (آنچه فقط در اختیار خود اوست) و یا فاکتوری وابسته به کاربر (آنچه که او هست) باشد.

تصدیق هویت دو عاملی در واقع زیرمجموعه یا نوع خاصی از تصدیق هویت چند عاملی (Multi-Factor Authentication یا MFA) است که در آن تعداد فاکتورها به دو مورد محدود شده است. از نمونه‌های رایج این نوع Authentication می‌توان به روشی اشاره نمود که در دستگاه‌های خودپرداز مورد استفاده قرار می‌گیرد. فاکتور اول تأیید هویت در این دستگاه‌ها، کارت اعتباری و فاکتور دوم رمز عبور کاربر است. در صورتی که فرد به کارت اعتباری دسترسی نداشته باشد یا رمز عبور کارت را به طور صحیح وارد نکند مالک حساب شناخته نمی‌شود و اجازه‌ی دسترسی به اطلاعات یا برداشت از حساب را نخواهد داشت.

استفاده از روش‌های دو عاملی در برابر روش‌های ساده از امنیت بالاتری برخوردار است چرا که احتمال اینکه فرد غیرمجازی بتواند از هر دو بخش مورد نیاز با موفقیت عبور کند بسیار پایین‌تر خواهد بود.

استفاده از کلیدهای فیزیکی، حافظه‌های فلش USB، رمز عبور و حتی مشخصه‌های منحصربفرد کاربر (مثل اثر انگشت، الگوی صدا و عنبیه) از جمله روش‌هایی است که امروزه در تصدیق هویت دو عاملی به کار می‌رود.

تصدیق هویت دو عاملی و تأیید دو گامی

نوع دیگری از اصالت سنجی که در برخی موارد با گونه دو عاملی اشتباه گرفته می‌شود تأیید دو گامی (Two-Step Verification یا Two-Step Authentication) نام دارد. برای مشخص شدن تفاوت این دو مفهوم به ذکر نمونه‌ای از این روش‌ها می‌پردازیم.

یکی از رایج‌ترین گام‌هایی که در سیستم‌های تأیید دو گامی یا چند گامی به کار می‌رود استفاده از قابلیت‌های گوشی‌های موبایل است. در این روش‌ها هنگام ورود به حساب کاربری یا استفاده از خدمات اینترنتی بانک‌ها، کدی برای شماره همراهی که پیش‌تر به سیستم معرفی شده است در قالب پیامک ارسال می‌شود و یا این کد توسط اپلیکیشن نصب شده روی گوشی کاربر دریافت می‌شود که برای ورود و استفاده از امکانات سامانه لازم است علاوه بر گام اول (که معمولا همان رمز عبور است) کد دریافتی نیز در بخش مربوطه وارد شود.

توجه داشته باشید در مثالی که بیان شد، گوشی همراه کاربر (به عنوان چیزی که کاربر مالک آنست) کلید (یا فاکتور) تأیید هویت به شمار نمی‌رود بلکه این کد دریافت شده توسط گوشی است که نقش کلید را ایفا می‌کند. این کد ممکن است از سایر روش‌ها نظیر ایمیل نیز دریافت شود. استفاده از این مدل تصدیق هویت در کنار سادگی و عدم نیاز به پرداخت هزینه بیشتر برای تهیه دستگاه رمزیاب، با معایبی همچون احتمال استراق سمع و هک شدن ارتباطات، افزایش زمان Authentication به دلیل تأخیر در دریافت کد و … دست به گریبان می‌باشد.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

کوکی Cookie

کوکی یا Cookie چیست؟

کوکی (Cookie)، داده‌های اندکی است که از سوی یک وبسایت به هنگام بازدید به رایانه‌ی کاربر فرستاده شده و توسط مرورگر در فضای مخصوصی روی رایانه کاربر ذخیره می‌شود. زمانی که کاربر مجددا وارد آن سایت می‌شود، اطلاعات ذخیره شده برای سرور ارسال می‌شود تا از وضعیت پیشین کاربر مطلع شود. کوکی با عناوین مختلفی نظیر کوکی مرورگر (Browser Cookie)، وب کوکی (Web Cookie)، اچ تی تی پی کوکی (HTTP Cookie) و اینترنت کوکی (Internet Cookie) نیز شناخته می‌شود. از نظر لغوی Cookie به معنای کلوچه می‌باشد.

بسیاری از مرورگرهای رایج امروزی قابلیت غیرفعال کردن، مشاهده و حذف انتخابی یا حذف تمام کوکی‌ها را در اختیار کاربر قرار می‌دهند. به علاوه افزونه‌های خاصی برای برخی از مرورگرها نیز وجود دارد که می‌تواند به مدیریت بهتر و آسانتر کوکی‌ها کمک نماید.

هر کوکی دارای اجزای مختلفی است که عبارتند از: نام (Name)، مقدار (Value) و ویژگی (Attribute) ها که البته مورد آخر الزامی نبوده و اطلاعاتی از جمله زمان انقضای کوکی و … را نگه داری می‌کند.

کاربردهای رایج کوکی‌ها

کوکی‌ها در به یادآوردن اطلاعات مربوط به وضعیت کاربر برای وبسایت‌ها از اهمیت ویژه‌ای برخوردار هستند. برای مثال، ممکن است یک فروشگاه آنلاین از کوکی‌هایی که روی رایانه‌ی شما ذخیره می‌کند برای نگه‌داری کالاهایی که به سبد خریدتان اضافه کرده‌اید استفاده کند. هم‌چنین می‌توان برای جلوگیری از امتیازدهی یا شرکت مجدد در نظرسنجی‌های آنلاین از Cookie ها استفاده کرد. از دیگر کاربردهای این کلوچه‌های دیجیتال می‌توان به نگه‌داری رمز عبور، اطلاعات کارت اعتباری و محتویات فرم‌های تماس (نظیر نام و آدرس کاربر) و سایر اطلاعات مورد نیاز وبسایت اشاره نمود.

بسیاری از سایت‌ها با استفاده از کوکی‌های تصدیق هویت (Authentication Cookie) متوجه می‌شوند که آیا کاربر در سایت لاگین کرده است یا خیر. از اینرو به منظور حفظ امنیت و جلوگیری از نفوذ هکرها از طریق فریب سرور، داده‌های این دست از Cookie ها باید به صورت رمزنگاری شده ذخیره شود تا توسط اشخاص ثالث قابل خواندن نباشند. ردگیری و تحلیل رفتارهای وبگردی کاربران نیز از دیگر کاربردهای Cookie ها به شمار می‌رود.

انواع رایج کوکی ها

انواع گوناگونی از کوکی‌ها وجود دارند. برخی از آن‌ها که با عنوان کوکی‌های موقت یا جلسه‌ای (Session Cookie) شناخته می‌شوند به طور موقت روی حافظه قرار می‌گیرند و با بسته شدن مرورگر حذف می‌شوند. کوکی‌های ماندگار (Persistent Cookie) برخلاف گونه‌ی موقت، پس از رسیدن به یک تاریخ و زمان مشخص (زمان انقضا) یا سپری کردن یک طول عمر معین به صورت خودکار منقضی می‌شوند. کوکی‌های ایمن (Secure Cookie) نیز نوع دیگری از کوکی‌هاست که تنها از طریق ارتباطات رمز نگاری شده (HTTPS) قابل انتقال می‌باشند.

استفاده از کوکی‌ها معایبی (از قبیل شناسایی غیردقیق کاربر در برخی موارد، امکان نقض حریم خصوصی و بروز ناسازگاری در وضعیت کاربر روی رایانه شخصی و سرور) را نیز به همراه دارد. به همین دلیل در برخی از کاربردها تا حد ممکن استفاده از روش‌های جایگزین توصیه می‌شود.