محققای امنیتی Blackwing Intelligence تونستن ویژگی احراز هویت Windows Hello رو در لپ تاپ های Dell Inspiron و Lenovo ThinkPad و Microsoft Surface Pro X دور بزنن.
Windows Hello یه ویژگی امنیتی برای احرازهویت هستش که در اون شما بجای اینکه برای لاگین کردن از پسورد استفاده کنید، از ویژگی های بیومتریک مانند اثر انگشت استفاده میکنید. البته برای اینکه بتونید از این ویژگی استفاده کنید باید دستگاهتون مجهز به اسکنر اثرانگشت یا دوربین های خاصی باشه که بتونه مثلا اثرانگشت رو اسکن کنه.
این تحقیق توسط Microsoft’s Offensive Research and Security Engineering (MORSE) حمایت شده و در کنفرانس BlueHat Oct 23 با عنوان A Touch of Pwn: Attacking Windows Hello Fingerprint Authentication ارائه شده که میتونید از این لینک بهش دسترسی داشته باشید.
این محققا تونستن یسری آسیب پذیری در سه حسگر اثرانگشتی که اغلب برای احرازهویت اثرانگشت در Windows Hello استفاده میشه ، پیدا کردن. این سه حسگر عبارتند از ELAN ، Synaptics و Goodix که روی لپ تاپهای Microsoft Surface Pro X و Lenovo ThinkPad T14 و Dell Inspiron 15 استفاده میشن.
همه حسگرهای اثرانگشت ارزیابی شده ، حسگرهای Match-on-Chip (MoC) بودن که امکان تطبیق اثر انگشت بطور ایمن رو در تراشه فراهم میکنن. منظور از Match on Chip (MoC) هم اینه که اطلاعات بیومتریک روی یه تراشه و مموری دیگه ای ذخیره میشه که از سنسور خارج نمیشه و بنابراین امکان هک کردنش ،تقریبا غیرممکنه.
در این تحقیق اگرچه حسگرها از نوع MoC بودن و از انتشار مجدد داده های اثرانگشت ذخیره شده به میزبان (ویندوز) برای تطبیق جلوگیری میکنن، اما اونا مانع از ارتباط یه حسگر مخرب برای شبیه سازی ارتباط بین حسگر و میزبان نمیشن. این میتونه منجر به احرازهویت موفقیت آمیز یا انتشار مجدد ترافیک قبلی بین حسگر و میزبان بشه.
برای مقابله با اکسپلویت چنین آسیب پذیری هایی ، مایکروسافت یه پروتکل بنام Secure Device Connection Protocol (SDCP) توسعه داده که اطمینان حاصل میکنه که دستگاه اثرانگشت مورد اعتماد و سالم هستش و ورودی بین دستگاه اثر انگشت و میزبان در دستگاه هدف محافظت میشه.
با این حال ، محققا تونستن از طریق حملات مرد میانی ، man-in-the-middle (MiTM) ، با یه دستگاه خاصی که روی Raspberry Pi 4 توسعه دادن ، احرازهویت Windows Hello رو در هر سه لپ تاپ دور بزنن.
در این فرایند از مهندسی معکوس نرم افزار و سخت افزار استفاده کردن، پیاده سازی رمزنگاری در پروتکل سفارشی TLS در حسگر Synaptics رو آنالیز کردن و تونستن پروتکل اختصاصی رو دیکد و دوباره پیاده سازیش کنن.
در لپ تاپهای Dell و Lenovo ، دور زدن احرازهویت از طریق شمارش (enumerating ) شناسه های معتبر و ثبت اثر انگشت مهاجم با استفاده از شناسه یک کاربر قانونی ویندوز فراهم شده . حسگر Synaptics از یک پشته TLS سفارشی بجای SDCP برای ایمن کردن ارتباطات USB استفاده میکنن.
در دستگاههای Surface که دارای حسگرهای ELAN هستن، از پروتکل SDCP استفاده نمیکنن و از ارتباطات USB بصورت cleartext و بدون احرازهویت استفاده میکنن. بنابراین محققا با جدا کردن Type Cover حاوی حسگر، حسگر اثرانگشت رو جعل کردن و پاسخ لاگین معتبر رو از دستگاه جعلی ارسال کردن.
محققا اعلام کردن که مایکروسافت کار خوبی در طراحی SDCP انجام داده ، تا یه کانال امن بین دستگاه میزبان و حسگر ایجاد کنه ، اما متاسفانه سازندگان توجه کافی به استفاده از اون نداشتن.
همچنین SDCP یه محدوده کمی از عملکرد یه دستگاه معمولی رو پوشش میده در حالیکه بیشتر دستگاهها سطح حمله قابل توجهی رو فراهم میکنن که اصلا توسط SDCP پوشش داده نمیشه.
محققای Blackwing Intelligence پس از اینکه متوجه شدن که SDCP حتی در دو مورد از سه لپتاپ مورد هدف فعال نشده بود، توصیه کردن سازندگانی که راهحلهای احراز هویت بیومتریک تولید میکنن، از فعال بودن SDCP مطمئن بشن، چون اگه فعال نباشه، به جلوگیری از حملات کمک نمیکنه.
مایکروسافت سه سال پیش اعلام کرده بود که تعداد کاربرانی که با استفاده از Windows Hello بجای استفاده از رمز عبور وارد دستگاههای ویندوز 10 خودشون میشن از 69.4 درصد در سال 2019 به 84.7 درصد رسیده .