修改F2Blog的網誌評論中的驗證碼(2)

這篇是為了補充上一篇的說明
當初改了驗證碼
但發現還是不太能阻擋機器人
只好再改複雜一點

其實評論留言可以加過濾
就可以少掉一些廣告
可是我並不太想限制太多
也不想強迫登入才能留言

一般驗證碼是由一支php產生圖形,並把驗證碼文字會記錄在SESSION裏
以下是我驗證碼的概念
這個驗證碼產生出來時,記錄在SESSION是英文,圖形顯示出來則是數字
因為一個是英文,一個是數字
在前端的表單裏就不能讓使用者用鍵盤直接輸入
所以利用圖形和滑鼠配合Javascript來輸入英文(雖然看到的是數字)
但是呢?這樣還是不行

所以我在表單那,多加一個隨機變數
利用Javascript,在表單送出時,自動加在驗證碼的欄位
表單在收到後,也會利用這隨機變數去轉驗證碼
然後再去比對
如果機器人直接抓驗證碼送出
則不會有隨機碼,則會出錯
但我也不確定是否能解決

看到Hikaru 's blog的文章
應該跟他的想法差不多
不過可能還是要去分析log檔才能確定
因為當有廣告時
要去分析那廣告是人手動去加的還是機器人自動去加的

當初臨機一動就來改f2blog驗證碼的部分
我也沒特地去研究別套系統如何處理這問題(因為我是東碰西碰,東改西改的,沒特定要改什麼)
f2blog.cont也要推出新版來解決這問題
只是自己還沒確定有沒有解決問題
也就不敢提供給大家參考
引用通告地址: http://www.fase.idv.tw/blog/trackback.php?tbID=43&extra=35a116
標籤: F2Blog
評論: 2 | 引用: 0 | 閱讀: 3321
  • 1 
Hikaru [ 2009-05-28 00:25 網址 | 回覆 | 編輯/刪除 ]
SESSION的值應該是一樣才是
不過你這個點子也不錯,也就是CAPTCHA和session之間要作一個轉換,那可以防止OCR的破解
其實這邊已經從accesslog找到一點線索,不過spambot已經好久沒過來炸所以暫時無從分析(´・ω・`)
fase [ 回復於2009-05-28 07:24 | 編輯/刪除 ]
最近我的網站也似乎沒spambot來炸
只有零星的廣告留言
我也特地去看log檔
那些零星廣告的log看起來都很正常
我發現這些廣告留言真的是為了SEO而來的
我本身沒設filter功能
我不知道filter可不可以限定連結數量
我想在留言裏限定只能一個或二個連結
說不定就擋掉那些廣告留言
也不影響正常的留言
下次再來改
  • 1 
發表評論
暱 稱(*): 密 碼:
網 址: E - mail:
驗證碼(*): 驗證碼圖片
請用滑鼠點選輸入
選 項:
頭 像:
內 容(*):