谷歌最新驗證系統又雙叒被「破解」了,這次是強化學習

2020-12-12 騰訊網

機器之心報導

機器之心編輯部

自推出以來,谷歌的 reCaptcha 驗證系統就被頻繁破解,因此谷歌不得不一次又一次地迭代升級。現在,reCaptcha 已經升級到了 v3,由原來的用戶交互直接升級成了給用戶打分。但再強的系統也會有漏洞,來自加拿大和法國的研究者另闢蹊徑,用強化學習「破解」了這個最新的驗證系統。

谷歌的 reCAPTCHA 驗證系統

對於谷歌瀏覽器的用戶來說,上面這幅畫面想必並不陌生。這是谷歌開發的驗證碼系統 reCaptcha,旨在確認訪問者是人還是程序,並防止惡意程序的入侵。

reCAPTCHA 項目是由卡內基梅隆大學創建的系統,於 2009 年 9 月被谷歌收購。reCAPTCHA v1 將從書本上掃描下來、無法被 OCR 準確識別的文字顯示在 CAPTCHA 問題中,從而判斷訪問者到底是程序還是人類。該版本被 Bursztein 等人破解,他們使用基於機器學習的系統對文本進行分割和識別,準確率達 98%。

為了反破解,谷歌引入了基於音頻和圖像的 reCAPTCHA v2。該系統使用了一些高級的分析工具來判斷一個用戶到底是人還是機器人。

他們使用了多種元素,包括 cookie、解題的速度、滑鼠的移動以及解題的成功率。但儘管如此,還是有研究人員宣稱自己破解了 ReCAPTCHA,其中比較有名的就是美國馬裡蘭大學四位研究人員開發的 unCapture。

用 unCaptcha 攻破 reCAPTCHA

unCaptcha 項目最早創建於 2017 年 4 月,並在當時實現了 85% 的 ReCaptcha 對抗率。後來,谷歌發布了新的 ReCaptcha,實現了更好的瀏覽器自動檢測,而且開始使用短語語音進行驗證。這些改進最開始成功地防禦了第一版 unCaptcha 的攻擊,但這一改進版很快又被第二版 unCaptcha 破解了。

由於 ReCaptcha 添加了語音形式的驗證碼識別,破解 ReCaptcha 變得比以前更加容易。破解者表示,「因為我們只需要調用一個免費的語音識別 API,對所有驗證碼的識別準確率就能達到 90% 左右。」今年一月份,破解者還

開源

了 ReCaptcha 的破解代碼。

用強化學習「攻破」reCAPTCHA v3

當然,谷歌也沒有閒著,一直在迭代自己的驗證系統。2018 年 10 月,谷歌正式發布 reCAPTCHA v3。谷歌這次放出的大招是:移除所有用戶界面。

前兩個版本的 reCAPTCHA 有可利用的文本、圖像或音頻,可以將其用作訓練神經網絡的輸入。但 reCAPTCHA v3 移除了所有用戶界面,沒有拆開亂碼文本或街道標誌,甚至也沒有勾選「我不是機器人」的方框。

它會分析一系列信號,使用機器學習技術返回一個 0 到 1 之間的風險評估分數(這個分數表徵了用戶的可信任度,越接近 1 越有可能是人類)。與前兩個版本相比,這種打分完全是在後臺進行的,根本沒有人類交互,因此破解難度更大。

破解從哪兒入手?

這麼高難度的項目當然會引得各路「黑客」躍躍欲試。近日,來自法國和加拿大的研究人員聲稱自己破解了谷歌的 reCAPTCHA v3,並根據自己的研究成果發表了一篇名為《Hacking Google reCAPTCHA v3 using Reinforcement Learning》(使用強化學習破解谷歌的 reCAPTCHA v3)的論文。與之前研究的不同之處在於,他們使用的是強化學習方法,測試準確率達到了 97.4%。

實際上,這項強化學習技術並非針對 reCAPTCHA v3 中不可見的分數,而是 reCAPTCHA v2 中首次引入的滑鼠移動分析。也就是說,這項研究並非真正攻破 reCAPTCHA v3,而是用機器學習欺騙二級系統(即舊版的「我不是機器人」打勾操作),以繞過 reCAPTCHA v3。

等等,「我不是機器人」這種界面不是已經在 v3 中被移除了嗎?理論上是該這麼做,但在實際操作中並沒有。

論文一作 Akrout 表示,在 reCAPTCHA v3 中,網站設置其分數閾值以判定用戶是否為機器人。如果訪客在某個設定點低於閾值(比如當他們輸入評論或登錄細節時),網站可以選擇立即譴責該訪客是機器人,不過真這麼做的話,如果訪客是真人就會很尷尬了。

想像一下在網購的時候,你正在查看的頁面突然消失,隨之而來的是滿屏的「你是機器人」譴責。就問你糟不糟心?從用戶體驗的角度來看這種做法實在太……emmm…

因此,Akrout 表示,很多網站會選擇更友好地緩和這個過程。如果網站訪客低於分數閾值,網站會顯示舊版的「我不是機器人」複選框頁面,這個複選框用來發現機器人的分析行為,包括滑鼠移動等。

這樣可以讓用戶更好地理解為什麼他們的網購或其它正在幹的事會被打斷,而且會給他們一個證明自己人類身份的機會。

「我認識的大部分程式設計師會添加複選框,因為他們不知道如何選擇恰當的時機來詢問 v3 系統的判斷。」

正是這個複選框的存在讓 Akrout 和他的同事們發現了繞過 reCAPTCHA v3 的可能。

怎麼破解?

Akrout 及其同事利用強化學習來欺騙部分 reCAPTCHA v3 系統,其中軟體智能體試圖找到最佳的可能途徑,並通過正確方向上每一步的獎勵受到鼓勵。

他們的系統在頁面中放置一個正方形網格,滑鼠沿對角線穿過網格到達「我不是機器人」按鈕。如果成功,則給予正面強化;如果失敗,則給予負面強化。該系統學會了控制正確的移動方法以欺騙 reCAPTCHA 系統。該論文中稱其準確率達到了 97.4%。在論文發表後,谷歌未對該論文置評。

這樣破解真的可以嗎?

這種做法並沒有讓伯恩茅斯大學的 Nan Jiang 信服,他沒有參與這次研究。「理論上來說,任何僅依賴於檢查用戶行為的驗證碼方法都可以用定製的機器學習算法破解,比如那種可以輕易地模擬用戶在頁面上交互的算法。

但是,谷歌的 ReCAPTCHA 結合了其它技術來預測用戶的可信程度,然後嘗試把該用戶納入白名單。一旦你被納入白名單,無論你做什麼都可以通過測試。」他表示。

破解 reCAPTCHA 版本 2 的伊利諾伊大學計算機科學助理教授 Jason Polakis 指出,reCAPTCHA 版本 3 的工作要比論文中描述的更多。

他說道:「本文試圖展示的攻擊僅僅是從頁面中的隨機起點移至複選框。這是用戶在實踐中與實際頁面產生交互的非常具體和有限的子集(如填寫表格、與多頁面元素交互以及跨越更複雜模式等)。」

他還補充:「如果谷歌也已經改善瀏覽器/設備指紋等更先進技術的利用(我們在進行廣泛深入分析和破解 ReCaptcha 版本 2 時已經發現了這些跡象),實際上展開攻擊將會變得更為複雜。」

Akrout 同意基於滑鼠移動的攻擊存在局限,但這些也揭露了一點關於 reCAPTCHA 版本 3 工作的信息。他表示,「如果你通過一個常規 IP 連接谷歌帳戶,則系統大部分時間都會認為你是人類。」如果你通過 TOR 或者代理伺服器連接谷歌帳戶,則系統通常會認為你是機器人。

如果測試的網站已經具有這種默認設置,了解這些則更容易迫使 reCAPTCHA 系統顯示「我不是機器人」按鈕。

Akrout 表示攻擊需要對谷歌表現出中立性—所以沒有登錄帳戶,也沒有通過代理伺服器或使用 Selenium 等瀏覽器控制工具進入。他說道:「這就好像是我在要求該系統直接進入第二個頁面,其目的僅是為了獲得大量移動檢測。」

Akrout 認為谷歌可以通過這項技術(特別是根據用戶點擊按鈕花費的時間),使用更簡單的方法來保護 reCAPTCHA。Akrout 表示,「該智能體點擊複選框花費的時間比人類更多。在沒有任何交互的情況下,任何用戶通常都不會影響 reCaptcha 在後臺的工作。」

肯特大學的網絡安全教授 Shujun Li 先前已經設計了自己用於破解 reCAPTCHA 早期版本的系統,但並沒有參與這個項目。他表示這項工作從技術層面看似可行,但也認為谷歌可輕易更新其系統以避免此類攻擊。

他說道:「尚未清楚的是,該攻擊方法被重新訓練至何種程度才能趕上谷歌系統。可能更加穩健的一種方法是收集真正人類用戶對 reCAPTCHA 的響應,並構建機器學習模型來模擬此類響應。這些模型很容易被重複訓練,而且能夠保證有用,除非 reCAPTCHA 對常規人類用戶不可用。」

Li 表示破解這些系統的確還有很多其他方法。雖然這種特定攻擊受到限制,但 reCAPTCHA 將繼續淪為人工智慧系統犧牲品的事實並不意外。

Li 表示:「破解驗證碼並不是什麼新聞了。最近的 AI 進展已經大大提高了自動攻擊的成功率。原則上,驗證碼技術已證明無法抵制先進的攻擊。」本文的研究或許無法破解第 3 版 reCAPTCHA,但這是一個開始。

論文:Hacking Google reCAPTCHA v3 using Reinforcement Learning

論文連結:https://arxiv.org/pdf/1903.01003.pdf

摘要:本文提出了一種可以欺騙谷歌 reCAPTCHA v3 的強化學習方法。我們將 reCAPTCHA v3 視為一個網格世界,智能體在這個世界裡學習如何移動滑鼠並點擊 reCAPTCHA 按鈕獲得高分。

我們研究了在改變網格中格子大小時智能體的性能,結果顯示,當智能體向目標大步前進時,其性能會大大降低。最後,我們用了一個分治策略來應對任意網格解析度,以攻破 reCAPTCHA 系統。我們提出的方法在 100 × 100 的網格中實現了 97.4% 的勝率,在 1000 × 1000 的屏幕解析度上實現了 96.7% 的勝率。

實驗結果

研究人員在一個特定尺寸的網格上訓練了一個強化學習智能體。他們的方法是將訓練得到的策略用於在 reCAPTCHA 環境中選擇最佳行動。實驗結果是在訓練 1000 輪之後得到的。

如果智能體得到 0.9 分,他們就認為該智能體成功攻破了 reCAPTCHA。策略網絡是一個全新的雙層全連接層網絡。參數是以 10^(-3) 的學習率訓練得到的,批大小為 2000。

下圖顯示了智能體在 100 × 100 的網格上得到的結果。該方法以 97.4% 的勝率成功攻破了 reCAPTCHA 測試。

接下來考慮在更大的網格上測試該方法。如果增加網格的大小,狀態空間的維數就會指數級增加,在這種情況下訓練強化算法並不可行。這是本研究解決的另一個難題:如果不為每個解析度的網格重新訓練智能體,該如何攻破 reCAPTCHA 系統?

為此,研究人員提出了一種分治方法,可以攻破任意網格大小的 reCAPTCHA 系統而無需重新訓練強化學習智能體。中心思想是將網格進一步切分為子網格,然後將訓練得到的智能體應用到這些子網格上,以為更大的屏幕尋找最優策略(見圖 2)。圖 3 顯示了該方法的有效性,在不同大小的網格上勝率超過了 90%。

圖 2:分治方法圖示:智能體在紫色的對角網格世界上運行。紅色網格世界還沒有被探索。

圖 3:強化學習智能體在不同網格解析度上的勝率。

參考連結:https://www.wired.co.uk/article/google-captcha-recaptcha

本文為機器之心報導,轉載請聯繫本公眾號獲得授權。

------------------------------------------------

