انتخاب زبان

ارزیابی امنیتی تولید، ذخیره‌سازی و پرکردن خودکار رمزعبور در مدیران رمزعبور مبتنی بر مرورگر

تحلیل امنیتی جامع ۱۳ مدیر رمزعبور محبوب، ارزیابی تصادفی بودن تولید رمزعبور، امنیت ذخیره‌سازی و آسیب‌پذیری‌های پرکردن خودکار.
computationalcoin.com | PDF Size: 1.0 MB
امتیاز: 4.5/5
امتیاز شما
شما قبلاً به این سند امتیاز داده اید
جلد سند PDF - ارزیابی امنیتی تولید، ذخیره‌سازی و پرکردن خودکار رمزعبور در مدیران رمزعبور مبتنی بر مرورگر

1. مقدمه

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

2. روش‌شناسی و محدوده

این ارزیابی سیزده مدیر رمزعبور را شامل شد که پنج افزونه مرورگر (مانند LastPass، 1Password)، شش مدیر داخلی مرورگر (مانند Chrome، Firefox) و دو کلاینت دسکتاپ برای مقایسه بودند. روش‌شناسی شامل موارد زیر بود:

  • تولید و تحلیل مجموعه‌ای از ۱۴۷ میلیون رمزعبور برای بررسی تصادفی بودن و قدرت.
  • تکرار و گسترش ارزیابی‌های پیشین از امنیت ذخیره‌سازی رمزعبور.
  • آزمایش مکانیزم‌های پرکردن خودکار برای آسیب‌پذیری‌هایی مانند کلیک‌ربایی و XSS.
  • ارزیابی تنظیمات امنیتی پیش‌فرض و شیوه‌های رمزنگاری.

3. تحلیل تولید رمزعبور

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

3.1. توزیع کاراکتر و تصادفی بودن

تحلیل مجموعه ۱۴۷ میلیون رمزعبور، چندین مورد از توزیع‌های غیرتصادفی کاراکتر در رمزهای عبور تولیدشده را آشکار کرد. برخی مدیران در انتخاب کاراکتر سوگیری نشان دادند و از توزیع یکنواخت تصادفی منحرف شدند. برای یک مولد واقعاً تصادفی، احتمال انتخاب هر کاراکتر از مجموعه‌ای به اندازه $N$ باید $P(char) = \frac{1}{N}$ باشد. انحراف از این نشان‌دهنده نقص الگوریتمی است.

3.2. آسیب‌پذیری در برابر حملات حدسی

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

  • حدس‌زنی برخط: رمزهای عبور کوتاه‌تر از ۱۰ کاراکتر در برابر حملات برخط با نرخ محدود، ضعیف تشخیص داده شدند.
  • حدس‌زنی برون‌خط: رمزهای عبور کوتاه‌تر از ۱۸ کاراکتر در برابر تلاش‌های شکستن برون‌خط پس از نفوذ به پایگاه داده، که در آن مهاجم می‌تواند حدس‌های نامحدود بزند، آسیب‌پذیر بودند.

این با وعده اصلی مدیران رمزعبور برای ایجاد رمزهای عبور قوی در تضاد است.

4. امنیت ذخیره‌سازی رمزعبور

اگرچه در مقایسه با ارزیابی‌های پنج سال پیش بهبودهایی مشاهده شد، مسائل مهمی همچنان پابرجاست.

4.1. رمزنگاری و مدیریت فراداده

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

4.2. تنظیمات پیش‌فرض ناامن

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

5. آسیب‌پذیری‌های مکانیزم پرکردن خودکار

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

5.1. کلیک‌ربایی و تغییر ظاهر رابط کاربری

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

5.2. ریسک‌های اسکریپت‌نویسی بین‌سایتی (XSS)

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

6. نتایج و تحلیل تطبیقی

اندازه مجموعه داده

۱۴۷M

رمزعبور تحلیل‌شده

مدیران آزمایش‌شده

۱۳

مرورگر و دسکتاپ

نقص بحرانی

<۱۸ کاراکتر

آسیب‌پذیر در برابر شکستن برون‌خط

یافته کلیدی: چشم‌انداز نسبت به مطالعات پیشین (مانند لی و همکاران، ۲۰۱۴؛ سیلور و همکاران، ۲۰۱۳) بهبود یافته است، اما نقص‌های امنیتی بنیادی در بین چندین فروشنده باقی مانده است. هیچ مدیر رمزعبور واحدی در هر سه مرحله ارزیابی‌شده (تولید، ذخیره‌سازی، پرکردن خودکار) بی‌عیب نبود. مدیران داخلی مرورگر و افزونه‌های اختصاصی هر دو الگوهای متمایزی از آسیب‌پذیری‌ها را نشان دادند.

