您的位置:首頁>科技>正文

人臉識別是紙老虎嗎?破解技術至少有五種

縱觀國內市場, 在2010年-2015年間, 我國人臉識別市場規模的平均複合增長率為15.9%, 同一時期, 我國市場規模約占全球人臉識別市場規模的10%。 相比較於我國人口及城市規模的占比, 雖然人臉識別市場的這個數值占比略微偏低, 但隨著我國人臉識別技術的越發先進, 我國人臉識別市場將迎來爆發。 但是2017年央視3·15晚會曝光人臉識別技術存在安全性漏洞, 在現場的測試中, 可以使用軟體後期修改人臉圖片進行臉部識別, 從而繞過網路實名認證系統。 這讓小編想到在此之前安全研究員在FIT互聯網安全創新大會上展示的5種方法破解手法。

一人, 一車, 一司機, 故事還得從一次“網約黑車”的經歷說起 。

“車到了, 可疑的是, 接我的司機、車的資訊, 與手機用戶端上顯示的完全不符, 但為了趕緊回家, 我顧不了太多便上了車, 結果司機開了不到一分鐘, 就回頭對我說:“我要取消訂單了, 等會兒你直接給我錢就行 ”, 在我的一再拒絕下, 司機說可以把我送回原處, 讓我重新打個計程車回去。 ”

“結果當我再次用該約車軟體打車, 發現來接我的居然還是那個司機!司機說:“你要麼就打個計程車回去, 只要你還用這個軟體約車, 打到的還是我的車!”當時我就納悶了, 為什麼還是你的車?why?”

“原來, 附近有個由30多個黑車司機組成的車隊, 每個司機都有一堆虛假的司機帳號,

上百個帳號由同一個人來統一接單, 然後通過電臺調度車輛去接人, 因此不管你打到哪個號, 都會調我去接人, 而且就算是別人去接你, 也是一樣的流程。 ”

“於是我感到奇怪, 這個 打車APP 上明明使用了人臉識別功能來驗證司機資訊, 為什麼這些司機可以繼續使用虛假帳號?經過一頓軟磨硬泡, 司機終於透露, 雖然人臉識別聽起來很牛逼, 但是他們有軟體可以輕易破解。 ”

“沒錯, 人臉識別技術就這麼被一群黑車師傅給黑了。 ”

以上故事是在 FIT 2017 互聯網安全創新大會上, 安全研究員高小廚(高亭宇)在一場“關於人臉識別技術應用風險”主題演講中的一段描述。 說完他便現場展示了那個司機用來破解人臉識別技術的軟體,

一個可以讓照片“張口說話”的APP。

請注意兩張照片的嘴部

高小廚說, 從那之後他開始琢磨人臉識別技術在實際應用層面的風險, 並調研了市面上使用了人臉識別技術的軟體, 最後的結果出乎自己的預料。

花式破解人臉識別技術

通過分析,

他發現市面上大部分使用了人臉識別技術的軟體, 其識別流程均大致如下:

檢測人臉 → 活體檢測 → 人臉對比(和之前上傳的自拍照或證件照)→ 分析對比結果 → 返回結果(通過或不通過)

據瞭解, 其中活體檢測技術即在人臉識別時要求用戶進行眨眼、點頭、張嘴等動作, 以防止靜態圖像破解, 國內多個知名APP中的人臉識別都採用了該項技術。

高小廚表示, 一般的APP開發者不會自己開發人臉識別技術, 而是通過協力廠商的API介面或SDK元件來獲得人臉識別功能, 基於這個特點, 他對人臉識別技術從接入到實際使用過程中的每個關鍵點進行了分析, 最終在多個環節都找到了多個突破點, 只要略施小計, 就能讓人臉識別形同虛設。

1.注入應用繞過活體檢測

高小廚首先在現場演示了通過注入應用的方式來篡改程式, 從而繞過所謂的活體檢測功能, 使用一張靜態照片就可以通過人臉識別。

在注入過程中, 他首先在程式中佈置一個了中斷點, 通過不斷演示人臉識別流程來觸發該中斷點, 然後分析並修改程式儲存的值, 來達到最終的繞過活體檢測的效果。

除了注入應用之外, 他還發現可以通過查看當前APP的資料結構, 修改入參字典來篡改活體檢測完成後的圖片, 從而達到活體檢測由任意一個人完成都可以通過的效果, 這樣他同樣可以拿著被攻擊者的照片來通過靜態人臉識別, 然後自己眨眼抬頭來破解活體檢測。

2.視頻攻擊繞過活體檢測

如果說前面的方法需要一些技術門檻,那這個方法就可以適用于所有小白用戶,只需要安裝一個能夠將人臉照片製作成視頻的手機軟體,然後在朋友圈、個人空間等地方找到對方的一張正面照片(這個應該不難),輸入到軟體中,就可以令其開口說話,所謂的活體檢測也就不攻自破。

文章開頭所說的黑車司機也正是用的這款軟體,實現了對APP人臉識別功能的破解。由此猜想,如果使用軟體合成的視頻即能夠破解人臉識別活體檢測,那麼任意一段清晰的正面視頻也應該可以用來嘗試破解,如果真如此,那些經常在網路上抛頭露面的明星、網紅、視頻直播,一旦使用人臉識別作為密碼,那就相當於把密碼寫在臉上了。

3. 三維建模繞過雲端檢測

高小廚注意到,除了點頭、眨眼,有些人臉識別還會要求用戶進行點頭、搖頭等動作,於是他立刻想到了使用3D建模,構建人臉模型的方式來破解。

4.臉部模具繞過雲端檢測

既然3D建模能成功繞過人臉識別,高小廚立刻想到了使用3D 列印來進行嘗試,結果卻出乎意料的失敗了,在分析了失敗原因時,他說:

通常人臉識別會分析臉部的多個特徵值,而有的人臉識別技術會在眉毛部位提取多個特徵點,而3D列印如果不夠精細,列印出來人臉一般會缺少眉部特徵。

如果3D列印模型只採用了一種材料,列印出來的人臉模型顏色會過於單一,比如材料是黃色的,眉毛也是黃色的,這會大大降低識別的成功率。如果3D列印使用的材料不合適,列印出來的模型的臉部細節會很粗糙,需要後期手工打磨。

雖然高小廚在現場沒有直說,但隱約能讀懂他話中的含義:“不是3D列印不行,而是我用的這台3D印表機太辣雞! 如果換一台更加精密的印表機,破解同樣不在話下。”

當他掏出自己用於測試的3D列印模型時,不得不承認這個模型有些慘不忍睹,確實如同高小廚所說,缺乏面部細節、顏色單一,比例似乎也不太對。

5.利用介面防護不當和各種奇葩的設計缺陷

高小廚發現,部分APP在使用上傳人臉圖像時,沒有對圖像資料進行簽名,導致圖片可以被工具截獲然後篡改,而有的則是在資料包文沒有加入時間戳記,可以通過重放資料包文的方式來實施破解。

在測試某一款應用時,他發現人臉識別的成功與否,是通過返回報文中的一個閾值來決定的,相當於考試中的“及格分數”,如果人臉匹配度超過該閾值就可以通過,不幸的是,該APP 沒有對這個返回報文加簽名,導致該報文可以被篡改,最終高小廚通過調低該閾值的方式破解了它的人臉識別。

APP風險初步調研

高小廚在現場展示了自己進行的APP風險調研的結果,他發現除了一般的考勤、帳號安全APP之外,大量的銀行、P2P 金融企業的 APP 已經介入使用了人臉識別技術,其中:金融行業在使用人臉識別技術時安全性明顯高於一般應用;當人臉識別技術涉及關鍵業務時,安全防護水準往往更高

比如他在測試國內某P2P金融的用戶端時,嘗試人臉識別解鎖失敗數次後,該APP 就檢測出了可能存在惡意破解的情況,強制使用銀行卡資訊、手機短信等其他方式來完成認證。

高小廚在現場強調了一點,除了人臉識別技術在手機上本身的應用缺陷之外,許多問題導致的原因都是開發者在調用協力廠商的人臉識別服務時,沒有嚴格按照一個安全的規範來做,接入流程不夠嚴謹,甚至經常出現為了提高用戶體驗而捨棄安全性的做法,這樣的做法在技術實力不強的小公司十分常見,最終導致的結果就是,讓使用者把密碼寫在了自己的臉上。

