个人笔记-渗透测试-RCE

RCE是什么

  • 远程命令执行:Remote Command Execute
    • 应用系统从设计上需要给用户提供指定的远程命令操作的接口。
      比如常见的路由器、防火墙、入侵检测等设备的web管理界面上一般会给用户提供一个ping操作的web界面,用户从web界面输入目标IP,提交后,后台会对该IP地址进行一次ping测试,并返回测试结果。 而设计者在完成该功能时,如果没有做严格的安全控制,则可能会导致攻击者通过该接口提交“意想不到”的命令,从而让后台进行执行,从而控制整个后台服务器
  • 远程代码执行:Remote Code Execute
    • 后台有时候也会把用户的输入作为代码的一部分进行执行,也就造成了远程代码执行漏洞。不管是使用了代码执行的函数,还是使用了不安全的反序列化等等。

漏洞危害

  • 获取服务器权限
  • 获取敏感数据文件
  • 写入恶意文件getshell
  • 植入木马病毒勒索软件等

实际发现的漏洞:

  • CVE-2021-21972 VMWare RCE漏洞
  • CVE-2021-2546
  • CNVD-2020-46552 深信服EDR
  • CNVD-2021-30101

RCE相关的php函数

在这里插入图片描述
在这里插入图片描述

靶场练习

  • Windows命令拼接符号
    在这里插入图片描述
  • Linux命令拼接符号
    在这里插入图片描述
  • pikachu靶场练习
    在这里插入图片描述
    使用payload测试👇:
    127.0.0.1 & whoami
    127.0.0.1 & ipconfig
    在这里插入图片描述
    通过远程代码eval()的执行拿到phpinfo:👇
    在这里插入图片描述

tips:

  • Linux中常见的符号替换
    空格:${IFS}
    flag:f***
    cat:tac more less

  • url中的替换
    回车:%0a
    换行:%0d

  • 在搜索栏构造url绕过验证拿到flag
    127.0.0.1%0acd${IFS}f***_is_here%0amore${IFS}f*
    在这里插入图片描述

RCE防御

  1. 开源框架,升级到最新版本
  2. 尽量不要使用命令执行的函数
  3. 如果必须使用,可以做白名单处理
  4. 用正则表达式对用户输入的内容进行处理
  5. 使用WAF过滤
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值