Pikachu漏洞靶场 RCE(远程命令执行/代码执行)

x33g5p2x  于2022-04-10 转载在 其他  
字(0.7k)|赞(0)|评价(0)|浏览(555)

RCE

概述

RCE(remote command/code execute),远程命令执行/代码执行。

RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。
这里我在C盘下建立了个flag.txt文件,利用RCE漏洞访问到此文件即视为漏洞利用成功。

exec “ping”

可以看出该网页的功能是输入一个IP地址,然后服务器返回ping的结果。

此处存在远程命令执行漏洞,可以利用 &符号。

&顺序执行多条命令,而不管命令是否执行成功。

例如:

ping 127.0.0.1 & ipconfig

计算机会顺序执行这两条命令。

输入127.0.0.1&ipconfig

下图中%26是&的URL编码

输入127.0.0.1&type C:\flag.txt

type是查看文件命令

exec “eval”

eval() 函数把字符串按照 PHP 代码来计算。

该字符串必须是合法的 PHP 代码,且必须以分号结尾。

如果没有在代码字符串中调用 return 语句,则返回 NULL。如果代码中存在解析错误,则 eval() 函数返回 false。

—— W3school

简单来说就是eval()函数可以执行PHP代码。

然后PHP的system()函数可以执行系统命令,这样子远程代码执行就可以编程远程命令执行。

输入 system(“type C:\flag.txt”),正常执行,可以访问到文件。

关键源码:

if(isset($_POST['submit']) && $_POST['txt'] != null){
    if(@!eval($_POST['txt'])){
        $html.="<p>你喜欢的字符还挺奇怪的!</p>";
    }
}

相关文章