摘要:前幾天,不知從哪冒出來的一波傻逼,總是頻繁的刷我的博客,20分鐘刷了20000多次,無奈之下數據庫被刷爆了... 今天分享一下PHP如何防CC攻擊...
前幾天,不知從哪冒出來的一波傻逼,總是頻繁的刷我的博客,20分鐘刷了20000多次,無奈之下數據庫被刷爆了...
今天分享一下PHP如何防CC攻擊。
<?php empty($_SERVER['HTTP_VIA']) or exit('Access Denied'); session_start(); $seconds = 10; //時間段[秒] $refresh = 5; //刷新次數 //設置監控變量 $cur_time = time(); if(isset($_SESSION['last_time'])){ $_SESSION['refresh_times'] += 1; }else{ $_SESSION['refresh_times'] = 1; $_SESSION['last_time'] = $cur_time; } //處理監控結果 if($cur_time - $_SESSION['last_time'] < $seconds){ if($_SESSION['refresh_times'] >= $refresh){ //跳轉驗證 $url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; $msg = '<title>安全檢查</title><h3>檢測到CC攻擊,正在進行瀏覽器安全檢查!</h3>'; exit($msg . "<meta http-equiv='refresh' content='3;url={$url}'>"); //3是定時跳轉的時間,后期可以根據時間段調整跳轉時間 } }else{ $_SESSION['refresh_times'] = 0; $_SESSION['last_time'] = $cur_time; }
網友評論:
好文章<script>alert();</script>呀'。
2019-01-10 09:46:09 回復