利用cookie和瀏覽器檢查的不嚴謹,再輔以一點兒人工智能,破解谷歌的驗證碼(Captcha)非常容易。
安全研究人員剛剛發(fā)現(xiàn),精心設(shè)計的自動化攻擊能夠以七成的概率破解谷歌的reCaptcha安全系統(tǒng)。需要注意的是,臉書也使用這一套驗證碼系統(tǒng)。
研究人員對2235個驗證碼進行了測試,破解了其中的70.1%,平均耗時僅為19.2秒。對臉書使用的驗證碼,研究人員取得了更大的成功,破解了200個驗證碼中的83.5%。
此外,研究人員估計,黑客具有部署專門破解驗證碼的系統(tǒng)的動機。這樣的一套自動化系統(tǒng)每天運行成本在110美元左右,每個IP地址運行一次,且能夠在24小時內(nèi)破解大約63000個驗證碼而不會被檢測或屏蔽掉。
來自紐約哥倫比亞大學計算機科學系的蘇漢妮·希瓦科恩(Suphannee Sivakorn)、埃索納斯·波拉基斯(Iasonas Polakis)和安杰洛·克洛米斯共同進行了這項研究。
在發(fā)布的論文《我是機器人:深度學習破解圖像語義驗證碼》(I Am Robot: (Deep) Learning to Break Semantic Image Captchas)中,研究人員介紹稱:“谷歌reCaptcha插件通過一系列瀏覽器檢查措施確定是否存在網(wǎng)頁自動化框架,以及瀏覽器是否存在異常行為。檢查措施包括校驗瀏覽器屬性格式,以及一些更加復雜的技巧,比如 Canvas 指紋跟蹤。”
然而,我們建立的系統(tǒng)會利用流行的瀏覽器自動化框架,成功通過檢查。此外,通過黑箱測試,我們發(fā)現(xiàn)了一些設(shè)計缺陷,可能讓攻擊者能夠影響威脅分析過程。
有些瀏覽器cookie是與特定的系統(tǒng)相關(guān)的,而設(shè)計缺陷之一就是缺乏對這類cookie的檢查。“由于先前沒有攻擊者跟蹤過cookie,該系統(tǒng)沒有配備防止大規(guī)模制造cookie的安全措施。我們在一天之內(nèi)通過單一主機創(chuàng)建了超過6.3萬個cookie,而沒有觸發(fā)任何防御措施。使用這些cookie,我們的系統(tǒng)可以僅僅使用一個IP,確保每天解決5.2至6萬個驗證碼問題。”
研究人員還設(shè)計了一種驗證碼破解攻擊,可以從驗證碼問題圖片中提取語義信息。這種攻擊系統(tǒng)還使用了谷歌自家的搜索工具。
使用圖像注釋服務(wù)和庫,我們能夠辨別圖像的內(nèi)容,并給相似的對象作側(cè)寫。我們還利用了谷歌的圖像反向搜索功能,獲取關(guān)于圖像的更多信息。
“針對選取的圖像,我們進一步利用機器學習方法,開發(fā)了一種分類器,可以對圖像注釋系統(tǒng)的輸出進行分類,并尋找相似圖像之間具體相關(guān)的內(nèi)容標記。”
有一些比較嚴格的驗證碼系統(tǒng)會阻止攻擊者創(chuàng)建大量電子郵件等賬戶并用騷擾信息填滿輸入框,對此,研究人員也給出了建議。
比如:通過與服務(wù)賬號進行綁定,控制數(shù)量;在給cookie賦值的過程中考慮“信任”和“名譽”;控制特定時間段內(nèi)創(chuàng)建cookie的數(shù)量;控制可能被檢測到的瀏覽器問題,比如被檢測到的瀏覽器與提交的用戶代理字符串(User-Agent String)間的不一致。