实验环境:php5.2、Apache
实验原理:当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能够控制这个字符串,将造成代码注入漏洞
实验步骤:
实验一:
1.php代码如下:
<?php
$data=$_GET['data'];
echo preg_replace("/test/e",$data,"just test");
?>
2.在前端给data传值,执行结果如下:

实验二:
1.php代码如下:
<?php
$data=$_GET['data'];
eval("\$ret=$data;");
echo $ret;
?>
2.在前端给data变量传值,执行结果如下:

实验三:
1.php代码如下
<?php
$data=$_GET['data'];
eval("\$ret=strtolower('$data');");
echo $ret;
?>
2.在前端给data变量传值:22');phpinfo();//,执行结果如下:


本文通过实验环境php5.2和Apache,探讨代码执行漏洞的原理,当应用程序使用可将字符串转换为代码的函数时,如果没有正确过滤用户输入,可能导致代码注入问题。文章详细展示了三个实验步骤,演示了不同情况下代码执行的结果。
最低0.47元/天 解锁文章
8939

被折叠的 条评论
为什么被折叠?