7. توصیه‌ها و جهت‌های آینده

مقاله با توصیه‌های عملیاتی به پایان می‌رسد:

  • برای کاربران: از مدیران رمزعبوری که نقص‌های تولید شناخته‌شده یا تنظیمات پیش‌فرض ناامن پرکردن خودکار دارند، اجتناب کنید. مدیرانی را ترجیح دهید که کنترل دقیقی بر رفتار پرکردن خودکار می‌دهند.
  • برای توسعه‌دهندگان: مولدهای اعداد تصادفی رمزنگاری‌شده امن (CSPRNG) را برای تولید رمزعبور پیاده‌سازی کنید. تمام فراداده را رمزنگاری کنید. بررسی‌های قوی مبدأ و مکانیزم‌های رضایت کاربر را برای پرکردن خودکار پیاده‌سازی کنید (مثلاً نیاز به کلیک روی یک عنصر غیرقابل تغییر ظاهر در رابط کاربری).
  • برای پژوهشگران: ادغام روش‌های صوری برای تأیید منطق پرکردن خودکار و کاربرد یادگیری ماشین برای تشخیص درخواست‌های پرکردن خودکار غیرعادی که نشان‌دهنده حمله است، را بررسی کنید.

8. تحلیل اصلی و تفسیر کارشناسی

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

جریان منطقی: قدرت مقاله در رویکرد چرخه حیات جامع آن نهفته است. به درستی شناسایی می‌کند که زنجیره به اندازه ضعیف‌ترین حلقه آن قوی است. یافتن غیرتصادفی بودن در تولید ($P(char) \neq \frac{1}{N}$) اساساً کل فرضیه را قبل از در نظر گرفتن ذخیره‌سازی یا پرکردن خودکار تضعیف می‌کند. سپس تکرار آزمایش‌های گذشته ذخیره‌سازی/پرکردن خودکار یک الگو را نشان می‌دهد: در حالی که آسیب‌پذیری‌های سطحی ممکن است اصلاح شوند، نقص‌های معماری (مانند فراداده رمزنشده یا پرکردن خودکار بی‌قید) باقی می‌مانند. این پیشرفت منطقی از ایجاد معیوب به مدیریت ناامن تا استقرار پرریسک، تصویری کامل و محکوم‌کننده ترسیم می‌کند.

نقاط قوت و ضعف: نقطه قوت اصلی مطالعه، رویکرد گسترده و داده‌محور آن در تولید رمزعبور—اولین مورد در ادبیات—است. مجموعه ۱۴۷ میلیون رمزعبور، شواهد آماری انکارناپذیری از ضعف الگوریتمی ارائه می‌دهد و فراتر از نگرانی‌های نظری می‌رود. با این حال، تحلیل یک نقطه کور دارد: عمدتاً مدیران رمزعبور را به عنوان کلاینت‌های ایزوله در نظر می‌گیرد. واقعیت مدرن، همگام‌سازی ابری و برنامه‌های موبایل است. همانطور که در مجموعه مقالات سمپوزیم امنیت و حریم خصوصی IEEE در مورد مدل‌های امنیت ابری ذکر شده، سطح تهدید به پروتکل‌های همگام‌سازی، APIهای سمت سرور و ادغام سیستم عامل موبایل گسترش می‌یابد که این مطالعه آن‌ها را ارزیابی نمی‌کند. علاوه بر این، اگرچه به «تنظیمات پیش‌فرض ناامن» اشاره می‌کند، اما نرخ پذیرش کاربران از تنظیمات امن را—که یک عامل حیاتی در ریسک دنیای واقعی است—کمی نمی‌کند، همانطور که مطالعات قابلیت استفاده از کنفرانس USENIX SOUPS به طور مداوم نشان می‌دهد اکثر کاربران هرگز تنظیمات پیش‌فرض را تغییر نمی‌دهند.

