最近世超看到了個消息:AI 識别驗證碼,現在比人都快了。不僅快,準确率還吊打人類。
這不,前段時間加州大學艾爾文分校就甩出了一份論文,裏面的研究數據是啪啪打驗證系統的臉。
簡單來說,他們把市面上所有類型的驗證碼,點擊類的,拖拽旋轉類的,圖片選擇類的等等等等,都搜羅了過來,分别讓 AI 和測試者做了個遍。
其中,最簡單的點擊識别, AI 直接 1.4 秒就能過,還百分百準确度,而人類不但要得花 3~4 秒,竟然有一兩成的人過不了。
到拉大難度的圖片驗證, AI 雖然在速度上稍有下降,但起碼還保持在人類的平均水平裏,準确度也和人類相當。
讓我選紅綠燈,這杆子我是真不知道該不該選
測試結果大家也都看到了,看這AI 幾乎門門兒接近百分百的準确率,速度也普遍比人快,說誇張點已經是吊打人類的程度了。
反正論文提交後,這個項目的主任 Gene Tsudik 直接給驗證碼戴了個 " 氣數已盡 " 的帽子。
還有一些媒體甚至打出 " 暴擊人類 " 、 " 驗證碼失效 " 、 " 驗證碼被攻破 " 之類的标題。
連馬斯克都出來發文稱,過去的驗證機器人全失效了。
最近,也有不少朋友反映登個 X ( 原 twitter )要三四個驗證碼,估計也是這個緣故。
啊這這。。。驗證碼難道真就這麽被AI 錘爆了??
講真,一開始看到這消息的時候,我心裏也是驚了一下。
于是,我們立馬找到在國内外都頗具影響力的驗證碼頭部企業極驗聊了聊,想聽聽他們的評價。
結果他們告訴差評,别太擔心,類似的事情他們身經百戰見得多了。
雖然AI 确實越來越強了,但在日常生活中,最新的驗證系統還是能夠能攔截一大波機器人的。
其實很多人可能也都知道,驗證碼的攻和防是個博弈的過程。
黑客那邊的攻擊手段不斷升級,不代表驗證系統這裏就無動于衷。
就比如初期 AI 模型還沒出現的時候,黑客那邊破解驗證碼就是靠窮舉法。
前期黑客會通過特定算法去攻擊網站界面,用來獲取這個網站的所有驗證碼圖像。
黑客頻繁向頁面發送請求
在得到這些圖像後,就該對它們進行标注了,也就是讓人類給出标準答案。
但用當地的人工标注,總歸是一筆不小的費用,于是黑客就把這些任務外包出去,就是我們常說的打碼工。
像東南亞、拉美、非洲那些地區,單價基本在一分錢一張。
折下來,黑客 10 天就能搞掉一個 30 萬張的圖庫,并且成本還能控制在四五百。
這樣搞好之後,黑客就有了自己的一個驗證碼數據庫。
破解的時候,就是簡單的查答案、寫答案過程。
當然,驗證系統也得防守。
前面提到既然你機器人搞數據庫來破解,那我驗證平台就定期更新數據庫,并且每次更新數萬張。
直接用成本搞垮你。。。
目前,國内普遍的驗證平台已經差不多可以做到一周更新一次的頻率,最快的都能到 1 小時更新一次。
這個更新頻率,換天王老子來也遠遠吃不消。
然鵝轉折又到了,這幾年來, AI 迎來井噴期。
從自然語言處理,到計算機視覺,那研究成果是一個接着一個。
在驗證碼這塊兒,類似開頭 AI 破解速度超過人類的消息也是不斷傳出。
驗證系統也在不斷上強度。
可能系統一波小更新,就能讓上面的 AI 失效。而極驗的朋友就告訴差評,前面論文所談及的驗證碼的 AI 識别率,其實都不說是小更新,是它們幾年前沒有銷售的上一代産品了。
目前大家也在針對 AI 做驗證系統。
打蛇打七寸,防AI 當然也得從它的軟肋下手。
一旦我們摸清了 CV ( 計算機視覺 )領域的主要模型的原理,它的軟肋就是手拿把掐的事。
這些圖片識别的 AI 一大缺點就是會像人類一樣産生視覺誤差。
比如下面這張圖,世超也是辨認了好久才認出這是一個人和狗的錯位照。
目前圖像識别主流的方法就兩種,一種靠分類識别,另一種靠相似度識别。
比如對抗分類模型,系統直接把驗證碼圖中的一些物體粗暴地替換成 AI 不容易分類的,這樣一來它識别物體的準确率自然就降下來了,主打一個繞道走。
相似度模型的話,則是通過提前模糊掉物體的标志性特點,讓 AI 識别不出來。
就比如下面花環中的字符,直接用工具對字符輪廓做一些幹擾處理。
除了找軟肋,我們還可以換個角度看,AI 破解驗證碼,他背後也是人在控制,用什麽模型,投喂什麽數據也都是可以操控的事。
既然黑客能用 AI 做工具,那驗證系統也能用 AI 來防禦。
也就是說,讓 AI 破解 AI 生成的驗證圖片。最典型的就是 AIGC 的一些應用了。
前不久那個把字融到建築上的照片很火,就可以試着把這樣的照片丢給 AI 看它能不能認出來。
極驗告訴差評,就目前 AI 破解的水準,這種圖它們暫時還拿捏不住。
甚至有網友想出了個損招兒:AI 出了名的弱點不就是手嘛,那讓它猜猜下面哪個是真正的人手?
你覺得這道題 AI 能解出來嗎?
用極驗朋友的話來說,現在驗證碼已經正式迎來了 " 用魔法打敗魔法 " 的時代。
可能還會有朋友擔心,萬一 AI 真的能繞過驗證碼,那該怎麽辦?
大可放心,就算機器人突破了,驗證系統還有另外一道隐形的防線。
不妨設想一下,一般哪種情況下黑客才會用機器人破解驗證碼?
設置驗證碼的場景無非是在一些軟件注冊、登錄界面,或者投票、搶票網頁等等。
黑客破解驗證碼要麽是爲了惡意爬蟲獲取信息,要麽就是搶票、刷票。
但在這樣的場景下它們都有一些共性,要數次訪問網站或軟件頁面。
這時,隐形攔截就會出手。
除了我們能看到的這些數字圖片驗證碼之外,在用戶操作的過程中,驗證系統也會對操作環境進行判别。
這些環境就包括你用的啥設備,浏覽器環境比如 IP 地址,訪問次數如何,甚至你的鼠标操作軌迹是怎樣的。
就拿浏覽器環境來說,正常人肯定不會快速頻繁地去刷新登錄一個網頁。
黑客們就不一定了,頻繁訪問頁面是他們必須要做的。
舉個例子,如果黑客要攻擊的是下面這種驗證碼,讓你依次點漢字。
在短時間内,他們肯定會訪問成千上萬次網頁,遇到同樣的驗證題目不可避免。
照他們這樣每次都點同樣的位置,系統再不判定是機器人就真有點說不過去了。
但這畢竟是隐形門檻,并且還得累積到一定程度上才能識别出機器人,所以系統關鍵還是要做好前面提到的驗證碼識别。
總結下來,這場驗證系統與黑客之間的攻防戰不會停歇,沒有一勞永逸的方法, AI 出現隻不過在技術層面上拉高了這場 " 戰争 " 的 level 。
更重要的是,至少在短時間内,驗證碼不會消失,也不會失效。