防止本地用户用fsockopen DDOS攻击对策


Posted in PHP onNovember 02, 2011

原因
php脚本部分源码:

$fp = fsockopen("udp://$ip", $rand, $errno, $errstr, 5); 
if($fp){ 
fwrite($fp, $out); 
fclose($fp);

php脚本中的 fsockopen 函数,对外部地址,通过UDP发送大量的数据包,攻击对方。

应对
可通过 php.ini ,禁用 fsockopen 函数,及使用Windows 2003的 安全策略 屏蔽本机的UDP端口。

禁用函数
查找到 disable_functions ,添加需禁用的函数名,如下例:

passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen

重启IIS后生效。

屏蔽UDP端口
将以下着色文本复制到记事本,另存为 banudp.bat 或任意名,双击运行即可。

REM 添加安全策略,名称
netsh ipsec static add policy name=我的安全策略

REM 添加 IP筛选器列表
netsh ipsec static add filterlist name=允许列表
netsh ipsec static add filterlist name=拒绝列表

REM 添加筛选器到IP筛选器列表(允许上网)
netsh ipsec static add filter filterlist=允许列表 srcaddr=me dstaddr=any description=dns访问 protocol=udp mirrored=yes dstport=53

REM 添加筛选器到IP筛选器列表(不让别人访问)
netsh ipsec static add filter filterlist=拒绝列表 srcaddr=any dstaddr=me description=别人到我任何访问 protocol=udp mirrored=yes

REM 添加筛选器操作
netsh ipsec static add filteraction name=可以 action=permit
netsh ipsec static add filteraction name=不可以 action=block

REM 创建一个链接指定 IPSec 策略、筛选器列表和筛选器操作的规则(加入规则到我的安全策略)
netsh ipsec static add rule name=允许规则 policy=我的安全策略 filterlist=允许列表 filteraction=可以
netsh ipsec static add rule name=拒绝规则 policy=我的安全策略 filterlist=拒绝列表 filteraction=不可以

REM 激活我的安全策略
netsh ipsec static set policy name=我的安全策略 assign=y

PHP 相关文章推荐
PHP个人网站架设连环讲(四)
Oct 09 PHP
基于mysql的论坛(1)
Oct 09 PHP
实例(Smarty+FCKeditor新闻系统)
Jan 02 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
php中cookie的使用方法
Mar 29 PHP
PHP实现数组递归转义的方法
Aug 28 PHP
PHP实现的简单三角形、矩形周长面积计算器分享
Nov 18 PHP
php数据访问之增删改查操作
May 09 PHP
php实现的一段简单概率相关代码
May 30 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
Feb 10 PHP
PHPMAILER实现PHP发邮件功能
Apr 18 PHP
Yii框架getter与setter方法功能与用法分析
Oct 22 PHP
PHP隐形一句话后门,和ThinkPHP框架加密码程序(base64_decode)
Nov 02 #PHP
php数组函数序列之krsort()- 对数组的元素键名进行降序排序,保持索引关系
Nov 02 #PHP
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
Nov 02 #PHP
php数组函数序列之sort() 对数组的元素值进行升序排序
Nov 02 #PHP
php数组函数序列之ksort()对数组的元素键名进行升序排序,保持索引关系
Nov 02 #PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
Nov 02 #PHP
求PHP数组最大值,最小值的代码
Oct 31 #PHP
You might like
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
让PHP以ROOT权限执行系统命令的方法
2011/02/10 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
2014/04/19 PHP
php获取数据库结果集方法(推荐)
2017/06/01 PHP
jquery异步请求实例代码
2011/06/21 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
几种经典排序算法的JS实现方法
2016/03/25 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
KnockoutJS 3.X API 第四章之数据控制流with绑定
2016/10/10 Javascript
JS 调试中常见的报错问题解决方法
2017/05/20 Javascript
Node.js 实现简单的接口服务器的实例代码
2017/05/23 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
解决vue单页面应用中动态修改title问题
2019/06/09 Javascript
python做量化投资系列之比特币初始配置
2018/01/23 Python
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
flask入门之文件上传与邮件发送示例
2018/07/18 Python
Python实现多线程的两种方式分析
2018/08/29 Python
python+splinter自动刷新抢票功能
2018/09/25 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
Python Flask框架模板操作实例分析
2019/05/03 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
Python Sqlalchemy如何实现select for update
2020/10/12 Python
pycharm配置QtDesigner的超详细方法
2021/01/25 Python
css3 自定义字体font-face使用介绍
2014/05/14 HTML / CSS
css3的focus-within选择器的使用
2020/05/11 HTML / CSS
美国百货齐全的精品网站,提供美式风格的产品:Overstock.com
2016/07/22 全球购物
护理职业应聘自荐书
2013/09/29 职场文书
自我鉴定四大框架
2014/01/17 职场文书
2014自荐信的写作技巧
2014/01/28 职场文书
各营销点岗位职责范本
2014/03/05 职场文书
物理学专业求职信
2014/07/04 职场文书
2014财产信托协议书范本
2014/11/18 职场文书
世界水日宣传活动总结
2015/02/09 职场文书
接待员岗位职责
2015/02/13 职场文书
退休教师追悼词
2015/06/23 职场文书
运动会广播稿200字
2015/08/19 职场文书