بینش‌های عملی: برای تیم‌های امنیتی سازمانی، این تحقیق الزام می‌کند که از توصیه‌های کلی «از یک مدیر رمزعبور استفاده کنید» به سمت راهنمایی‌های خاص فروشنده و پیکربندی‌محور تغییر جهت دهند. مدیرانی با مولدهای ضعیف باید در لیست سیاه قرار گیرند. فهرست‌های بررسی خرید اکنون باید شامل تأیید استفاده از CSPRNG و رمزنگاری فراداده باشد. برای توسعه‌دهندگان، مسیر پیش رو روشن است: اصل «عدم اعتماد صفر» را برای پرکردن خودکار اتخاذ کنید و برای هر عمل پرکردن، نیاز به رضایت صریح، آگاه از زمینه کاربر داشته باشید، مشابه مدل‌های مجوزی که کنسرسیوم جهانی وب (W3C) برای APIهای قدرتمند وب تبلیغ می‌کند. آینده در تلاش برای ایمن‌سازی کامل یک پرکردن خودکار بیش از حد مجاز نیست، بلکه در طراحی یک پرکردن خودکار با حداقل مجوز و کنترل‌شده توسط کاربر است. شکست صنعت در خوداصلاحی طی پنج سال نشان می‌دهد که ممکن است مداخله تنظیم‌کننده یا نهاد استاندارد (مانند NIST یا FIDO Alliance) برای اجرای الزامات امنیتی پایه برای این نگهبانان هویت دیجیتال ما ضروری باشد.

9. جزئیات فنی و نتایج آزمایشی

تحلیل تولید رمزعبور: آنتروپی $H$ یک رمزعبور تولیدشده به طول $L$ از مجموعه کاراکتر $C$ در حالت ایده‌آل $H = L \cdot \log_2(|C|)$ بیت است. مطالعه مواردی را یافت که آنتروپی مؤثر به دلیل انتخاب کاراکتر سوگیرانه کمتر بود. به عنوان مثال، اگر یک مولد قصد استفاده از مجموعه ۹۴ کاراکتری را داشت اما برخی کاراکترها با احتمال $p \ll \frac{1}{94}$ ظاهر می‌شدند، آنتروپی واقعی کاهش می‌یابد: $H_{actual} = -\sum_{i=1}^{94} p_i \log_2(p_i)$ به ازای هر کاراکتر، که در آن $\sum p_i = 1$.

توضیح نمودار آزمایشی: یک نمودار کلیدی در مطالعه، کسر تجمعی رمزهای عبور شکسته‌شده را در برابر تعداد تلاش‌های حدسی (مقیاس لگاریتمی) برای رمزهای عبور تولیدشده با طول‌های مختلف (مثلاً ۸، ۱۲، ۱۶ کاراکتر) ترسیم می‌کند. منحنی برای رمزهای عبور زیر ۱۰ کاراکتر افزایشی تند را نشان می‌دهد که نشان‌دهنده به خطر افتادن سریع تحت شبیه‌سازی حملات برخط (مثلاً ۱۰۰۰ حدس) است. منحنی برای رمزهای عبور زیر ۱۸ کاراکتر، کسر قابل توجهی را پس از $10^{10}$ تا $10^{12}$ حدس برون‌خط شکسته‌شده نشان می‌دهد که آن‌ها را در قابلیت مهاجمان مصمم با سخت‌افزار مدرن قرار می‌دهد، همانطور که توسط ابزارهایی مانند Hashcat و جداول رنگین‌کمان معیارگذاری شده است.

10. چارچوب تحلیل و مطالعه موردی

چارچوب برای ارزیابی امنیت مدیر رمزعبور:

  1. یکپارچگی تولید: خروجی را از نظر آماری برای تصادفی بودن آزمایش کنید (مانند آزمون‌های NIST STS، Dieharder) و آنتروپی مؤثر را محاسبه کنید. تأیید کنید که حداقل طول پیش‌فرض با دستورالعمل‌های فعلی NIST (>= ۱۲ کاراکتر) همسو است.
  2. امنیت ذخیره‌سازی: ذخیره‌سازی محلی (مانند IndexedDB مرورگر، فایل‌های SQLite) و ترافیک شبکه را برای داده‌های رمزشده در مقابل متن ساده بررسی کنید. کتابخانه رمزنگاری و تابع استخراج کلید را حسابرسی کنید (مثلاً آیا از PBKDF2 با تکرار کافی یا Argon2 استفاده می‌کند؟).
  3. وضعیت امنیتی پرکردن خودکار: مکانیزم راه‌انداز پرکردن خودکار را نقشه‌برداری کنید. با ایجاد iframeهای همپوشان برای تغییر ظاهر رابط کاربری آزمایش کنید. منطق تطبیق مبدأ را با استقرار سایت‌هایی با نام‌های دامنه مشابه (مثلاً `example.com` در مقابل `example.com.evil.net`) آزمایش کنید. بررسی کنید که آیا پرکردن خودکار نیاز به یک حرکت کاربر روی یک عنصر صفحه غیرقابل پیش‌بینی دارد یا خیر.

