PHP攻击网站防御代码-以及攻击代码反译

这是我无意中攻击一个网站发现的一个代码PHP有效的拦截住我的DDOS 

<?php  
//查询禁止IP  
$ip =$_SERVER['REMOTE_ADDR'];  
$fileht=".htaccess2";  
if(!file_exists($fileht))file_put_contents($fileht,"");  
$filehtarr=@file($fileht);  
if(in_array($ip."\r\n",$filehtarr))die("Warning:"."<br>"."Your IP address are forbided by some reason, IF you have any question Pls emill to shop@mydalle.com!");  

//加入禁止IP  
$time=time();  
$fileforbid="log/forbidchk.dat";  
if(file_exists($fileforbid))  
{ if($time-filemtime($fileforbid)>60)unlink($fileforbid);  
else{  
$fileforbidarr=@file($fileforbid);  
if($ip==substr($fileforbidarr[0],0,strlen($ip)))  
{  
if($time-substr($fileforbidarr[1],0,strlen($time))>600)unlink($fileforbid);  
elseif($fileforbidarr[2]>600){file_put_contents($fileht,$ip."\r\n",FILE_APPEND);unlink($fileforbid);}  
else{$fileforbidarr[2]++;file_put_contents($fileforbid,$fileforbidarr);}  
}  
}  
}  
//防刷新  
$str="";  
$file="log/ipdate.dat";  
if(!file_exists("log")&&!is_dir("log"))mkdir("log",0777);  
if(!file_exists($file))file_put_contents($file,"");  
$allowTime = 120;//防刷新时间  
$allowNum=10;//防刷新次数  
$uri=$_SERVER['REQUEST_URI'];  
$checkip=md5($ip);  
$checkuri=md5($uri);  
$yesno=true;  
$ipdate=@file($file);  
foreach($ipdate as $k=>$v)  
{ $iptem=substr($v,0,32);  
$uritem=substr($v,32,32);  
$timetem=substr($v,64,10);  
$numtem=substr($v,74);  
if($time-$timetem<$allowTime){  
if($iptem!=$checkip)$str.=$v;  
else{  
$yesno=false;  
if($uritem!=$checkuri)$str.=$iptem.$checkuri.$time."1\r\n";  
elseif($numtem<$allowNum)$str.=$iptem.$uritem.$timetem.($numtem+1)."\r\n";  
else  
{  
if(!file_exists($fileforbid)){$addforbidarr=array($ip."\r\n",time()."\r\n",1);file_put_contents($fileforbid,$addforbidarr);}  
file_put_contents("log/forbided_ip.log",$ip."--".date("Y-m-d H:i:s",time())."--".$uri."\r\n",FILE_APPEND);  
$timepass=$timetem+$allowTime-$time;  
die("Warning:"."<br>"."Sorry,you are forbided by refreshing frequently too much, Pls wait for ".$timepass." seconds to continue!");  
}  
}  
}  
}  
if($yesno) $str.=$checkip.$checkuri.$time."1\r\n";  
file_put_contents($file,$str);  
?> 

时间: 2024-10-31 04:37:06

PHP攻击网站防御代码-以及攻击代码反译的相关文章

网站防御DDOS的PHP代码

今天的主题是网站攻击与网站防护.这是我查到的资料,能够有效的拦截住我的DDOS 一个PHP代码   <?php   //查询禁止IP   $ip =$_SERVER['REMOTE_ADDR'];   $fileht=".htaccess2";   if(!file_exists($fileht))file_put_contents($fileht,"");   $filehtarr=@file($fileht);   if(in_array($ip.&quo

网站安全攻击和防御中的屏蔽代理服务器

网站安全攻击和防御中的屏蔽代理服务器   网站安全一直是个重要话题,本人写了网络攻防的屏蔽代理服务器相关代码,分享下: 1. 写个网页request类: using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Threading; using System.Threading.Tasks

学习手册:浅析DDoS的攻击及防御

