《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 對React Native 生物識別庫的安全性分析研究

對React Native 生物識別庫的安全性分析研究

2021-06-03
來源: 嘶吼專業版
關鍵詞: 生物識別庫 安全性

  0x01 基礎概述

  許多應用程序要求用戶在訪問任何內容之前先在應用程序內部進行身份驗證。根據其中包含的信息的敏感性,應用程序通常有兩種方法:

  · 用戶進行一次身份驗證,然后保持身份驗證,直到他們手動注銷為止;

  · 用戶保持登錄狀態的時間不會太長,并且在一段時間不活動后必須重新進行身份驗證。

  第一種策略雖然對用戶非常方便,但顯然不是很安全。第二種方法相當安全,但是對用戶來說卻是一個負擔,因為他們每次都必須輸入其憑據。實施生物特征認證可以減輕這種負擔,因為認證方法對用戶而言變得相當容易和快速。

  開發人員通常不會從頭開始編寫與操作系統的集成,而通常會使用框架或第三方提供的庫。當使用跨平臺的移動應用程序框架(例如Flutter,Xamarin或React Native)時,尤其如此,其中需要在特定于平臺的代碼中實現此類集成。由于身份驗證是一項對安全性至關重要的功能,因此重要的是驗證這些第三方庫是否已安全地實現了所需的功能。

  在此博客文章中,我們將首先看一下生物特征認證的基本概念,以便我們隨后可以研究提供生物特征認證支持的多個React Native庫的安全性。

  我們分析了五個提供生物特征認證的React Native庫。對于這些庫中的每一個,我們分析了生物識別認證的實現方式以及它是否正確使用操作系統提供的加密原語來保護敏感數據。

  我們的分析表明,五個分析的庫中只有一個提供了基于結果的安全生物特征認證。其他庫僅提供基于事件的身份驗證,這是不安全的,因為僅對生物特征認證進行驗證,而實際上并未以密碼方式保護任何數據。

  0x02 生物特征識別

  生物特征認證允許用戶使用其生物特征數據(指紋或面部識別)對應用進行認證。通常,可以通過兩種不同的方式來實現生物特征認證:

  · 基于事件:生物統計API僅將身份驗證嘗試的結果返回給應用程序(“成功”或“失敗”),這種方法被認為是不安全的;

  · 基于結果:身份驗證成功后,生物統計API會檢索一些加密對象(例如解密密鑰)并將其返回給應用程序。失敗時,不會返回任何加密對象。

  基于事件的身份驗證是不安全的,因為它僅包含返回的布爾值(或類似值)。因此,可以使用代碼工具(例如Frida)通過修改返回值或手動觸發成功流程來繞過它。如果實現是基于事件的,則還意味著敏感信息以不安全的方式存儲在某處:在應用程序從生物識別API接收到“成功”之后,它仍將需要使用一些身份驗證向后端進行用戶身份驗證。一種憑證,將從本地存儲中檢索,無需解密密鑰即可完成此操作,否則,實現將不是基于事件的,這意味著憑據無需適當加密即可存儲在本地存儲中的某個位置。

  另一方面,良好的基于結果的生物特征認證將無法通過Frida之類的工具來繞過。要實現基于結果的安全生物特征認證,應用程序必須使用硬件支持的生物特征API。

  存儲憑證

  盡管我們在此文章中使用“憑證”一詞,但我們并不主張存儲用戶的憑證(即用戶名和密碼)。無論用戶的憑據存儲方式如何,將其存儲在設備上對于高安全性應用程序從來都不是一個好主意。相反,上述“憑證”應該是專用于生物認證的憑證(例如高熵字符串),這些憑證是在生物認證的激活期間生成的。

  要在Android上實施基于結果的安全生物身份驗證,必須生成需要用戶身份驗證的加密密鑰。這可以通過使用setUserAuthenticationRequired生成密鑰時的方法來實現。每當應用程序嘗試訪問密鑰時,Android將確保提供有效的生物識別信息。然后必須使用密鑰來執行加密操作,從而解鎖憑據,然后可以將憑據發送到后端。這是通過向CryptoObject生物識別API提供以上一個密鑰開頭的來完成的。例如,BiometricPrompt類提供了一個authenticate方法,該方法采用CryptoObject作為一個論點。然后,可以通過result參數在成功回調方法中獲得對該鍵的引用。可以在f-secure的這篇非常不錯的博客文章中找到有關在Android上實現安全生物特征認證的更多信息。

  在iOS上,必須生成一個加密密鑰并將其存儲在key串中。key串中的條目必須設置有訪問控制標志biometryAny。然后必須使用密鑰執行加密操作,以解鎖可發送到后端的憑據。通過向key串查詢受密鑰保護的biometryAnyiOS,iOS將確保用戶使用其生物識別數據解鎖所需的key?;蛘?,我們可以將憑據本身直接存儲在biometryAny保護下,而不是將密碼密鑰存儲在“key串”中。

  指紋認證

  Android和iOS允許你信任“設備上已注冊的所有指紋”或“設備上當前已注冊的所有指紋”。在后一種情況下,如果添加或刪除了指紋,則加密對象將無法使用。對于Android,默認值為“所有指紋”,而在將指紋添加到設備的情況下,你可以使用setInvalidatedByBiometricEnrollment刪除CryptoObject。對于iOS,可以在biometryAny和biometryCurrentSet之間進行選擇。雖然“當前已注冊”選項是最安全的,但在本文中,我們不會對這種區別給予重視。

  基于事件的身份驗證真的不安全嗎?是的。這完全取決于你的移動應用程序的威脅模型。應用程序提供基于結果的身份驗證的要求是OWASP MASVS(MSTG-AUTH-8)中的2級要求。級別2表示你的應用程序正在處理敏感信息,通常用于金融,醫療或政府部門的應用程序。

