修复网站提示php错误信息泄露的方法及代码「修复网站提示PHP错误信息泄露的方法及代码」

今天想看看站点是否安全,于是用360网站漏洞检测网站:http://webscan.360.cn 扫描站点,发现网站检测出了 PHP错误信息泄露 漏洞,危险级别为高危。看到高危两个字,心里就不淡定了。马上到搜索引擎搜索答案并参考了360官方给出的解决方案,经过不断的修复扫描,终于解决了。下面小编就把解决的方法告诉大家,希望能对各位站长有用。

提示PHP错误信息泄露,得分极低。

出现此问题的原因是通过访问网站php文件时,因为错误信息未关闭,导致网站出错信息输出,暴露网站路径结构,会被恶意利用攻击,从而威胁网站安全。另外,如果这个高危漏洞不解决,过段时间后会在360搜索引擎显示,当用户搜索你的站点的时候,会显示高危站点,分数很低,会造成用户恐慌,不敢访问你的站点。因此网站出现高危漏洞大家一定要抓紧时间修复。

修复后的得分

修复PHP错误信息泄露的解决方法:

第1种方法:将php.ini文件中display_errors值设为off,即可关闭报错提醒。这个方法适合VPS主机,云主机等有控制服务器全部权限的站长使用。

第2种方法:在报错的php文件的

好了,关于 修复网站提示PHP错误信息泄露的方法 就到这里,如果使用360官方给出的方法不能解决,不妨试试此方法,修改前注意备份哦。

修复网站提示php错误信息泄露的方法及代码「修复网站提示PHP错误信息泄露的方法及代码」

php漏洞怎么修复

近日,我们SINE安全对metinfo进行网站安全检测发现,metinfo米拓建站系统存在高危的sql注入漏洞,攻击者可以利用该漏洞对网站的代码陪卖喊进行sql注入攻击,伪造恶意的sql非法语句,对网站的数据库,以及后端服务器进行攻击,该metinfo漏洞影响版本较为广泛,metinfo6.1.0版本,metinfo 6.1.3版本,metinfo 6.2.0都会受到该网站漏洞的攻击。

metinfo建站系统使用的PHP语言开发,数据库采用的是mysql架构开发的,在整体的网站使用过程中,简单易操作,可视化的对网站外观进行设计,第三方API接口丰富,模板文件较多,深受企业网站的青睐,建站成本较低可以一键搭建网站,目前国内使用metinfo建站的网站数量较多,该metinfo漏洞会使大部分的网站受到攻击影响,严重的网站首页被篡改,跳转到其他网站,以及网站被劫持跳转到恶意网站上,包括网站被挂马,快照被劫持等情况都会发生。

关于该metinfo漏洞的分析,我们来看下漏洞产生的原因:

该漏洞产生在member会员文件夹下的basic.php代码文件:

metinfo独有的设计风格,使用了MVC框架进行设计,该漏洞的主要点在于使用了auth类的调用方式,在解码加密过程的算法中出现了问题,我们再来看下代码:

通常加密,以及解密的算法是不可以可逆的,但是metinfo写的代码可以进行伪造函数值进行逆算,我们看这个构造的恶意函数,这里的key值是从前端met_webkeys值里进行获取,将获取到的webkeys值进行写入,并赋值到配置文件里,config目录下的config_safe.php代码里。我们通过查看这个代码,发现写入的值没有办法进行PHP脚本的执行,本来以为可是伪造key值进行写入木马,发现行不通,但是在这个伪造key值的过程可以进行sql注入攻击,采用是延时注入方式进行

关于metinfo漏洞的修复建议,以及安全方案

目前metinfo最新版本发布是2019年3月28日,6.2.0版本,官方并没有针对此sql注入漏洞进行修复,建议网站的运营者对网站的后台地址进行更改,管理员的账芦野号密码进行更改,更改为数字 字符配散 大小写的12位以上的组合方式,对网站的配置文件目录进行安全限制,去掉PHP脚本执行权限,如果自己对代码不是太熟悉,建议找专业的网站安全公司来处理修复漏洞,国内SINE安全,以及绿盟,启明星辰,都是比较不错的网站漏洞修复公司。

修复网站提示php错误信息泄露的方法及代码「修复网站提示PHP错误信息泄露的方法及代码」

PHP CURL内存泄露的解决方法

PHP CURL内存泄露的解决方法

  curl配置平淡无奇拍燃,长时间运行发现一个严困贺中重问题,内存泄露!不论用单线程和多线程都无法避免!是curl访问https站点的时候有bug!

  内存汪山泄露可以通过linux的top命令发现,使用php函数memory_get_usage()不会发现。

  经过反复调试找到解决办法,curl配置添加如下几项解决问题:

  复制代码 代码如下:

  [CURLOPT_HTTPPROXYTUNNEL] = true;

  [CURLOPT_SSL_VERIFYPEER] = false;

  [CURLOPT_SSL_VERIFYHOST] = false;

  CURLOPT_HTTPPROXYTUNNEL具体说明stackoverflow上有,直接贴原文:

  Without CURLOPT_HTTPPROXYTUNNEL

  Without CURLOPT_HTTPPROXYTUNNEL : You just use the proxy address/port as a destination of your HTTP request. The proxy will read the HTTP headers of your query, forward your request to the destination (with your HTTP headers) and then write the response to you.

  Example steps :

  1)HTTP GET / sent to 1.1.1.1 (proxy)

  2)1.1.1.1 receive request and parse header for getting the final destination of your HTTP request.

  3)1.1.1.1 forward your query and headers to www.site.com (destination in request headers).

  4)1.1.1.1 write back to you the response receive from www.site.com

  With CURLOPT_HTTPPROXYTUNNEL

  With CURLOPT_HTTPPROXYTUNNEL : You ask the proxy to open a direct binary connection (like HTTPS, called a TCP Tunnel) directly to your destination by doing a CONNECT HTTP request. When the tunnel is ok, the proxy write you back a HTTP/1.1 200 Connection established. When it received your browser start to query the destination directly : The proxy does not parse HTTP headers and theoretically does not read tunnel datas, it just forward it, thats why it is called a tunnel !

  Example steps :

  1)HTTP CONNECT sent to 1.1.1.1

  2)1.1.1.1 receive HTTP CONNECT and get the ip/port of your final destination (header field of HTTP CONNECT).

  3)1.1.1.1 open a TCP Socket by doing a TCP handshake to your destination 2.22.63.73:80 (ip/port of www.site.com).

  4)1.1.1.1 Make a tunnel by piping your TCP Socket to the TCP Socket opened to 2.22.63.73:80and then write you back HTTP/1.1 200 Connection established witch means that your client can now make your query throw the TCP Tunnel (TCP datas received will be transmited directly to server and vice versa). ;

上一篇: 女销售原来靠这样卖房(楼盘置业顾问提成大概多少)
下一篇: 南充到广安高速公路开工,南充至广安高铁开工