返回列表 发新帖

简易防CC攻击刷新跳转代码

[复制链接]
灌水成绩
872
主题
892
帖子
5533
积分
等级头衔
积分成就
  • 威望: 0
  • 贡献: 4641
  • 金钱: 0
  • 违规:
  • 在线时间:305 小时
  • 注册时间:2019-3-9
  • 最后登录:2019-12-8
个人勋章

官方

联系方式
QQ
发表于 2019-11-24 09:08:44 | 显示全部楼层 | 阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
简易防CC攻击刷新跳转代码,每秒刷新过多后跳转防cc页,5秒后反回网站首页,感觉只能防一下乱刷新的人,就是打开网站一通乱点的人。
使用:以WordPress为例,在根目录创建cc.php文件,把php代码添加到里面保存,再创建cc.html文件把html代码放入保存,在到根目录的index.php文件最前面加上调用代码,调用cc.php文件即可,可把cc.php里的时间修改周期改长点。
创建一个PHP文件名为cc.php复制以下代码放进去:
<?php
//代理IP直接退出
emptyempty($_SERVER[‘HTTP_VIA’]) or exit(‘Access Denied’);
//防止快速刷新
session_start();
$seconds = ‘3’; //时间段[秒]
$refresh = ‘8’; //刷新次数
//设置监控变量
$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){
  //跳转防cc页
  header(sprintf(‘Location:%s’, ‘https://www.12580sky.com/cc.html’));
  exit(‘Access Denied’);
}
}else{
$_SESSION[‘refresh_times’] = 0;
$_SESSION[‘last_time’] = $cur_time;
}
?>   

再创建一个cc.html文件复制以下代码放进去:

防CC刷新攻击中,5秒后跳转首页
*{box-sizing:inherit;}body{min-height:100vh;display:flex;justify-content:center;align-items:center;background:#151924;padding:0;margin:0;}.loading{–color:#F5F9FF;–duration:2000ms;font-family:Roboto,Arial;font-size:24px;position:relative;white-space:nowrap;user-select:none;color:var(–color);}.loading span{–x:0;–y:0;–move-y:0;–move-y-s:0;–delay:0ms;display:block;position:absolute;top:0;left:0;width:1px;text-indent:calc(var(–x) * -1);overflow:hidden;transform:translate(var(–x),var(–y));}.loading.start div{opacity:0;}.loading.start span{animation:move var(–duration) ease-in-out var(–delay);}@keyframes move{30%{transform:translate(var(–x),var(–move-y));}82%{transform:translate(var(–x),var(–move-y-s));}

防CC刷新攻击中,5秒后跳转首页


<p>$(document).ready(function(){let loading=$(‘.loading’).wrapInner(‘</p><p>‘),min=20,max=70,minMove=10,maxMove=20;startAnimation(loading);loading.on(‘animationend webkitAnimationEnd oAnimationEnd’,’span:last-child’,e=>{startAnimation(loading)});function setCSSVars(elem,min,max,minMove,maxMove){let width=Math.ceil(elem.width()),text=elem.text();for(let i=1;i<width;i++){let num=Math.floor(Math.random()*(max-min+1))+min,numMove=Math.floor(Math.random()*(maxMove-minMove+1))+minMove,dir=(i%2==0)?1:-1,spanCurrent=elem.find(‘span:eq(‘+i+’)’),span=spanCurrent.length?spanCurrent:$(”);span.css({‘–x’:i-1+’px’,’–move-y’:num*dir+’px’,’–move-y-s’:((i%2==0)?num*dir-numMove:num*dir+numMove)+’px’,’–delay’:i*10+’ms’});if(!spanCurrent.length){elem.append(span.text(text))}}}function startAnimation(elem){elem.removeClass(‘start’);setCSSVars(elem,min,max,minMove,maxMove);void elem[0].offsetWidth;elem.addClass(‘start’)}}); </p>

最后在首页文件调用cc.php代码:

require ‘cc.php’;




帖子地址: 

回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表