網站表單防垃圾與機器人指南:驗證碼、隱藏欄位與頻率限制怎麼搭配

網站表單防垃圾與機器人指南:驗證碼、隱藏欄位與頻率限制怎麼搭配|NETVANA 軟體開發知識文章封面

打開公司信箱,聯絡表單又寄來一整排看不懂的訊息:外文廣告、可疑連結、一串亂碼,還有幾封推銷網站排名服務的制式文字。真正的客戶詢問夾在中間,一不小心就被一起刪掉。網站表單防垃圾與機器人,是很多業主在網站上線一段時間後才發現必須面對的問題。

垃圾表單不只是煩,它會消耗客服時間、讓真正的商機被漏看,嚴重時還會讓公司信箱被郵件服務商判定為異常,連正常信件都寄不出去。但反過來,防護做得太嚴,又可能把真正的客戶擋在門外。

以下說明垃圾表單從哪裡來、驗證碼的取捨、隱藏欄位與頻率限制等低干擾做法、信箱驗證的時機、垃圾訊息對客服的實際影響,以及如何在擋機器人的同時兼顧無障礙與轉換率。

垃圾表單從哪裡來

先了解對手,才知道要用什麼方法。網站表單收到的垃圾大致分成三類:

  • 自動程式:在網路上大量搜尋表單,自動填入廣告內容或惡意連結後送出。這是數量最大的一類,特徵是速度快、內容重複、常常每個欄位都填滿。
  • 真人手動推銷:有人實際打開你的網站,在表單上填寫推銷訊息。這類訊息語句通順,能通過大部分機器人檢查。
  • 惡意測試:嘗試在欄位中輸入特殊字元或程式碼,測試網站有沒有漏洞,或利用表單的自動回覆功能轉寄垃圾信給第三方。

第三類特別值得注意。如果表單會自動寄一封「感謝您的來信」給填寫者填的信箱,有心人就能填入別人的信箱,讓你的網站變成寄垃圾信的跳板,進而影響公司網域的寄信信譽。這也是為什麼表單防護和網站資安基礎是同一件事的兩面。

驗證碼的取捨

談到擋機器人,多數人第一個想到驗證碼。驗證碼確實有效,但它是有代價的。

常見的驗證碼類型

  • 文字或圖片辨識:要求輸入扭曲的文字、點選特定圖片。對機器人有一定阻擋力,但對真人也很煩,在手機上尤其難操作。
  • 勾選式:只需要勾一下「我不是機器人」,背後依據行為判斷,必要時才跳出圖片題。
  • 無感式:完全不打擾使用者,由服務在背後評估行為風險,只有可疑時才要求進一步驗證。

驗證碼的代價

  • 降低填寫意願:每多一道關卡,就有人在最後一步放棄。表單通常是商機的入口,這裡的流失最可惜。
  • 無障礙問題:視障者使用螢幕閱讀器時,圖片類驗證碼可能完全無法完成;部分音訊替代方案也不容易使用。
  • 隱私考量:部分第三方驗證服務會蒐集使用者行為資料,網站的隱私權政策需要配合說明。
  • 擋不住真人:真人手動推銷完全可以通過驗證碼。

所以實務上的建議是:驗證碼不該是第一道防線,而是最後一道。先用使用者感覺不到的方法擋掉大部分自動程式,只在風險較高的情況才讓驗證碼出場。

低干擾的防護:使用者感覺不到的那幾層

下面這些做法,一般使用者完全不會察覺,卻能擋下大量自動程式。

隱藏欄位(蜜罐)

在表單裡放一個真人看不到的欄位。正常使用者不會填它,但自動程式常會把所有欄位都填滿。只要這個欄位有值,就判定為機器人。

要注意的是,隱藏方式必須讓螢幕閱讀器與鍵盤操作也會跳過這個欄位,並且關閉瀏覽器自動填入,否則可能誤擋使用輔助工具或自動填入的真人。

填寫時間檢查

真人填完一份表單需要一些時間,自動程式往往在頁面載入後瞬間送出。記錄表單開啟到送出的時間,過短就判定可疑。

頻率限制

限制同一來源在一段時間內能送出的次數。這能擋下大量重複送出,也能降低有人惡意灌爆信箱的風險。設定時要考慮公司行號或學校等共用網路的情況,門檻不要設得太低。

後端驗證一定要做

上面所有檢查,都必須在伺服器端再確認一次。只在網頁畫面上做的檢查,有心人可以直接繞過畫面把資料送到伺服器。這是許多表單「明明有防護卻還是被灌」的主因。

內容過濾

針對真人推銷類訊息,可以依據內容特徵處理:例如訊息含有多個外部連結、包含特定關鍵字、或全篇為與業務無關的語言。被判定為可疑的訊息不一定要直接丟掉,可以分流到另一個資料夾,由人定期抽看,避免誤刪。

