<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[[安全扫描]记录在案的一些需要禁用的PHP危险函数]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Php/Js/Shell/Go]]></category>
<pubDate>Fri, 17 May 2013 02:04:53 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	背景：外包项目代码审查主要是对delete相关，where里的索引，再就是对相关函数的检查，其SQL注入等，一般框架有很好的支持和过滤，这块弱化，但上线得提交一下安全扫描来弥补，对这些函数最好是用linux的grep来实现，简单点的如下：。<br/><textarea name="code" class="php" rows="15" cols="100">
grep -Erin &#039;phpinfo&#124;passthru&#124;exec&#124;system&#124;chroot&#124;scandir&#124;chgrp&#124;chown&#124;shell_exec&#124;proc_open&#124;proc_get_status&#124;error_log&#124;ini_alter&#124;ini_set&#124;ini_restore&#124;dl&#124;pfsockopen&#124;syslog&#124;readlink&#124;symlink&#124;popen&#124;stream_socket_server&#124;putenv&#039;&nbsp;&nbsp;./ 
</textarea><br/>更详细的去svn目录的（新版本的svn好像没有了），最好去那个开发的目录grep，否则出一堆乱七八糟的东东出来：<br/><textarea name="code" class="C" rows="15" cols="100">
find&nbsp;&nbsp;. -name &quot;*.php&quot;&#124;grep -v &quot;svn&quot; &#124;xargs grep -Erin &#039;phpinfo&#124;passthru&#124;exec&#124;system&#124;chroot&#124;scandir&#124;chgrp&#124;chown&#124;shell_exec&#124;proc_open&#124;proc_get_status&#124;error_log&#124;ini_alter&#124;ini_set&#124;ini_restore&#124;dl&#124;pfsockopen&#124;syslog&#124;readlink&#124;symlink&#124;popen&#124;stream_socket_server&#124;putenv&#039; 
</textarea><br/>当然也可以自己编写脚本实现，用一个系统来完成也成。<br/><br/>phpinfo()<br/>功能描述：输出 PHP 环境信息以及相关的模块、WEB 环境等信息。<br/>危险等级：中<br/><br/>passthru()<br/>功能描述：允许执行一个外部程序并回显输出，类似于 exec()。<br/>危险等级：高<br/><br/>exec()<br/>功能描述：允许执行一个外部程序（如 UNIX Shell 或 CMD 命令等）。<br/>危险等级：高<br/><br/>system()<br/>功能描述：允许执行一个外部程序并回显输出，类似于 passthru()。<br/>危险等级：高<br/><br/>chroot()<br/>功能描述：可改变当前 PHP 进程的工作根目录，仅当系统支持 CLI 模式<br/>PHP 时才能工作，且该函数不适用于 Windows 系统。<br/>危险等级：高<br/><br/>scandir()<br/>功能描述：列出指定路径中的文件和目录。<br/>危险等级：中<br/><br/>chgrp()<br/>功能描述：改变文件或目录所属的用户组。<br/>危险等级：高<br/><br/>chown()<br/>功能描述：改变文件或目录的所有者。<br/>危险等级：高<br/><br/>shell_exec()<br/>功能描述：通过 Shell 执行命令，并将执行结果作为字符串返回。<br/>危险等级：高<br/><br/>proc_open()<br/>功能描述：执行一个命令并打开文件指针用于读取以及写入。<br/>危险等级：高<br/><br/>proc_get_status()<br/>功能描述：获取使用 proc_open() 所打开进程的信息。<br/>危险等级：高<br/><br/>error_log()<br/>功能描述：将错误信息发送到指定位置（文件）。<br/>安全备注：在某些版本的 PHP 中，可使用 error_log() 绕过 PHP safe mode，<br/>执行任意命令。<br/>危险等级：低<br/><br/>ini_alter()<br/>功能描述：是 ini_set() 函数的一个别名函数，功能与 ini_set() 相同。<br/>具体参见 ini_set()。<br/>危险等级：高<br/><br/>ini_set()<br/>功能描述：可用于修改、设置 PHP 环境配置参数。<br/>危险等级：高<br/><br/>ini_restore()<br/>功能描述：可用于恢复 PHP 环境配置参数到其初始值。<br/>危险等级：高<br/><br/>dl()<br/>功能描述：在 PHP 进行运行过程当中（而非启动时）加载一个 PHP 外部模块。<br/>危险等级：高<br/><br/>pfsockopen()<br/>功能描述：建立一个 Internet 或 UNIX 域的 socket 持久连接。<br/>危险等级：高<br/><br/>syslog()<br/>功能描述：可调用 UNIX 系统的系统层 syslog() 函数。<br/>危险等级：中<br/><br/>readlink()<br/>功能描述：返回符号连接指向的目标文件内容。<br/>危险等级：中<br/><br/>symlink()<br/>功能描述：在 UNIX 系统中建立一个符号链接。<br/>危险等级：高<br/><br/>popen()<br/>功能描述：可通过 popen() 的参数传递一条命令，并对 popen() 所打开的文件进行执行。<br/>危险等级：高<br/><br/>stream_socket_server()<br/>功能描述：建立一个 Internet 或 UNIX 服务器连接。<br/>危险等级：中<br/><br/>putenv()<br/>功能描述：用于在 PHP 运行时改变系统字符集环境。在低于 5.2.6 版本的 PHP 中，可利用该函数<br/>修改系统字符集环境后，利用 sendmail 指令发送特殊参数执行系统 SHELL 命令。<br/>危险等级：高<br/><br/>禁用方法如下：<br/>打开/etc/php.ini文件，<br/>查找到 disable_functions ，添加需禁用的函数名，如下：<br/>phpinfo,eval,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<br/>来自：http://www.cnblogs.com/huaxiamingwang/archive/2012/02/22/2363849.html
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] [安全扫描]记录在案的一些需要禁用的PHP危险函数]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>