如果我被在C#中創建的.NET程序轟炸 - 因爲用戶正在批量提交我的表單上的$ _POST字段......特別是我的聯繫表單。
我不確定在.NET程序中發生的質量$_POST
究竟如何,或者甚至可能是一個C++程序,我不知道。不過,我有一個想法來解決這個問題。
我的第一個想法需要$_SESSION
但是......那些$_POST
轟炸程序是用戶創建的句柄/接受$_SESSION
?我真的不想知道,但也許有人在C#中的WebClient類的經驗知道,如果它處理$_SESSION'S
或任何它是用戶正在使用。我正在考慮使用$_SESSION['submitted'] = $count;
和$count++;
if($_SESSION['submitted'] > 5) {
//display captcha or block from site
} else {
$count++;
}
另一部分如果用戶的程序並沒有處理$ _SESSION反正是有可能,我可以禁用網站給他們?所以他們不能攻擊我的聯繫表格?
同意這一點,我們可以補充一點,您可以檢查網絡上提供的所有營銷用戶跟蹤代碼段,以獲取用戶檢測中的好主意。檢查http://panopticlick.eff.org/例如查看他們收集的所有數據,並考慮獨特的訪問者散列。 – regilero 2011-04-29 19:21:14
如何限制IP地址? ATM我的新方法是將他們的IP和PHP時間插入到mysql數據庫中,並且每12小時運行一次cron作業,刪除IP超過12小時的IP。如果數據庫中有5個相同的IP,它會阻止他們與我聯繫。 – Kyle 2011-04-29 19:56:24
這仍然讓他們錘擊服務器的請求。最好的地方是在防火牆上,所以這些請求甚至不會到達Apache。如果你在linux上,那麼在https://forum.openwrt.org/viewtopic.php?pid=34494上詳細說明的iptables命令,修改爲用於端口80而不是端口22,可以很好地工作。我使用與此類似的東西來阻止我的家用機器上的SSH掃描。 – 2011-04-29 20:13:04