بلوتوث

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

این آسیب‌پذیری با عنوان CVE-2019-9506  شناخته می‌شود و در روشی قرار دارد که “پروتکل مذاکره کلید رمزگذاری شده” به دو دستگاه بلوتوث BR/EDR اجازه می‌دهد تا در هنگام pair کردن ارتباط ایمن آن‌ها، یک مقدارentropy  برای کلیدهای رمزگذاری شده انتخاب کند.

با توجه به حمله KNOB(1) این آسیب‌پذیری می‌تواند به مهاجمان از راه دور که در مجاورت دستگاه‌های مورد هدف قرار دارند، اجازه دهد تا ترافیک بلوتوث رمزنگاری‌شده بین دو دستگاه pair شده را شنود، مونیتور یا دست‌کاری کنند.

بلوتوث(۲)BR/EDR  که با عنوان Bluetooth Classic نیز شناخته می‌شود، یک استاندارد فناوری بی‌سیم است که به‌طورمعمول برای ارتباطات بی‌سیم با برد نسبتاً کوتاه مانند پخش صوتی در هدست‌ها یا بلندگوهای قابل‌حمل طراحی ‌شده است.

ازنقطه‌نظر امنیتی، مشخصات اصلی پروتکل بلوتوث BR/EDR پشتیبانی از کلیدهای رمزنگاری با entropy بین ۱ تا ۱۶ بایت/اکتت(۳) است که مقدار بالاتر به معنای امنیت بیشتر است.

بااین‌حال، محققان دریافتند که مذاکره(۴) entropy که دستگاه‌ها بر اساس LMP(5) انجام می‌دهند، نه رمزنگاری‌شده و نه تصدیق هویت می‌شود و می‌توان آن‌ها را از طریق over-the-air ربوده یا دست‌کاری کرد.

چگونه آسیب‌پذیری مذاکره کلید  BR/EDR بلوتوث کار می‌کند؟

آسیب‌پذیری تازه کشف‌شده در بلوتوث می‌تواند به یک مهاجم از راه دور اجازه دهد تا دو دستگاه مورد هدف را برای توافق در مورد کلید رمزنگاری با تنها ۱ بایت (۸ بیت) entropy فریب دهد و درنهایت کار با brute-force کلیدهای رمزنگاری مذاکره شده آسان می‌شود.

در گزارش منتشرشده توسط CERT Coordination Center آمده است[۱]: “به‌عنوان‌مثال، فرض کنید که دو کنترلر تلاش می‌کنند ارتباط برقرار کنند: آلیس و باب. بعد از تأیید اعتبار کلید پیوند، آلیس پیشنهاد می‌کند که او و باب از ۱۶ بایت entropy استفاده کنند. این عدد یعنی N، می‌تواند بین ۱ تا ۱۶ بایت باشد. باب هم می‌تواند این موضوع را بپذیرد، رد کند و مذاکره را متوقف کند، یا مقدار کمتری را پیشنهاد دهد.”

“باب ممکن است بخواهد مقدار N کوچک‌تر را پیشنهاد کند زیرا او (کنترل‌کننده) از تعداد بیشترِ بایت پیشنهادی توسط آلیس پشتیبانی نمی‌کند. پس از پیشنهاد مقدار کمتر، آلیس می‌تواند آن را بپذیرد و درخواست فعال کردن رمزگذاری لایه پیوند با باب را می‌دهد. باب می‌تواند قبول کند.”

بااین‌حال، با بهره‌برداری از آسیب‌پذیری گزارش‌شده “یک مهاجم، چارلی، می‌تواند با ره‌گیری درخواست پیشنهادی آلیس به باب و تغییر N، آلیس و باب را مجبور به استفاده از N کوچک‌تر کند.”

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

علاوه بر این، توجه به این نکته نیز مهم است که برای موفقیت در حمله:

  • هر دو دستگاه بلوتوث باید اتصال BR/EDR را برقرار کنند.
  • هر دو دستگاه بلوتوث باید در برابر این نقص آسیب‌پذیر باشند.
  • مهاجم باید بتواند در هنگام pair شدن، انتقال مستقیم بین دستگاه‌ها را مسدود کند.
  • حمله باید در حین مذاکره یا مذاکره مجدد از اتصال دستگاه pair شده انجام شود؛ جلسات موجود قابل ‌حمله نیست.

علاوه بر این، در گزارش رسمی منتشرشده توسط Bluetooth.com همچنین آمده است[۲]: “ازآنجاکه تمام مشخصات بلوتوث حداقل طول کلید رمزنگاری را تعیین نمی‌کنند، ممکن است برخی از فروشندگان محصولات بلوتوثی را توسعه داده باشند که طول کلید رمزنگاری مورداستفاده در یک ارتباط BR/EDR بتواند توسط یک دستگاه حمله‌کننده به یک octet واحد تنظیم شود.”

فروشندگان/ نرم‌افزارها/سیستم‌عامل‌های تحت تأثیر و به‌روزرسانی‌های منتشرشده

این آسیب‌پذیری توسط تیمی از محققان ازجمله Daniele Antonioli از SUTD، Dr. Nils Ole Tippenhauer از CISPA و Prof. Kasper Rasmussen از دانشگاه آکسفورد کشف‌شده است.

محققان در مقاله مفصلی که در تاریخ ۱۳ اوت ۲۰۱۹ منتشر شد[۳]، دراین‌باره گفتند: “ما حمله KNOB را روی بیش از ۱۴ تراشه بلوتوث از فروشندگان مختلف مانند Intel ، Broadcom ، Apple و Qualcomm ارزیابی کردیم. همه تراشه‌ها ۱ بایت entropy را به جز تراشه Apple W1 که حداقل (۷) بایت آنتروپی را می‌پذیرد، می‌پذیرند.”

برای جلوگیری از حمله KNOB، سازندگان بلوتوث به تولیدکنندگان دستگاه‌ها و فروشندگان نرم‌افزار اکیداً توصیه کرده‌اند که حداقل کلید رمزنگاری ۷ octets را برای اتصالات BR/EDR اعمال کنند.

برای برطرف کردن این آسیب‌پذیری، فروشندگان مختلف تحت تأثیر به‌روزرسانی‌های امنیتی موردنیاز را برای سیستم‌عامل‌ها، firmware ها و نرم‌افزار خود منتشر کردند؛ ازجمله:

  • مایکروسافت برای ویندوز[۴]
  • سیسکو برای تلفن‌های IP و [۵]Webex
  • گوگل برای اندروید[۶]
  • اپل برای macOS ، iOS و watchOS[7-9]
  • بلک بری[۱۰]

منابع

[۱] https://www.kb.cert.org/vuls/id/918987

[۲] https://www.bluetooth.com/security/statement-key-negotiation-of-bluetooth

[۳] https://www.usenix.org/system/files/sec19-antonioli.pdf

[۴] https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-9506

[۵] https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20190813-bluetooth

[۶] https://source.android.com/security/bulletin/2019-08-01

[۷] https://support.apple.com/en-in/HT210348

[۸] https://support.apple.com/en-gb/HT210346

[۹] https://support.apple.com/en-us/HT210353

[۱۰] http://support.blackberry.com/kb/articleDetail?articleNumber=000057251

[۱۱] https://thehackernews.com/2019/08/bluetooth-knob-vulnerability.html


(۱) Key Negotiation of Bluetooth
(۲) Basic Rate/Enhanced Data Rate
(۳) bytes/octets
(۴) negotiation
(۵) Link Manager Protocol