مطالعه موردی - آسیب‌پذیری کلیک‌ربایی: مدیر X را در نظر بگیرید که یک دکمه پرکردن خودکار روی یک فرم ورود نشان می‌دهد. یک مهاجم یک صفحه مخرب با یک iframe نامرئی که `bank.com` را بارگیری می‌کند، ایجاد می‌کند. iframe طوری قرار می‌گیرد که دکمه پرکردن خودکار مدیر X روی یک دکمه پنهان «ارسال به مهاجم» در صفحه مخرب ظاهر شود. کاربر برای پرکردن خودکار کلیک می‌کند، اما در عوض روی دکمه مهاجم کلیک می‌کند و اعتبارنامه‌های `bank.com` را به سرور مهاجم می‌فرستد. این نشان‌دهنده شکست در اتصال رویداد کلیک و اعتبارسنجی مبدأ مدیر است.

11. کاربردهای آینده و چشم‌انداز پژوهشی

یافته‌ها چندین مسیر برای کار آینده باز می‌کنند:

  • تولید و ذخیره‌سازی پشتیبانی‌شده توسط سخت‌افزار: ادغام با ماژول‌های پلتفرم مورد اعتماد (TPM) یا محیط‌های امن (مانند Secure Element اپل) برای تولید بذرهای تصادفی و ذخیره کلیدهای رمزنگاری، انتقال اسرار از قلمروهای صرفاً نرم‌افزاری.
  • پرکردن خودکار آگاه از زمینه و مبتنی بر ریسک: استفاده از یادگیری ماشین برای تحلیل زمینه صفحه (ساختار DOM، جزئیات گواهی، اعتبار سایت) برای ارزیابی ریسک پرکردن خودکار. یک زمینه پرریسک می‌تواند نیاز به احراز هویت اضافی (بیومتریک) داشته باشد یا پرکردن خودکار را به طور کامل مسدود کند.
  • APIهای امنیتی استانداردشده: توسعه یک API استانداردشده مرورگر و مجوزدار برای مدیران رمزعبور (مانند جانشینی برای API `chrome.loginState`) که دسترسی ایمن و سندباکس‌شده به اعتبارنامه‌ها با درخواست‌های رضایت واضح کاربر فراهم می‌کند و سطح حمله از تزریق دلخواه DOM را کاهش می‌دهد.
  • آمادگی برای رمزنگاری پساکوانتومی: تحقیق در مورد مهاجرت رمزنگاری مدیر رمزعبور به الگوریتم‌های مقاوم در برابر حملات رایانه کوانتومی، زیرا گاوصندوق رمزشده یک دارایی با عمر طولانی است که برای مهاجمان «اکنون جمع‌آوری کن، بعداً رمزگشایی کن» بسیار جذاب است.
  • مدل‌های غیرمتمرکز و خود-نگهداری: بررسی استفاده از پروتکل‌های هویت غیرمتمرکز (مانند مبتنی بر اعتبارنامه‌های قابل تأیید W3C) برای کاهش وابستگی به یک گاوصندوق مرکزی، توزیع ریسک و دادن کنترل بیشتر به کاربران.

12. منابع

  1. Oesch, S., & Ruoti, S. (2020). That Was Then, This Is Now: A Security Evaluation of Password Generation, Storage, and Autofill in Browser-Based Password Managers. USENIX Security Symposium.
  2. Li, Z., He, W., Akhawe, D., & Song, D. (2014). The Emperor's New Password Manager: Security Analysis of Web-based Password Managers. IEEE Symposium on Security and Privacy (SP).
  3. Silver, D., Jana, S., Boneh, D., Chen, E., & Jackson, C. (2013). Password Managers: Attacks and Defenses. USENIX Security Symposium.
  4. National Institute of Standards and Technology (NIST). (2017). Digital Identity Guidelines (SP 800-63B).
  5. Stock, B., & Johns, M. (2013). Protecting the Intranet Against "JavaScript Malware" and Related Attacks. International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment (DIMVA).
  6. Herley, C. (2009). So Long, And No Thanks for the Externalities: The Rational Rejection of Security Advice by Users. Proceedings of the New Security Paradigms Workshop (NSPW).
  7. World Wide Web Consortium (W3C). (2021). Permissions Policy. https://www.w3.org/TR/permissions-policy-1/
  8. FIDO Alliance. (2022). FIDO2: WebAuthn & CTAP. https://fidoalliance.org/fido2/