<?php
include "flag.php";
$a = @$_REQUEST['hello'];
eval( "var_dump($a);");
show_source(__FILE__);
?>
//这段代码包含了一个PHP脚本。首先,它包含了一个名为"flag.php"的文件。然后,它定义了一个变量$a,并从请求参数'hello'中获取值。接下来,它使用eval函数对变量$a进行求值,并使用var_dump函数打印出结果。最后,它使用show_source函数显示当前文件的源代码。
这段代码的主要功能是根据请求参数'hello'的值,将其作为PHP代码进行求值并打印出结果。同时,它还展示了当前文件的源代码。
代码的执行步骤如下:
1. 包含"flag.php"文件。
2. 从请求参数'hello'中获取值并赋给变量$a。
3. 使用eval函数对变量$a进行求值,并使用var_dump函数打印出结果。
4. 使用show_source函数显示当前文件的源代码。
以hello为传参数值 构造传参 payload
发现他会打印字符串
于是添加system
执行 dos(windows系统) 或 shell(Linux/Unix系统) 命令,参数字符串command为命令名。另,在windows系统下参数字符串不区分大小写。
发现了flag.php 和 index.php两个文件
查看?
发现什么都没有看看有没有被注释
F12发现flag