微信圖片_20210603104329.jpg

OWASP MASVS驗證級別

  如果你的應用程序使用基于事件的生物特征認證,則將發生特定的攻擊,這些攻擊將使用戶的憑據可供攻擊者使用:

  · 使用取證軟件進行物理提取

  · 從備份文件中提取數據(例如iTunes備份或adb備份)

  · 具有root權限訪問設備的惡意軟件

  最后一個示例也將能夠攻擊使用基于結果的生物特征認證的應用程序,因為有可能在憑據已在內存中解密后立即注入到應用程序中,但這種攻擊的門檻比只需復制應用程序的本地存儲。




電子技術圖片.png


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美成年人网| 国产日韩欧美精品综合| 欧美一区二区三区在线看| 亚洲精品国产欧美| 翔田千里一区二区| 亚洲五月婷婷| 一区二区三区高清在线| 亚洲三级免费观看| 91久久一区二区| 亚洲人成免费| 亚洲欧洲精品一区二区精品久久久| 精品电影在线观看| 黄色国产精品| 永久免费毛片在线播放不卡| 黄色成人av网站| 精品999网站| 伊人久久大香线蕉av超碰演员| 亚洲国产黄色| 国产免费成人av| 久久久久久久网站| 久久久久久电影| 久久久视频精品| 麻豆av一区二区三区| 老色批av在线精品| 你懂的一区二区| 欧美激情精品久久久久久久变态 | 免费亚洲网站| 欧美风情在线| 欧美精品一区在线播放| 欧美日本不卡高清| 欧美亚州一区二区三区 | 亚洲激情婷婷| 亚洲靠逼com| 在线天堂一区av电影| 亚洲一区二区三| 欧美一级视频一区二区| 亚洲国产小视频| 一区二区日韩欧美| 性久久久久久久| 久久亚洲一区| 欧美国产欧美综合 | 欧美在线免费| 亚洲国产一二三| 一区二区三区欧美亚洲| 亚洲欧美日韩久久精品| 久久激情视频久久| 免费成人黄色片| 欧美三级乱码| 国产一区二区黄色| 亚洲国产一区二区视频| 9l视频自拍蝌蚪9l视频成人| 亚洲自拍偷拍福利| 亚洲第一天堂av| 99这里只有精品| 欧美一区视频在线| 欧美成人免费va影院高清| 欧美色播在线播放| 国产在线观看91精品一区| 亚洲国产精品电影| 亚洲新中文字幕| 亚洲国产日韩欧美一区二区三区| 在线视频精品一区| 久久精品国产精品亚洲精品| 欧美区一区二区三区| 国产日韩欧美不卡| 日韩午夜剧场| 亚洲国产精品第一区二区三区| 亚洲桃色在线一区| 久久人人97超碰国产公开结果| 欧美日韩中文字幕精品| 激情丁香综合| 亚洲一区二区三区国产| 亚洲欧洲在线看| 久久激情五月激情| 欧美日韩国产在线| 在线播放日韩欧美| 亚洲欧美日韩国产中文在线| 日韩亚洲欧美一区| 久久夜色精品亚洲噜噜国产mv| 欧美性视频网站| 亚洲二区在线| 午夜精品婷婷| 亚洲小视频在线观看| 欧美77777| 黄色成人免费观看| 亚洲欧美成人网| 99热免费精品在线观看| 久久中文在线| 国产毛片精品国产一区二区三区| 亚洲日本va在线观看| 亚洲国产毛片完整版| 久久久精品999| 国产精品日产欧美久久久久| 亚洲精品中文字幕有码专区| 亚洲三级免费观看| 久久综合给合| 国产亚洲午夜高清国产拍精品| 中文日韩电影网站| 一区二区日韩| 欧美日韩国产综合久久| 亚洲国产日韩欧美在线动漫| 久久av在线看| 久久国产精品电影| 国产精品青草久久久久福利99| 亚洲精品欧美在线| 亚洲欧洲日韩女同| 久久久欧美精品| 国产一区二区三区奇米久涩| 午夜精品久久久久久99热软件| 亚洲欧美国产精品桃花| 国产精品成人观看视频国产奇米| 亚洲精品字幕| 亚洲视频碰碰| 欧美三级日本三级少妇99| 日韩网站在线观看| 亚洲天堂免费在线观看视频| 欧美日韩国产专区| 一本色道久久综合狠狠躁篇的优点| 一区二区三区av| 欧美日韩另类视频| 9久re热视频在线精品| 亚洲小视频在线观看| 国产精品久久久久9999高清| 在线综合+亚洲+欧美中文字幕| 国产精品99久久久久久www| 欧美日韩国产黄| 99国产精品久久久久久久久久| 亚洲最快最全在线视频| 欧美日韩国内| 一本久久a久久免费精品不卡 | 制服丝袜激情欧洲亚洲| 欧美日韩一区二区欧美激情| 9l国产精品久久久久麻豆| 亚洲一区二区三区视频播放| 国产精品qvod| 亚洲专区在线| 久久久噜噜噜久久人人看| 影音先锋中文字幕一区| 亚洲狼人精品一区二区三区| 欧美日韩中文字幕| 亚洲一区bb| 久久精品亚洲热| 伊人色综合久久天天| 亚洲人成在线免费观看| 欧美精品一区二区三区很污很色的| 亚洲日本免费| 亚洲欧美视频在线观看| 国产综合网站| 日韩视频一区二区三区在线播放免费观看 | 亚洲精品男同| 欧美视频第二页| 亚洲自拍高清| 久久综合伊人| 亚洲日本欧美日韩高观看| 亚洲在线视频网站| 国产精品永久免费观看| 欧美在线地址| 欧美精品在线一区二区三区| 亚洲小视频在线| 美女脱光内衣内裤视频久久网站| 亚洲日本一区二区三区| 欧美亚洲色图校园春色| 在线观看欧美日韩国产| 在线一区二区三区四区| 国产乱码精品一区二区三区忘忧草 | 国产精品萝li| 亚洲国产精品www| 欧美日韩国产三区| 午夜精品久久久久久| 欧美刺激性大交免费视频| 一区二区三区欧美在线观看| 久久精品国产99| 亚洲日本激情| 久久精品成人| 亚洲欧洲另类国产综合| 欧美亚洲色图校园春色| 亚洲高清av在线| 性久久久久久久久久久久| 亚洲大片在线观看| 亚洲欧美99| 在线观看免费视频综合| 午夜国产精品视频| 亚洲福利久久| 欧美一级午夜免费电影| 亚洲精品乱码久久久久久日本蜜臀 | 91久久国产综合久久91精品网站| 亚洲在线视频一区| 亚洲国产精品成人精品| 久久成人免费日本黄色| 亚洲精品一区在线观看香蕉| 久久久久久久综合狠狠综合| 亚洲网站在线| 欧美激情亚洲自拍| 欧美一区二区免费| 国产精品成人在线观看| 亚洲黄色性网站| 国产一区二区精品| 亚洲欧美日韩高清| 亚洲美女视频在线免费观看| 久久夜色撩人精品|