如果說前面的方法需要一些技術門檻,那這個方法就可以適用于所有小白用戶,只需要安裝一個能夠將人臉照片製作成視頻的手機軟體,然後在朋友圈、個人空間等地方找到對方的一張正面照片(這個應該不難),輸入到軟體中,就可以令其開口說話,所謂的活體檢測也就不攻自破。

文章開頭所說的黑車司機也正是用的這款軟體,實現了對APP人臉識別功能的破解。由此猜想,如果使用軟體合成的視頻即能夠破解人臉識別活體檢測,那麼任意一段清晰的正面視頻也應該可以用來嘗試破解,如果真如此,那些經常在網路上抛頭露面的明星、網紅、視頻直播,一旦使用人臉識別作為密碼,那就相當於把密碼寫在臉上了。

3. 三維建模繞過雲端檢測

高小廚注意到,除了點頭、眨眼,有些人臉識別還會要求用戶進行點頭、搖頭等動作,於是他立刻想到了使用3D建模,構建人臉模型的方式來破解。

4.臉部模具繞過雲端檢測

既然3D建模能成功繞過人臉識別,高小廚立刻想到了使用3D 列印來進行嘗試,結果卻出乎意料的失敗了,在分析了失敗原因時,他說:

通常人臉識別會分析臉部的多個特徵值,而有的人臉識別技術會在眉毛部位提取多個特徵點,而3D列印如果不夠精細,列印出來人臉一般會缺少眉部特徵。

如果3D列印模型只採用了一種材料,列印出來的人臉模型顏色會過於單一,比如材料是黃色的,眉毛也是黃色的,這會大大降低識別的成功率。如果3D列印使用的材料不合適,列印出來的模型的臉部細節會很粗糙,需要後期手工打磨。

雖然高小廚在現場沒有直說,但隱約能讀懂他話中的含義:“不是3D列印不行,而是我用的這台3D印表機太辣雞! 如果換一台更加精密的印表機,破解同樣不在話下。”

當他掏出自己用於測試的3D列印模型時,不得不承認這個模型有些慘不忍睹,確實如同高小廚所說,缺乏面部細節、顏色單一,比例似乎也不太對。

5.利用介面防護不當和各種奇葩的設計缺陷

高小廚發現,部分APP在使用上傳人臉圖像時,沒有對圖像資料進行簽名,導致圖片可以被工具截獲然後篡改,而有的則是在資料包文沒有加入時間戳記,可以通過重放資料包文的方式來實施破解。

在測試某一款應用時,他發現人臉識別的成功與否,是通過返回報文中的一個閾值來決定的,相當於考試中的“及格分數”,如果人臉匹配度超過該閾值就可以通過,不幸的是,該APP 沒有對這個返回報文加簽名,導致該報文可以被篡改,最終高小廚通過調低該閾值的方式破解了它的人臉識別。

APP風險初步調研

高小廚在現場展示了自己進行的APP風險調研的結果,他發現除了一般的考勤、帳號安全APP之外,大量的銀行、P2P 金融企業的 APP 已經介入使用了人臉識別技術,其中:金融行業在使用人臉識別技術時安全性明顯高於一般應用;當人臉識別技術涉及關鍵業務時,安全防護水準往往更高

比如他在測試國內某P2P金融的用戶端時,嘗試人臉識別解鎖失敗數次後,該APP 就檢測出了可能存在惡意破解的情況,強制使用銀行卡資訊、手機短信等其他方式來完成認證。

高小廚在現場強調了一點,除了人臉識別技術在手機上本身的應用缺陷之外,許多問題導致的原因都是開發者在調用協力廠商的人臉識別服務時,沒有嚴格按照一個安全的規範來做,接入流程不夠嚴謹,甚至經常出現為了提高用戶體驗而捨棄安全性的做法,這樣的做法在技術實力不強的小公司十分常見,最終導致的結果就是,讓使用者把密碼寫在了自己的臉上。

Next Article
喜欢就按个赞吧!!!
点击关闭提示