【web安全】RCE漏洞原理

前言

菜某的笔记总结,如有错误请指正。

RCE漏洞介绍

简而言之,就是代码中使用了可以把字符串当做代码执行的函数,但是又没有对用户的输入内容做到充分的过滤,导致可以被远程执行一些命令。

RCE漏洞的分类

RCE漏洞分为代码执行和命令执行两种

代码执行

概述:源代码能够把字符串当做代码运行

影响范围:能够做代码能够做的事情

注意事项:这个输入的代码要与源代码的语言相同,即源代码用的php写的就必须用php的语句。
命令执行

概述:源代码能够把字符串当做系统的命令执行

影响范围:可以做系统命令能够做的事情

注意事项:windows和linux的命令是不同的,需要先分辨一下对方系统。

系统的命令连接符

windows系统

|------|--------|----------------|
| 拼接符 | 实例 | 作用 |
| & | A&B | 无论A是否执行成功,都执行B |
| && | A&&B | A执行成功才执行B |
| | | A|B | a错误b就不执行 |
| || | A||B | A执行失败才执行B |

linux系统

&

;

&&

||

()

这个具体用到的时候对照一下吧

常常出现的位置

源代码,中间件,一些环境中。

毕竟开发工具要比做的成品更可能去执行系统命令。

可以遇到相关的cms等直接上网搜索公开的漏洞,如果碰到相应版本的直接干就行了。

RCE漏洞的检测

白盒:审计代码

黑盒:

1.漏洞扫描工具

2.找网上公开的漏洞

3.自己配置参数尝试

4.根据他的功能猜测他可能存在的位置

案例演示

本地自写的代码执行漏洞(PHP脚本)

源代码

打开网址

传入代码

执行成功

pikaqiu靶场命令执行实例

打开发现一个ping窗口,ping是系统指令,判断为执行系统命令

ping127.0.0.1尝试

但是发现仅仅输入ipconfig无法执行命令,所以利用命令拼接符拼接

命令执行成功

小补充

我们的一句话木马用的就是eval函数,实际上就是用一次次把我们输入的字符串转为代码执行。

相关推荐
芯盾时代4 小时前
《网络安全法》完成修改,AI安全正式“入法”
人工智能·安全·web安全
KKKlucifer6 小时前
数据智能时代的安全困局与 AI 破局逻辑
人工智能·安全
华硕广东10 小时前
当电脑开机自动进入 BIOS 更新画面时,不必惊慌~
科技·安全·技术美术
llxxyy卢11 小时前
文件上传之基础过滤方式
安全·web安全
FreeBuf_12 小时前
GlassWorm蠕虫卷土重来:开源安全体系暴露根本性缺陷
安全·开源
CC-NX12 小时前
移动终端安全:实验4-中间人攻击
安全·中间人攻击·安卓逆向工具·burp suite真机抓包
xixixi7777713 小时前
攻击链重构的具体实现思路和分析报告
开发语言·python·安全·工具·攻击链
xixixi7777713 小时前
攻击链重构的技术框架
网络·安全·重构
CyberSecurity_zhang17 小时前
一文理清汽车网络安全法规
网络·安全·web安全
深耕AI18 小时前
【宝塔面板】监控、日志、任务与安全设置
安全·github