CLOSE
網頁新知
2019.01.28

Google reCaptcha v3 發布,以後不用再點選 我不是機器人?

Google reCaptcha v3 發布,以後不用再點選 我不是機器人?

一、Google reCAPTCHA v3 更新內容以及與 v2 不同之處

Google reCAPTCHA v3 在 2018 年 11 月由 Goolge 開發人員正式發佈,與過往 reCAPTCHA v2 以及  Invisible reCAPTCHA 最大的不同點,在於網站使用者不再需要透過圖型驗證碼來證明自己不是機器人,而是透過在網站後段自動紀錄使用者在網站中瀏覽的行為過程,如果有類似在連絡表單中不斷提交重複文字之類的行為時,將會將其判定為機器人。

在使用者在網站中各種瀏覽操作行為都會給評分,區間從 0.1 到 1 之間,分數越低的話判定為機器人的機率越高,網站管理員可以在加入 reCaptcha v3 時設定分數門檻,當使用者行為被判定到此門檻時,將開始驗證程序(可能是兩階段驗證或手機驗證)。

由於 reCaptcha v3 是以使用者行為做為判斷是否為自動化程式的基準,需要大量分析行為數據,因此與 reCaptcha v2 只存在單一頁面表格下方對使用者驗證不同,而是在網站中所有的頁面都會有 reCaptcha 的追蹤功能,讓網站的每一個位置都能夠分析惡意程式是否存在。

Google Webmaster Central Blog:Introducing reCAPTCHA v3: the new way to stop bots

如果以前一代 reCAPTCHA v2 與 Invisible reCAPTCHA 做比較,就網站使用者的角度而言,在提交表單時不再需要忍受反覆點選驗證圖片的枯燥動作,在很大程度上能夠提升網站瀏覽體驗,這也是 Google 不斷精進  reCAPTCHA  的最主要原因。

但對於網站管理員而言,reCAPTCHA v3 無疑是一項全新技術挑戰,由 Google reCAPTCHA v3 指南 中的說明就能了解,如果要在網站中加入 reCAPTCHA v3 技術,必須要完成下列三個項目:

  1. 使用申請的網站金鑰加載 JavaScript API
  2. 在操作或者頁面載入時調用 grecaptcha.execute
  3. 請求驗證時將金鑰發送到後端

執行 reCAPTCHA v3 自有一套規則,只要符合就能順利運行,但重點在於每一個網站的結構並不相同,在必須避免程式衝突導致網站問題的前提之下,同時要讓 reCAPTCHA v3 工作,那就需要一些時間來做研究與測試,因此對於網站管理員要如何解決技術上的問題,就是首要的任務了。

下方是 Google 對 reCAPTCHA v3 運作原理所錄製的官方介紹影片,觀看之後能初步了解 reCAPTCHA v3 的運作原理。

延伸閱讀:

Google reCAPTCHA 教學 我不是機器人 驗證按鈕 架站必學技能

二、如何知道 Google reCaptcha v3 正常運作?

reCAPTCHA v3 是在網站背景運作,以不中斷使用者體驗為主要設計目的,但隨之而來的問題就是要如何得知 reCAPTCHA v3 正在保護自家網站不受機器人襲擾?以筆者實際使用 reCAPTCHA v3 的經驗而言,首先啟用 reCAPTCHA v3 之後在網站的右下角會有 Goolge reCAPTCHA 的標示(大部分在首頁),讓網站管理者知道 reCAPTCHA 已經啟用了。

另外根據官方的說法,reCAPTCHA v3 在網站造訪流量達到一定程度之後,會在申請 reCAPTCHA 金鑰的頁面上顯示 reCAPTCHA v3 的執行成效,下方三張圖片就是鵠崙設計實際執行 reCAPTCHA v3 後所得到的表格統計數據。

頁面中前10個使用者行為。

指定時間段內網頁所收到的請求數。

期間中網站得分的平均值

可以在建立 reCAPTCHA v3 一段時間之後再回到 reCAPTCHA 設定頁面查看,筆者約莫是在兩個星期左右才看到以上三份統計資料,如果說 reCAPTCHA v3 真的有在運行,那麼在網站流量足夠的情況下,一定會顯示這三個表格。

如果想要知道在運行 reCAPTCHA v3 的情況下如果遇到機器人程式,reCAPTCHA v3 會有怎樣的保護措施該如何做呢?,筆者曾經實驗過在 Chrome 瀏覽器開發人員選項中裝的裝置模擬器中,將自己瀏覽的身份改為 Google Robot ,然後在網站聯絡表單中試驗提交表單資料,得到的結果是表單會顯示發生錯誤,無法提交表單的訊息, 另外以同樣的模擬環境在安裝 reCAPTCHA v2 的表單中提交,則會產生無窮無盡的驗證圖片,側面驗證了 reCAPTCHA v3 在表單提交時如果被判定為機器人,則根本無法發送表單。

當然這個實驗只是初步階段,從單一角度驗證了 reCAPTCHA v3 的確有發揮該有的功用,但實際上卻不一定是絕對的結果,還是需要多方面的測試,才能找出  reCAPTCHA v3 真正的保護機制。

(模擬機器人的方式並不建議使用,reCAPTCHA v3 會紀錄 IP 位址,如果不是使用浮動 IP 上網,在 Google reCAPTCHA 紀錄中會真的變成機器人…..)

延伸閱讀:

跳過recaptcha 驗證 – Google Invisible reCAPTCHA 隱形驗證碼 教學

2019/02/21 更新

Google reCAPTCHA 網站後台近期對統計數據標格介面做了改版,資料相較之前的樣式也更加清楚,在筆者的 reCAPTCHA v3 功能測試站運行一段時間後,獲得下方表格數據,分別是:指定動作要求驗證數、判定機器人分數、風險分析圖、可疑流量存在頁面。

reCAPTCHA v3 瀏覽者要求驗證使用者數量與驗證分數圖表

由於筆者在測試時只有設定首頁讓 reCAPTCHA v3 對是否為機器人做驗證,設定的行為也只有是否重複提交表單,因此在動作分析上只會有單一圖表資料顯示。這次補充說明 reCAPTCHA v3 是要證實其在網站背景分析使用者行為風險的功能是真正能夠被執行的,而進一步設定當瀏覽者在風險分析中分數被判定過低,能不能以發送電子郵件的方式給網站管理員,讓管理者可以第一時間處理網站發生的漏洞,在之後實際測試完畢後,會將完整的過程發表在 鵠學苑 – WordPress 免費教學 中,如果想盡快收到reCAPTCHA v3 相關測試教學,建議可以訂閱鵠崙設計的電子報喔!

reCAPTCHA v3 安裝後使用者操作行為分析與紀錄

三、結語

reCAPTCHA v3 是一項全新的技術,就目前而言是優缺點並存,對大部分的人而言 reCAPTCHA v2 還是網站保護的首選,畢竟保護的形式是看得到的,對網站運作而言也比較穩定(畢竟推出的時間較久),如果有任何關於 reCAPTCHA 網站驗證方面的問題,也歡迎在下方留言討論喔!

CONTACT US

想了解更多資訊內容嗎?歡迎立即聯繫鵠崙設計!