现如今,信息技术的发展为人们带来了诸多便利,无论是个人社交行为,还是商业活动都开始离不开网络了.但是网际空间带来了机遇的同时,也带来了威胁,其中DDoS就是最具破坏力的攻击,通过这些年的不断发展,它已经成为不同组织和个人的攻击,用于网络中的勒索.报复,甚至网络战争. 文章目录 先聊聊DDoS的概念和发展 啥叫"拒绝服务"攻击呢? 啥叫"分布式"呢? 啥叫"僵尸网络"呢? DDoS的发展咋样? 再谈谈DDoS的攻击方式 也说说DDoS的攻击工具 L

MySQL注入攻击与防御

一.注入常用函数与字符 下面几点是注入中经常会用到的语句 控制语句操作(select, case, if(), ...) 比较操作(=, like, mod(), ...) 字符串的猜解操作(mid(), left(), rpad(), -) 字符串生成操作(0x61, hex(), conv()(使用conv([10-36],10,36)可以实现所有字符的表示)) 二.测试注入 可以用以下语句对一个可能的注入点进行测试 三.注释符 以下是Mysql中可以用到的注释符: Examples: SE

Flash CSRF 恶意利用攻击及防御

Flash CSRF名词解释 CSRF(Cross-site request forgery跨站请求伪造,是一种对网站的恶意利用,CSRF则通过伪装来自受信任用户的请求来利用受信任的网站. Flash CSRF通常是由于Crossdomain.xml文件配置不当造成的,利用方法是使用swf来发起跨站请求伪造. Flash CSRF形成的原因 看看如何寻找Flash CSRF: 首先我们要知道怎么形成CSRF的,CSRF形成的原因大概有以下几种: Flash跨域权限管理文件Crossdomain.

招生网站日均遭黑客攻击超8万次

近日,多位学生在浏览招生信息后发现学校网站已被黑客攻击,盗号木马利用漏洞侵入了自己的电脑,据360数据显示,360安全卫士和浏览器每天拦截"暴雷"挂马超过8万次. 高考发榜不久,成绩不太理想的网友小杨和父母商量,准备选择一所资质较好的成人自考学院.当他上网浏览招生信息后,DNF<地下城与勇士>游戏账号却离奇被盗.经过向360安全专家咨询,小杨才得知自己访问的中科大继续教育学院网站已被黑客挂马,盗号木马利用"暴雷"漏洞侵入他的电脑. 小杨表示,"

烟草网站如何实现防攻击、防病毒、防篡改

网站,作为企业网络公众形象的载体,承担了企业形象宣传的重任.在我国,烟草施行的是国家专卖制度,既关注行业行政管理,又关注企业的生产运营,烟草网站既担负着政策信息发布.政府信息公开的职责,又兼有面对烟草企业.消费者等进行信息交互的职责. 有鉴于此,2009年,国家烟草局下发<国家烟草专卖局办公室关于行业信息安全工作有关情况的通知>.该通知明确提出:"加强网站'三防'建设,提高重要信息系统安全防护能力,各单位要按照国务院办公厅文件要求,重点做好行业对外网站网页防攻击.防病毒.防篡改的安全

安全简报: 正则表达式拒绝服务攻击和防御

在 2009 年 11 月刊中,我写了一篇标题为"XML 拒绝服务攻击和防御" (msdn.microsoft.com/magazine/ee335713) 的文章,在这篇文章中,我介绍了一些对 XML 分 析程序特别有效的拒绝服务 (DoS) 攻击技巧.我从读者那里收到许多有关此文章的电子邮件, 他们都想了解有关这方面的更多知识,这让我真正意识到人们已经了解 DoS 攻击的严重性. 我相信,在未来的四到五年中,随着权限升级,执行攻击会变得更加困难,这是由于不断采 用诸如数据执行保护

linux 防御小规模DDOS攻击配置方法

防御原理 DDoS deflate的原理是通过netstat命令找出 发出过量连接的单个IP,并使用iptables防火墙将这些IP进行拒绝.由于iptables防火墙拒绝IP的连接远比从Apache层面上来得高效,因此iptables便成了运行在Apache前端的"过滤器".同样的,DDoS deflate也可以设置采用APF(高级防火墙)进行IP阻止. 如何确定DDOS攻击? 执行: Shell netstat -ntu | awk '{print $5}' | cut -d: -