fsockopen pfsockopen函数被禁用,SMTP发送邮件不正常的解决方法


Posted in PHP onSeptember 20, 2015

一:近期黑客利用程序漏洞注入后使用 fsockopen 进行PHPDDOS 攻击,导致部分服务器不稳定,现在将危险函数 fsockopen 暂时禁用,部分程序功能可能有问题,以下列出已知问题及通用解决方法:

通用解决方法:
找到程序里的 fsockopen 函数,替换为:pfsockopen,即可解决所有问题,两个函数的区别在于 pfsockopen 保持 keep-alive,使得黑客无法进行 连接数攻击。
已知使用 fsockopen 函数的程序文件路径(在fsockopen 前加 p, 即fsockopen 修改为 pfsockopen 即可 )

二:服务器同时禁用了fsockopen pfsockopen,那么用其他函数代替,如stream_socket_client()。注意:stream_socket_client()和fsockopen()的参数不同。
具体操作:
搜索程序中的字符串 fsockopen( 替换为 stream_socket_client( ,然后,将原fsockopen函数中的端口参数“80”删掉,并加到$host。
示例如下

修改前:

$fp = fsockopen($host, 80, $errno, $errstr, 30);

修改后:

$fp = stream_socket_client($host."80", $errno, $errstr, 30);
国内主流PHP网站涉及fsockopen函数的网站系统中的文件列表:
国内主流PHP网站涉及fsockopen函数的网站系统中的文件列表:

DEDECMS:
 

source\function\function_core.php  这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_client\client.php  这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_client\lib\sendmail.inc.php

uc_client\model\misc.php 这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_server\install\func.inc.php 这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_server\lib\sendmail.inc.php

uc_server\model\misc.php 这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

Discuz! 2.5:

source\function\function_core.php  这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_client\client.php  这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_client\lib\sendmail.inc.php

uc_client\model\misc.php 这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_server\install\func.inc.php 这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

uc_server\lib\sendmail.inc.php

uc_server\model\misc.php 这个文件有2处fsockopen,另外的是pfsockopen,请注意区分

ecms(帝国):

e\class\class.smtp.php
 
ECSHOP:

admin\index.php

demo\includes\lib_updater.php

includes\cls_smtp.php

includes\cls_transport.php

includes\lib_base.php

includes\modules\payment\paypal.php

 
shopex:
 
core\api\include\api_utility.php

core\api\tools\1.0\api_b2b_1_0_tools.php

core\func_ext.php

core\lib\nusoap.php

core\lib\uc_client\client.php

instal\svinfo.php

plugins\passport\passport.ucenter.php

plugins\payment\pay.nochek.php

plugins\pay.paypal.php

plugins\pay.paypal.server.php

plugins\pay.paypal_cn.php
PHP 相关文章推荐
PHP远程连接MYSQL数据库非常慢的解决方法
Jul 05 PHP
PHP命令行脚本接收传入参数的三种方式
Aug 20 PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
Nov 19 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
Jun 12 PHP
简单的自定义php模板引擎
Aug 26 PHP
php自定义扩展名获取函数示例
Dec 12 PHP
Laravel中日期时间处理包Carbon的简单使用
Sep 21 PHP
PDO::prepare讲解
Jan 29 PHP
PHP函数积累总结
Mar 19 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
Mar 24 PHP
php实现对短信验证码发送次数的限制实例讲解
Mar 04 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Mar 09 PHP
分享ThinkPHP3.2中关联查询解决思路
Sep 20 #PHP
使用PHPCMS搭建wap手机网站
Sep 20 #PHP
求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路
Sep 20 #PHP
PHP执行SQL文件并将SQL文件导入到数据库
Sep 17 #PHP
如何使用PHP对网站验证码进行破解
Sep 17 #PHP
浅谈php+phpStorm+xdebug配置方法
Sep 17 #PHP
PHP 9 大缓存技术总结
Sep 17 #PHP
You might like
用定制的PHP应用程序来获取Web服务器的状态信息
2006/10/09 PHP
php数组合并的二种方法
2014/03/21 PHP
Symfony页面的基本创建实例详解
2015/01/26 PHP
php中文语义分析实现方法示例
2019/09/28 PHP
Fastest way to build an HTML string(拼装html字符串的最快方法)
2011/08/20 Javascript
jQuery创建自定义的选择器用以选择高度大于100的超链接实例
2015/03/18 Javascript
jQuery+Ajax实现无刷新操作
2016/01/04 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
巧用canvas
2017/01/21 Javascript
vue 插值 v-once,v-text, v-html详解
2018/01/19 Javascript
微信小程序--特定区域滚动到顶部时固定的方法
2019/04/28 Javascript
vue中添加与删除关键字搜索功能
2019/10/12 Javascript
Vue数据双向绑定底层实现原理
2019/11/22 Javascript
Vue开发环境跨域访问问题
2020/01/22 Javascript
javascript 使用sleep函数的常见方法详解
2020/04/26 Javascript
[04:03]DOTA2肉山黑名单梦之声 风暴之灵中文配音鉴赏
2013/07/03 DOTA
详解用Python处理HTML转义字符的5种方式
2017/12/27 Python
python 读取摄像头数据并保存的实例
2018/08/03 Python
python 利用for循环 保存多个图像或者文件的实例
2018/11/09 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
django和vue实现数据交互的方法
2019/08/21 Python
浅析python中while循环和for循环
2019/11/19 Python
解决Python列表字符不区分大小写的问题
2019/12/19 Python
基于tensorflow for循环 while循环案例
2020/06/30 Python
python+requests实现接口测试的完整步骤
2020/10/27 Python
python 利用matplotlib在3D空间绘制二次抛物面的案例
2021/02/06 Python
美国林业供应商:Forestry Suppliers
2019/05/01 全球购物
一些Solaris面试题
2015/12/22 面试题
好邻里事迹材料
2014/01/16 职场文书
学生会部长竞聘书
2014/03/31 职场文书
酒店服务员岗位职责
2015/02/09 职场文书
百年校庆宣传标语口号
2015/12/26 职场文书
多属性、多分类MySQL模式设计
2021/04/05 MySQL
MySQL中varchar和char类型的区别
2021/11/17 MySQL
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers