开发人员在编写应用时,尤其是企业级的应用,需要调用一些执行系统命令的函数,如PHP中的system、exec、shell_exec、passthru、popen、proc_popen等。对于开发人员而言,使用这些函数可以方便去除系统的特殊功能等。这也产生了一些命令执行漏洞。当攻击者在渗透应用的过程中,意外控制了这些函数中的参数时,就可以将恶意系统代码拼接到正常的代码当中,从而造成系统命令执行攻击。本文以PHP程序为例介绍命令执行漏洞。1.PHP命令执行漏洞PHP是一门脚本语言,其优点简洁、方便,但是伴随着的问题有速度慢、无法接触到系统底层等。所以在编写应用程序的过程中,往往会调用一些执行系统命令的函数,而这也是造成命令执行漏洞的条件之一。攻击者还可以在输入参数的地方输入恶意代码拼接到正常代码中,这就是开发人员的代码过滤环节做到不严谨导致的。下面我们通过实例来介绍攻击的形成。首先在本机上搭建PHP环境,然后编写一段PHP文件如下:?
PHPSystem($_GET[‘cmd’]);?之后访问
转载请注明:http://www.guyukameng.com/html/html1/14205.html