信箱驗證:什麼時候需要

信箱驗證是指寄一封確認信,要求填寫者點擊連結後才算完成。它能確認信箱真實有效,但也多了一個步驟。

適合使用的情況:

  • 會員註冊、電子報訂閱:日後要持續寄信,必須確認信箱真實,也能避免被人冒用別人的信箱訂閱。
  • 會觸發後續動作的表單:例如申請試用帳號、預約後要寄送確認資料。

不適合使用的情況:

  • 一般聯絡表單、詢價表單:客戶只是想問問題,要求他先去收信點連結,多數人會覺得麻煩。這類表單用前面的低干擾方法處理即可。

另外,自動回覆信的內容應該盡量精簡、不要原封不動帶入使用者填寫的訊息內容,以免被利用來轉寄垃圾內容。

垃圾訊息對客服的實際影響

很多業主把垃圾表單當成「刪一刪就好」的小事,但它的影響比想像中廣:

  • 真正的詢問被漏看:垃圾多到一定程度,處理的人會開始快速掃過甚至批次刪除,真正的客戶就夾在裡面被誤刪。
  • 回覆變慢:客服要先花時間分辨真假,真正的客戶等待時間被拉長,可能轉頭去找別家。
  • 統計失真:如果用表單數量評估行銷成效,垃圾訊息會讓數字虛胖,造成錯誤判斷。
  • 寄信信譽受損:表單被濫用來寄信時,公司網域可能被列入可疑名單,連業務的正常往來信件都可能進到對方的垃圾信匣。
  • 同仁的倦怠:每天處理大量無意義訊息,負責的人很容易失去耐心,連帶影響服務品質。

所以防垃圾不只是技術問題,而是保護商機與客服品質的一環。

兼顧無障礙與轉換率

防護越嚴,誤傷真人的機率就越高。設計表單防護時,可以用下面這張決策表檢查:

做法對機器人效果對真人干擾無障礙風險建議
隱藏欄位對簡單程式有效幾乎沒有需正確隱藏一律加上
填寫時間檢查對簡單程式有效幾乎沒有低一律加上
頻率限制擋大量重複幾乎沒有低一律加上
內容過濾與分流可處理真人推銷沒有沒有垃圾多時加上
無感式驗證較強低中前幾層不夠時加上
圖片或文字驗證碼較強高高盡量避免,或只在高風險時出現

無障礙的幾個基本要求

  • 驗證碼若無法避免,要提供替代方式,例如音訊或改用其他驗證方法。
  • 錯誤訊息要清楚說明哪裡填錯、怎麼修正,而不是只顯示一句「送出失敗」。
  • 表單欄位要有清楚的標籤,鍵盤可以完整操作。
  • 在表單附近提供電話或其他聯絡管道,給無法完成表單的人另一條路。

更完整的無障礙原則,可以參考網站無障礙設計指南。

業主自查與改善步驟

如果你的表單正在被垃圾訊息困擾,可以照這個順序處理:

  1. 盤點所有表單:聯絡表單、詢價表單、電子報訂閱、留言區、會員註冊,列出每一個會寫入資料或寄信的地方,包括舊頁面上可能被遺忘的表單。
  2. 看一週的垃圾樣本:判斷主要是自動程式還是真人推銷,決定要加強哪一層。
  3. 先加低干擾的三層:隱藏欄位、填寫時間檢查、頻率限制,並確認後端有驗證。
  4. 設定分流而不是刪除:可疑訊息進另一個資料夾,指定一個人定期抽看。
  5. 檢查自動回覆:確認自動回覆不會被利用來寄信給第三方。
  6. 觀察一段時間再決定是否加驗證碼:如果前幾層已經擋下大部分,就不需要再增加使用者負擔。
  7. 自己實際填一次:用手機、不同瀏覽器、鍵盤操作各試一次,確認真人送得出去。

如果你的網站表單正被垃圾訊息淹沒,或想在改版時一併把防護設計好,NETVANA 可以協助盤點網站上所有表單入口、在前後端加上分層防護,並設定分流與通知流程。軟體服務一律採詢問報價制,歡迎與我們聯繫,我們會先了解垃圾訊息的類型與你的客服流程再提出建議;網站開發與維護的服務內容可參考軟體服務介紹。

延伸閱讀:表單之外網站還有哪些基本防護,看企業網站資安基礎;防護設計怎麼不排擠身障使用者,看網站無障礙設計指南;表單調整要不要納入維護合約,看網站維護費用與合約指南;被灌爆時怎麼確認系統撐得住,看流量高峰與壓力測試;表單通知信反而進了垃圾信匣,可以看企業信箱與網域寄信設定;擋掉垃圾訊息之後,剩下的表單要讓真人願意填,可以看官網轉換率優化指南。

網站開發

覺得有幫助?分享給更多人