摘要:驗(yàn)證碼旨在確認(rèn)訪問(wèn)者是人還是程序,并防止惡意程序的入侵。自年以來(lái),改為在我不是機(jī)器人的方框中打勾,進(jìn)而完成判別。
選自 Github 作者:George Hughey
機(jī)器之心編譯
每個(gè)人都討厭驗(yàn)證碼,這些惱人的圖片中包含你必須輸入的字符,我們只有正確地填寫(xiě)才能繼續(xù)訪問(wèn)網(wǎng)站。驗(yàn)證碼旨在確認(rèn)訪問(wèn)者是人還是程序,并防止惡意程序的入侵。然而,隨著深度學(xué)習(xí)和計(jì)算機(jī)視覺(jué)技術(shù)的發(fā)展,現(xiàn)在這些認(rèn)證方法可以被我們輕松破解了。
在這一個(gè)項(xiàng)目中,作者破解了最新版的 ReCaptcha,并開(kāi)源了所有代碼。不過(guò)項(xiàng)目作者聲明:「這份代碼能夠解決最新版的 ReCaptcha,但僅限于在自己網(wǎng)站上使用,且僅用于教育目的。」
項(xiàng)目地址:
https://github.com/ecthros/un...
reCAPTCHA 項(xiàng)目是由卡內(nèi)基梅隆大學(xué)開(kāi)始構(gòu)建的系統(tǒng),這個(gè)項(xiàng)目將從書(shū)本上掃描下來(lái)、無(wú)法被 OCR 準(zhǔn)確識(shí)別的文字顯示在 CAPTCHA 問(wèn)題中,從而判斷訪問(wèn)者到底是程序還是人類。自 2014 年以來(lái),reCAPTCHA 改為在「我不是機(jī)器人」(I"m not a robot)的方框中打勾,進(jìn)而完成判別。
這個(gè)名為 unCaptcha 的項(xiàng)目最早創(chuàng)建于 2017 年 4 月,并在當(dāng)時(shí)實(shí)現(xiàn)了 85% 的 ReCaptcha 對(duì)抗率。不過(guò)后來(lái)谷歌發(fā)布了新版本的 ReCaptcha,且新版的 ReCaptcha 主要有以下兩個(gè)主要改進(jìn):
更好的瀏覽器自動(dòng)檢測(cè)使用短語(yǔ)語(yǔ)音而不是數(shù)字
這些改進(jìn)最開(kāi)始成功地防御了第一版 unCaptcha 的攻擊,然而到了 18 年 6 月份,這些挑戰(zhàn)基本都已被解決。本項(xiàng)目的作者同樣與 ReCaptcha 團(tuán)隊(duì)取得了聯(lián)系,他們完全了解這次攻擊。此外,ReCaptcha 團(tuán)隊(duì)還允許該項(xiàng)目作者發(fā)布 unCaptcha2 的代碼,盡管它目前仍然能有效破解 ReCaptcha 驗(yàn)證碼。
unCaptcha2 簡(jiǎn)介
由于 ReCaptcha 添加了語(yǔ)音形式的驗(yàn)證碼識(shí)別,破解 ReCaptcha 比以前變得更加容易。因?yàn)槲覀冎恍枰{(diào)用一個(gè)免費(fèi)的語(yǔ)音識(shí)別 API,對(duì)所有驗(yàn)證碼的識(shí)別準(zhǔn)確率就能達(dá)到 90% 左右。另外由于 ReCaptcha 會(huì)阻止瀏覽器自動(dòng)化引擎 Selenium,unCaptcha2 會(huì)使用屏幕點(diǎn)擊器(clicker)移動(dòng)到屏幕上特定的像素,從而像人一樣瀏覽網(wǎng)頁(yè)。當(dāng)然在模擬人類瀏覽的過(guò)程中,每一個(gè)新用戶的坐標(biāo)都需要更新,這個(gè)目前并不是太魯棒。
unCaptcha2 的方法非常簡(jiǎn)潔:
導(dǎo)航至谷歌的 ReCaptcha 演示網(wǎng)站導(dǎo)航至 ReCaptcha 的語(yǔ)音庫(kù)下載語(yǔ)音使用語(yǔ)音識(shí)別 API 識(shí)別語(yǔ)音解析 API 返回的參數(shù)和識(shí)別結(jié)果提交識(shí)別結(jié)果,判斷是否成功
如下所示 unCaptcha2 的測(cè)試界面:
如何使用 unCaptcha2
因?yàn)?unCaptcha2 必須指定屏幕上的特定坐標(biāo),因此我們必須基于設(shè)置更新坐標(biāo)。這些坐標(biāo)更新的代碼寫(xiě)在了 run.py 文件的最上面。在 Linux 系統(tǒng)中,使用命令行 xdotool getmouselocation—shell 可以定位鼠標(biāo)在屏幕上的坐標(biāo)位置。
我們還需要配置到底使用哪一個(gè)語(yǔ)音識(shí)別 API,國(guó)內(nèi)的 BAT、訊飛和搜狗等都提供高效的語(yǔ)音識(shí)別 API,而國(guó)外的谷歌、微軟和 IBM 也一樣。谷歌、微軟和 IBM 的的 API 結(jié)構(gòu)都已經(jīng)在 queryAPI.py 中,我們只需要配置用戶名和密碼就行了。如果你要使用谷歌 API,我們需要使用谷歌應(yīng)用的證書(shū)參數(shù)配置環(huán)境變量 GOOGLE_APPLICATION_CREDENTIAL。
最后,安裝剩下的依賴項(xiàng)就能愉快地破解了:pip install -r dependencies.txt。
閱讀更多阿里內(nèi)部的那個(gè)牛逼帶閃電的Java診斷工具終于開(kāi)源了
一招教你打造一個(gè)滑動(dòng)置頂?shù)囊曈X(jué)特效
NDK項(xiàng)目實(shí)戰(zhàn)—高仿360手機(jī)助手之卸載監(jiān)聽(tīng)
(Android)面試題級(jí)答案(精選版)
相信自己,沒(méi)有做不到的,只有想不到的如果對(duì)技術(shù)開(kāi)發(fā)比較感興趣,歡迎關(guān)注一起交流和學(xué)習(xí)!
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/72904.html
摘要:為了應(yīng)付這種情況,很多網(wǎng)站加大驗(yàn)證碼識(shí)別難度,復(fù)雜的驗(yàn)證碼甚至讓用戶都很難識(shí)別了,這種方式劣勢(shì)十分明顯,糟糕的用戶體驗(yàn)最終會(huì)讓網(wǎng)站流失用戶,這便是為什么有人吐槽網(wǎng)站的驗(yàn)證碼的原因了。 歡迎訪問(wèn)網(wǎng)易云社區(qū),了解更多網(wǎng)易技術(shù)產(chǎn)品運(yùn)營(yíng)經(jīng)驗(yàn)。 首先來(lái)談?wù)勻?yàn)證碼的機(jī)制,驗(yàn)證碼作為一種人機(jī)識(shí)別手段,其終極目的,就是區(qū)分正常人和機(jī)器的操作。而對(duì)于沒(méi)有驗(yàn)證碼的場(chǎng)景,比如用戶登陸,則機(jī)器可以同時(shí)、大批量...
摘要:國(guó)家網(wǎng)信辦啟動(dòng)專項(xiàng)行動(dòng)劍指類違法違規(guī)互聯(lián)網(wǎng)信息近日,針對(duì)網(wǎng)絡(luò)生態(tài)問(wèn)題頻發(fā)各類有害信息屢禁不止等突出問(wèn)題,為積極回應(yīng)民眾關(guān)切,國(guó)家網(wǎng)信辦啟動(dòng)網(wǎng)絡(luò)生態(tài)治理專項(xiàng)行動(dòng)。中國(guó)鐵路總公司官方微博回應(yīng)網(wǎng)傳信息不實(shí),網(wǎng)站未發(fā)生用戶信息泄露。 易盾業(yè)務(wù)風(fēng)控周報(bào)每周呈報(bào)值得關(guān)注的安全技術(shù)和事件,包括但不限于內(nèi)容安全、移動(dòng)安全、業(yè)務(wù)安全和網(wǎng)絡(luò)安全,幫助企業(yè)提高警惕,規(guī)避這些似小實(shí)大、影響業(yè)務(wù)健康發(fā)展的安全風(fēng)...
摘要:圖片驗(yàn)證碼是目前最常用的一種。神經(jīng)網(wǎng)絡(luò)以上驗(yàn)證碼識(shí)別都依賴于字符切分,切分的好壞幾乎直接決定識(shí)別的準(zhǔn)確程度。目前驗(yàn)證碼識(shí)別最先進(jìn)的是谷歌在識(shí)別街景圖像中門(mén)牌號(hào)碼中使用的一套的算法。 全自動(dòng)區(qū)分計(jì)算機(jī)和人類的圖靈測(cè)試(Completely Automated Public Turing test to tell Computers and Humans Apart,簡(jiǎn)稱CAPTCHA),...
摘要:神經(jīng)網(wǎng)絡(luò)以上驗(yàn)證碼識(shí)別都依賴于字符切分,切分的好壞幾乎直接決定識(shí)別的準(zhǔn)確程度。目前驗(yàn)證碼識(shí)別最先進(jìn)的是谷歌在識(shí)別街景圖像中門(mén)牌號(hào)碼中使用的一套的算法。 最近在一個(gè)爬蟲(chóng)項(xiàng)目中遇到了驗(yàn)證碼,需要機(jī)器自動(dòng)識(shí)別繞過(guò)。剛好與題主的問(wèn)題類似,在這里做一些分享。 在網(wǎng)上調(diào)研了資料和文獻(xiàn)后,分別采用OCR識(shí)別和模板庫(kù)匹配方法對(duì)不同類型驗(yàn)證碼進(jìn)行了識(shí)別。主要過(guò)程可以分解為三個(gè)步驟:1.圖片清理,2.字符...
閱讀 1447·2023-04-25 16:31
閱讀 2052·2021-11-24 10:33
閱讀 2753·2021-09-23 11:33
閱讀 2541·2021-09-23 11:31
閱讀 2919·2021-09-08 09:45
閱讀 2348·2021-09-06 15:02
閱讀 2656·2019-08-30 14:21
閱讀 2323·2019-08-30 12:56