您的網頁只要產生類似:
http://forum.emeitech.com/(lpdhva2lp...xtBox1=message
這樣的網址就可以把資料塞到你的資料庫了,不需所謂的 "機器人"。
其中 "220.128.231.xxx" 是我的 IP,之前的 "59.105.27.xxx" 所發表的 "posted by wget" 應該也是使用相同的方法,寫個迴圈用 linux 的 wget 去存取上列的網址即可。
在此建議你:
1. 既然你上層有加個帳號/密碼驗證,為何沒有在 NewPost.aspx 裡做判斷?
2. NewPost.aspx 應再判斷資料是否以 "POST" 方法送出,如果不是,就不接收資料。
3. NewPost.aspx 應再檢查伺服器的 HTTP_REFERER 參數(Windows 的網頁伺服器似乎沒有提供這個參數),看看資料是否來自你自己的網頁。
4. NewPost.aspx 應再檢查伺服器的 HTTP_USER_AGENT 參數判斷是否在自主流的瀏覽器。
5. 增加一欄 "圖片文字" 來讓使用者輸入。
不過我自己寫的程式,用了前四點,還是會被 SPAM 攻破,因為那些資料都是可以偽裝送出,而第 5 點,目前已經逐漸被破解了,只是比較費功夫而已。
原本上面的資料只想發訊息跟你說的,但最後我還是選擇發表在網站上,因為這樣可以有更多的討論,希望你可以見諒。