RCE漏洞

一、RCE漏洞简介与危害

1. 定义

  • 远程代码执行(RCE) :用户输入的字符串被当作代码执行(如PHP的**`eval()`**)。
  • 远程命令执行 :用户输入的字符串被当作系统命令执行(如**`system()`**)。
  • 关键函数`eval()` , `system()` , `exec()` , `shell_exec()` ,`passthru()`

2. 危害

  • 完全控制服务器:执行任意代码、窃取数据、植入后门。

  • 案例演示

    http

    复制代码
       http://localhost/1.php?x=phpinfo() #代码执行
    
       http://localhost/2.php?x=ipconfig  #命令执行

二、RCE漏洞类型

1. 远程代码执行

  • 原理:用户输入未经过滤,直接传入代码执行函数。

  • 案例

    php
    // vulnerable.php
    echo $_REQUEST['a']; #直接输出用户输入

  • 访问http://example.com/vulnerable.php?a=\<?php phpinfo();?>

2. 远程命令执行

三、公开漏洞利用案例

案例1:Webmin密码重置漏洞(CVE-2019-15107)

影响版本:Webmin <= 1.920

漏洞点:`password_change.cgi`未过滤用户输入,导致代码执行。

利用步骤:

    1. 登录Webmin并拦截请求。
    1. 构造恶意参数触发漏洞。
    1. 获取服务器权限。
案例2:PbootCMS评论注入

漏洞点:评论功能未过滤`eval()`参数。

利用步骤:

    1. 在留言内容中注入PHP代码:
  • `{pboot:if(eval($_POST1))}III{/pboot:if}`
    1. 通过POST请求触发代码执行。

四、CMS漏洞复现(实战案例)

案例1:SeaCMS IP设置漏洞

漏洞点:后台IP白名单配置未过滤特殊字符。

利用步骤:

    1. 登录后台,构造恶意IP:`127.0.0.1";phpinfo();//`
    1. 保存配置,触发代码执行。
案例2:SeaCMS公众号设置漏洞

漏洞点:链接字段未过滤HTML标签。

利用步骤:

    1. 插入恶意代码:
  • `<a href='https://www.seacms.net'>链接</a>";phpinfo();//`
    1. 保存后直接执行PHP代码。

五、防御策略

1. 输入过滤
  • 对用户输入进行严格校验(如白名单、正则匹配)。
  • 禁止危险字符(如**`;`** ,`|` , `&`)。
2. 禁用危险函数
  • 修改**`php.ini`** ,禁用**`eval()`** , **`system()`**等函数:

    ini
    disable_functions = eval,system,exec,passthru,shell_exec

3. 使用安全函数
  • 替代`system()` :使用**`escapeshellcmd()`**过滤命令参数。
  • 替代`eval()`:避免使用,改用其他逻辑实现功能。
4. 沙箱隔离
  • 对高风险功能(如代码编辑器)进行沙箱隔离,限制文件操作权限。

六、总结

RCE漏洞的核心在于用户输入可控且未过滤。防御需结合输入验证、函数管控及环境加固。实战中需关注框架/CMS的已知漏洞(如Webmin CVE-2019-15107),并及时更新补丁。

注:实验环境搭建推荐使用Vulhub或本地靶场(如DVWA),所有操作应在授权范围内进行。

相关推荐
撰卢5 分钟前
网络安全期末大论文
安全·web安全
王哥儿聊AI5 小时前
Lynx:新一代个性化视频生成模型,单图即可生成视频,重新定义身份一致性与视觉质量
人工智能·算法·安全·机器学习·音视频·软件工程
Coovally AI模型快速验证7 小时前
从避障到实时建图:机器学习如何让无人机更智能、更安全、更实用(附微型机载演示示例)
人工智能·深度学习·神经网络·学习·安全·机器学习·无人机
Gobysec8 小时前
Goby 漏洞安全通告|Spring Cloud Gateway 信息泄露漏洞(CVE-2025-41243)
spring boot·安全·cve-2025-41243
有点不太正常8 小时前
FlippedRAG——论文阅读
论文阅读·安全·大模型·rag
挨踢攻城10 小时前
Linux 安全 | 使用 iptables 测量流量
linux·服务器·安全·iptables·linux安全·厦门微思网络·测量流量
通信瓦工10 小时前
IEC 60598-1-2020灯具通用安全要求标准介绍
安全·灯具·标准下载
浅拾光º10 小时前
mysql字符串截取,如何在MySQL备份文件中安全截取敏感字符串?
数据库·mysql·安全
踏过山河,踏过海10 小时前
在SSL证书是有效的前提下,依旧显示“资源不安全
网络协议·安全·ssl
游戏开发爱好者812 小时前
App HTTPS 抓包实战,原理、常见问题与可行工具路线(开发 测试 安全 角度)
网络协议·安全·ios·小程序·https·uni-app·iphone