RCE远程命令执行
RCE(remote command/code execute ,远程命令执行)
可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。
前面对rce 的一些基础知识进行学习:RCE学习
下面通过 pikachu 靶场对 rce 漏洞的两种形式进行测试。
exec“ping”
远程系统命令执行
后台对用户输入的IP地址进行一次 ping 测试,并返回测试结果。
尝试 ping 一下本地127.0.0.1
可以看到 ping 成功了。
不过这里存在乱码,靶场是放在 Windows 下的,用网上文章上的方法暂时无法解决。这里测试能 ping 成功就行。
用一下管道符执行两条命令:
可以看到除了上面执行了 127.0.0.1 ,还执行了 whoami 。
打开靶场根目录,查看源代码。
可以看到后台对我们输入的内容未做任何处理或校验。
——
——
exec“evel”
远程代码执行
后台把用户的输入作为代码的一部分进行执行,造成了远程代码执行漏洞。
尝试提交代码:phpinfo();
点击提交可以看到代码成功执行,来到了 php 版本界面。
打开靶场根目录里的源文件,可以看到不存在任何校验。直接把输入的内容放在 eval() 函数中。