雖然本站沒有限制 Blogger 帳號才能留言、沒使用字詞驗證,不過也不太擔心垃圾留言,因為我會 "手動標示" 垃圾留言,讓 Blogger 過濾系統好好學習判斷模式。因此現在若遇到一般的色情廣告留言,基本上都會被系統直接判定為垃圾留言,不太需要操心。
但是前陣子遇到一個進化過的「垃圾留言開發人員」,無論我如何用各種手段封阻,他都有辦法持續在 WFU BLOG 成功留言,連多次類似的留言內容都不會被 Blogger 判為垃圾留言。
對於這個奇特的模式與案例,著實讓我花了點時間來研究破解方法,請見本篇詳細的紀錄。
(圖片出處: 699pic.com)
1. 過濾機制
基本上 Blogger 過濾垃圾留言的能力不弱,而且還有學習能力,詳細的運作原理可參考這篇「Blogger 的垃圾留言過濾機制是甚麼回事?」。
簡單說,只要 Blogger 使用者越勤勞,無論是將沒被判定為垃圾留言的留言,手動標示為垃圾留言,或是將誤判為垃圾留言的留言,手動恢復為正常留言,都能幫助 Blogger 過濾系統越來越強大。
另外,官方如何定義垃圾留言的範圍,可參考官網頁面「Blogger 內容政策」。
2. 反制策略
既然 Blogger 使用共同學習的機制,那麼會不會「水能載舟,也能覆舟」?
有心人士在發垃圾留言之前,先大量在自己能控制的 Blogger 留言特定內容,自己標示非垃圾留言,讓系統學習起來,確保將來不會被判為垃圾留言。
如果這招能成立,那麼就是系統的盲點了。
最近遇到的垃圾留言攻擊事件,奇特的是看起來像機器人般、有著固定模式,但卻又有辦法針對我的防禦,進行見招拆招。
上圖是 10/4 這天的所有攻擊紀錄:
這樣的結果,讓我確定攻擊者的確混合了 "自動" 與 "手動" 的留言方式,才有辦法洞悉我開啟了留言審查,這真是我遇過最頑強的對手!
一方面可以確認「留言審查」是對付垃圾留言的最強武器,一方面也可知道,攻擊者發現網站對垃圾留言的防禦力很高時,也會為了節省時間精力,而另尋攻擊目標。
1. 事件後續
由於我不喜歡開啟「留言審查」,因此看到攻擊者沒再留言後,推測已經轉移目標,就關閉了「留言審查」功能。
結果沒想到 10/6 又看到此人的留言,看來他還是不時會試探有無攻擊的可能性。
因此我只好持續開啟「留言審查」好幾天,觀察到他 10/7 再留一次發現無效果(需要審查) 之後,至今沒有再看到留言了。
2. 啟用「留言審查」時期
從本篇 WFU 的經歷可瞭解,在遭到垃圾留言的攻擊期間,可開啟「留言審查」來應付。
不過啟用此功能後,需要記得設定留言管理的信件通知,否則我們就無法得知有留言了。
從後台 → 設定 → 文章、留言和分享設定 → 留言管理 → 一律 → 將電子郵件管理要求寄給 → 填入 email,最後按螢幕右上角的「儲存設定」即可。
3. 承平時期
為了讓讀者使用上有好的友善體驗,我不喜歡「禁止匿名」、使用「字詞驗證」、「留言審查」等限制,這會降低讀者的留言動力。
畢竟 "對付垃圾留言" 的麻煩,跟 "獲得讀者留言意見" 的益處,兩者遠遠無法相提並論,不太可能為了省下處理垃圾留言的時間,而犧牲了與讀者交流的機會。
同時,讀者留言對 SEO 也是有益處的,可參考「Blogger 官方留言板的優點及妙用﹍加強 SEO 搜尋排名」。
因此,建議承平時期,也就是不會遭受垃圾留言攻擊的期間,就將「留言審查」等功能關閉。
等真的有遭受攻擊時,再開啟「留言審查」來防範即可。攻擊者有一大堆口袋名單等著攻擊,不太會專門針對單一網站。因此只要久攻不下,就會立刻轉移對象的。
會不會有一種攻擊者,沒有口袋名單,就是要找我們網站的碴,每隔一段時間就來放垃圾留言呢?
真是如此的話,那麼「三、留言最佳處理方式」也將失效。
不過,WFU 連「BLOGGER 留言有禁止訪客自刪的功能嗎?」都能寫出來了,再弄個 "留言黑名單" 的功能也不是什麼難事,就看會不會有這樣的留言者出現了。
但是前陣子遇到一個進化過的「垃圾留言開發人員」,無論我如何用各種手段封阻,他都有辦法持續在 WFU BLOG 成功留言,連多次類似的留言內容都不會被 Blogger 判為垃圾留言。
對於這個奇特的模式與案例,著實讓我花了點時間來研究破解方法,請見本篇詳細的紀錄。
(圖片出處: 699pic.com)
一、Blogger 處理垃圾留言的原理
1. 過濾機制
基本上 Blogger 過濾垃圾留言的能力不弱,而且還有學習能力,詳細的運作原理可參考這篇「Blogger 的垃圾留言過濾機制是甚麼回事?」。
簡單說,只要 Blogger 使用者越勤勞,無論是將沒被判定為垃圾留言的留言,手動標示為垃圾留言,或是將誤判為垃圾留言的留言,手動恢復為正常留言,都能幫助 Blogger 過濾系統越來越強大。
另外,官方如何定義垃圾留言的範圍,可參考官網頁面「Blogger 內容政策」。
2. 反制策略
既然 Blogger 使用共同學習的機制,那麼會不會「水能載舟,也能覆舟」?
有心人士在發垃圾留言之前,先大量在自己能控制的 Blogger 留言特定內容,自己標示非垃圾留言,讓系統學習起來,確保將來不會被判為垃圾留言。
如果這招能成立,那麼就是系統的盲點了。
二、最棘手的案例
最近遇到的垃圾留言攻擊事件,奇特的是看起來像機器人般、有著固定模式,但卻又有辦法針對我的防禦,進行見招拆招。
上圖是 10/4 這天的所有攻擊紀錄:
- 對手非常厲害,這些留言全部沒有被判定為垃圾留言,縱使我一看到留言,馬上手動標為垃圾留言,仍然沒有被系統學習起來。
- 仔細看了留言內容,雖然都是相似的句子,但每句話都刻意替換一兩個單字,讓每則留言不會成為完全一樣的字串,看來有針對系統漏洞,進行亂數腳本的設計。
- 同時也讓我懷疑攻擊者有研究過「一、Blogger 處理垃圾留言的原理」→「2. 反制策略」的可能性。
- 一般複製貼上的留言,很容易就被判定為垃圾留言,但這個攻擊者顯然不使用複製貼上,推斷他使用「按鍵精靈」之類的程式進行機械化輸入。
- 仔細觀察其模式,留言時間非常規律,每 5 ~ 10 分鐘就發一則留言,可確定是利用程式在跑。
- 確定是程式就好辦了,於是使出絕招,開啟「字詞驗證」,這樣機器人就沒輒了吧 → 沒想到竟然失效,照樣可以正常留言!!
- 百思不得其解,那麼唯一的可能性,就是對方使用綜合技:亂數留言程式 + 按鍵精靈 + 手動輸入字詞驗證
- 為了對付這個最極端的對手,只好放大絕招:開啟「留言審查」!
- 說也奇怪,留言審查一啟動之後,攻擊者發現留言無法立即出現在網頁上後,就停止留言了!
這樣的結果,讓我確定攻擊者的確混合了 "自動" 與 "手動" 的留言方式,才有辦法洞悉我開啟了留言審查,這真是我遇過最頑強的對手!
一方面可以確認「留言審查」是對付垃圾留言的最強武器,一方面也可知道,攻擊者發現網站對垃圾留言的防禦力很高時,也會為了節省時間精力,而另尋攻擊目標。
三、留言最佳處理方式
1. 事件後續
由於我不喜歡開啟「留言審查」,因此看到攻擊者沒再留言後,推測已經轉移目標,就關閉了「留言審查」功能。
結果沒想到 10/6 又看到此人的留言,看來他還是不時會試探有無攻擊的可能性。
因此我只好持續開啟「留言審查」好幾天,觀察到他 10/7 再留一次發現無效果(需要審查) 之後,至今沒有再看到留言了。
2. 啟用「留言審查」時期
從本篇 WFU 的經歷可瞭解,在遭到垃圾留言的攻擊期間,可開啟「留言審查」來應付。
不過啟用此功能後,需要記得設定留言管理的信件通知,否則我們就無法得知有留言了。
從後台 → 設定 → 文章、留言和分享設定 → 留言管理 → 一律 → 將電子郵件管理要求寄給 → 填入 email,最後按螢幕右上角的「儲存設定」即可。
3. 承平時期
為了讓讀者使用上有好的友善體驗,我不喜歡「禁止匿名」、使用「字詞驗證」、「留言審查」等限制,這會降低讀者的留言動力。
畢竟 "對付垃圾留言" 的麻煩,跟 "獲得讀者留言意見" 的益處,兩者遠遠無法相提並論,不太可能為了省下處理垃圾留言的時間,而犧牲了與讀者交流的機會。
同時,讀者留言對 SEO 也是有益處的,可參考「Blogger 官方留言板的優點及妙用﹍加強 SEO 搜尋排名」。
因此,建議承平時期,也就是不會遭受垃圾留言攻擊的期間,就將「留言審查」等功能關閉。
等真的有遭受攻擊時,再開啟「留言審查」來防範即可。攻擊者有一大堆口袋名單等著攻擊,不太會專門針對單一網站。因此只要久攻不下,就會立刻轉移對象的。
四、補充
會不會有一種攻擊者,沒有口袋名單,就是要找我們網站的碴,每隔一段時間就來放垃圾留言呢?
真是如此的話,那麼「三、留言最佳處理方式」也將失效。
不過,WFU 連「BLOGGER 留言有禁止訪客自刪的功能嗎?」都能寫出來了,再弄個 "留言黑名單" 的功能也不是什麼難事,就看會不會有這樣的留言者出現了。
更多 Blogger 留言相關文章: