bugku -- eval

发布时间:2023年12月17日

 <?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

文章来源:https://blog.csdn.net/qq_51802152/article/details/134973773
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。