相關焦點

  • 昨晚的谷歌全球宕機事件,竟然是磁碟寫滿導致?
    文章轉自:戴爾易安信解決方案微信公眾號  北京時間昨晚7:30分左右,谷歌又雙叒遭遇了癱瘓事件,而且這次影響還不小,旗下Gmail郵箱,谷歌日曆、視頻網站YouTube等服務在全球都受到了影響。  至於為什麼說又雙叒,因為這已經是近5個月以來,谷歌的第3次宕機大規模事件(SRE年終獎不保...)。
  • 谷歌Gorila強化學習體系解析
    David Silver是谷歌DeepMind強化學習團隊的主管,Arun Nair來自Deepmind應用團隊,演講的主題是谷歌強化學習體系Gorila,分別從學術研究和實際應用的角度來解析。總的來說,在前饋監督學習和無監督強化學習方面,Gorila是Jeff Dean等人開發的著名的DistBelief的一般化。什麼是強化學習?從ML(機器學習)的角度來看,強化學習(Reinforcement Learning)比監督式學習有某些更優秀的特點,但也很難成功地實現它。
  • 又雙叒叕更新:聊天顯示拼音,家長可管控!
    又雙叒叕更新:聊天顯示拼音,家長可管控!因為學習不能輕易被打擾。QQ看點僅推送學習內容開啟青少年模式後,QQ看點僅進行學習類相關內容推薦。「簡訊驗證鎖」默認關閉,打開後,進入高級設置以及退出青少年模式均需要手機簡訊驗證。在「高級設置」中,可設置不被陌生人搜索/拉進群聊/找到好友。不僅可以減少陌生網友的打擾,保護隱私,還能讓家長對孩子的學習,更放心!
  • Pixel 4發布(谷歌相機)!所有國產雙攝手機的福音!
    眾所周知,安卓系統是由谷歌公司開發的。所以谷歌的Pixel系列手機有著最原生態的安卓系統,Pixel手機在系統交互性和谷歌相機算法的變化,一直以來都被定為是安卓智慧型手機的一個風向標。近日,谷歌終於發布它們今年的新款手機——Pixel 4系列。
  • 他又雙叒叕獲獎了!這次是全國一等獎!
    開放雙語實驗學校有這麼一位同學,他熱愛學習、喜歡鑽研,積極參加了各種數字、電子等比賽活動,並取得優異成績。
  • 谷歌帳號註冊驗證手機號不能驗證怎麼辦?為什麼要驗證你的帳號?
    此電話號碼無法用於進行驗證為什麼會出現驗證你的帳號?註冊帳號的時候沒問題,接收驗證碼也能接收到。但是註冊完第二天,或是偶爾那麼一次登陸需要驗證,然後輸入自己的手機號碼,更換手機號,換數據網絡,行動網路。一頓操作下來也還是驗證不過去。明明都註冊能登陸了,今天就給大家解釋解釋:google為了保護您帳號免遭濫用行為侵擾,比如說被是不是被人機打小廣告了,或是被批量使用發送垃圾郵件了等等。
  • Hello語音又雙叒聯動DNF了?這次的福利活動簡直不要太給力
    Hello語音又雙叒聯動DNF了?這次的福利活動簡直不要太給力作為資深的DNF老玩家,氪金是不可能氪金的啦,只能在遊戲當中當個鹹魚找大佬帶,然後各種白嫖福利活動啦。這不,Hello語音最新一期和DNF的聯動活動又被我發現了,在6月22日到7月1日,一場名為Hello語音夏日狂歡的福利活動即將開啟。 在這次活動當中,有DNF神器裝扮、Hello公仔、Q幣等海量福利可以領取。每天登錄都能領好禮。
  • 谷歌發布ARCore新版本,強化「換臉」特效,小米華為部分機型支持
    近日Google發布了最新的ARCore 1.7版本,自從去年在MWC 2018期間釋出1.0版本以來,多次更迭。而這次在功能上做了不少改進。ARCore非常容易在谷歌自家Android系統的手機上應用,讓開發者能更輕易打造各類ARCore應用內容。不過目前只支持130多款智慧型手機和平板電腦,ARCore要求Android7.0 或更高版本,運行在搭載 Google 應用商店的設備上,所以ARCore普及還需一些時間。
  • 你又雙叒叕讀錯了,學習簡單字組成的生僻字
    中國文字由象形文字演化而來,其中有很多有趣的字,看上去是由生活中的常見字組成的,可是讀音缺十分不同,快來一起學習吧,不要再讀錯這些」簡單「的字了今天給大家帶來一些簡單字組成的生僻字,可不要再把槑槑讀成呆呆了呀!
  • 谷歌開源SEED RL強化學習框架,訓練成本降低多達80%
    智東西3月24日消息,美國當地時間3月23日,谷歌開源了一個名為SEED RL的強化學習(RL)框架,能夠將人工智慧(AI)模型訓練擴展到數千臺機器,有助於在一臺機器上以每秒數百萬幀的速度進行訓練,並將訓練成本降低多達
  • 「又雙叒叕」又出現了,火炎焱燚表示這次一定要知道怎麼讀
    又雙叒叕,讀音為yòu shuāng ruò zhuó,一個網絡詞語。今天,我終於知道怎麼讀了。大約在2012年12月,網絡上突然出現一個新詞,並迅速流行起來。據說是源於當時日本朝日新聞的一條微博:"我們又雙叒叕要換首相了。"這條微博無非是強調日本更換首相之頻繁,其重點就在一個「又」字上。那為什麼要用「又雙叒叕」這四個字呢,想當年,日本走馬燈似的六年時間換了七任首相,可能連日本人自己都覺得太多太快,一個「又」字實在不足以反映這一點,於是連用十個「又」字(這四個字是由十個「又」組成的)。沒想到一炮而紅,這個詞從此火了起來。
  • 蘋果新品發布前夕,iCloud又雙叒叕被黑了
    然而,這次「豔照門」事件的究竟是如何操作的,還不得而知。那麼,作為手機裡多少都會有兩張「豔照」的用戶,相比較黑客是如何入侵的,我們更關心的是如何能保住自己手機裡的「豔照」。1、在儘量選擇更私密的空間存儲你的「豔照」,避免在iCloud及公共雲存儲空間存儲這些私密文件,本著「不在一起就不會分手」的堅定念頭,從根本上杜絕問題。
  • 伯克利Fall2018最新CS294:深度強化學習課程
    【導讀】伯克利在秋季學期開設了《深度強化學習課程》,有6名老師和28節課程,是想學習強化學習的讀者不可錯過的一門課程。機器人會觀測視覺系統數據如何映射到機械臂的電機信號,從而正確地完成任務。此外,機器人還會監督自己的學習過程。
  • 最新!全球MBA商學院排名出爐,這個學校又雙叒叕是第一?!
    而墨爾本商學院 (MBS)毫無疑問又雙叒叕登上了澳洲榜首,排名世界第68位!圖/墨大商學院官網不僅在這次2021 MBA商學院排名中位列前茅之外,在其他QS的商科排名中,也都可以看到墨大的身影。澳驕妹去LinkedIn上查看了一番,發現除了留校之外,不少墨大校友都去了澳洲四大銀行、四大、谷歌、高盛等赫赫有名的世界500強。
  • 強化學習應用簡述
    谷歌Deepmind AlphaStar打敗了星際爭霸人類高手。Deepmind在一款多人搶旗遊戲(Catch the Flag)中達到了人類玩家水平。OpenAI Five打敗了人類刀塔(Dota)高手。OpenAI訓練了類人機器人手Dactyl, 用於靈活地操縱實物。谷歌人工智慧把強化學習用到數據中心製冷這樣一個實用系統。DeepMimic模擬人形機器人,掌握高難度的運動技能。
  • 中國又雙叒叕領先全球,科技成果打破技術壟斷,美國院士不得不服
    美國這麼著急的對華為,對中國進行打壓,有相關媒體報導,12月4日,《科學》發表了一篇中從研發出76個光子的量子計算原型機九章,並且打破了此前由谷歌量子計算機保持的53光量子的世界紀錄,實現了我國的量子霸權。這裡所說的量子霸權其實就是指量子計算的優越性,而只有計算能力超越經典架構的超級計算機才能夠被稱為是量子霸權。
  • 愛學仕智課又雙叒叕更新啦~讓孩子主動愛上學習,享受學習!
    愛學仕智課又雙叒叕更新啦!本次更新主要是針對一些小細節,讓孩子學習更方便,還增加了一些趣味性。讓小編帶大家了解一下新版本吧~版本迭代1、學生自主選課功能 該功能主要針對公校的學生,學生可以根據自己的需要,從課包中選擇自己想學的課程,不再只是依賴系統推送,幫助孩子真正做到主動學習
  • HTC又雙叒叕發布新機Exodus 1s,網友:9102年,這個配置來搞笑?
    對於HTC這個智慧型手機品牌我相信大家一定不會陌生,畢竟當時谷歌推出的第一款手機就是HTC的G1,當時這款手機的造型在那個年代是非常炫酷的。側換帶鍵盤的設計可以看作是從鍵盤向全觸屏的之間的過度設計,因為當時的觸屏手機還是個新鮮的玩意兒,畢竟蘋果用iPhone開啟的全觸屏時代還不成熟,而且安卓這個系統據說最早也是基於鍵盤設計的,後來是在看到iPhone大受歡迎之後,程式設計師才在系統上改回來的,這也就有了人們常說的系統底層架構問題,註定了iOS系統在流暢性上的優勢,因為它從一開始就是奔著觸控觸發,系統底層架構不用走「多」一步程序。
  • 谷歌重返中國市場 這次還會是「狼來了」的故事嗎?
    >本文內容來自ZAKER合作媒體看看新聞Google 又雙叒叕返回中國市場這次還會是 " 狼來了 " 的故事的嗎?畢竟從 8 年前谷歌因不滿監管政策而負氣退出中國市場開始,幾乎每年都會傳出回歸中國的消息。
  • 谷歌發布最新元學習框架「DVRL」,用強化學習量化模型中每個數據點...
    昨日,他們發表了一篇博客,詳細敘述了用強化學習評估訓練數據的影響。 你是否還在使用大規模數據集進行無腦訓練呢? 實際上,如果數據集包含低質量或標籤不正確的數據,通常可以通過刪除大量的訓練樣本來提高性能。