小迪Web自用笔记58

Rce命令执行代码执行漏洞。

代码执行转化为命令执行。

Eval后面直接输入system包含

也可以将命令转换为代码,开启PHP环境直接写入。

命令执行漏洞可以反弹,让他把数据包交到另一个服务器上,接收解析,代码执行可以写恶意脚本。

后门执行就是代码执行漏洞原理。

点击进入的时候,它就会触发一串代码,然后执行代码。

代码执行,他会把后面的你输入的代码给执行了。然后你连接就可以连接上,和后门传递连接是一码事。

直接在你电脑里面操作,然后写一个文件进去。

*还有Linux操作系统绕过也挺有意思的(有空学一下)

仅限于命令执行,而且是Linux内核,如果是文件上传的话,首先你得能利用文件上传漏洞调取Cmd才能用这些绕过。

直接回答:是的,文件上传漏洞本身不一定能直接调用系统命令行,但它通常是攻击者获得系统命令执行权限的"垫脚石"和关键一步。

简单来说,文件上传漏洞为攻击者提供了一个"入口",让他们可以将一个恶意的"工具"或"指令集"放到你的服务器上。然后,他们需要找到一种方法让服务器"运行"这个工具,从而调用系统命令行。

下面我们来详细分解这个过程和几种典型情况:

  1. 最直接的情况:上传可执行文件

如果服务器配置不当,允许上传如 .exe、 .sh、 .py 等可执行文件,并且知道这些文件的存放路径,攻击者理论上可以直接通过URL访问并执行它们。但在Web应用中,这种情况相对少见,因为Web服务器通常不会直接执行任意上传的可执行文件。

  1. 最常见且危险的情况:上传Webshell

这是文件上传漏洞导致命令执行的最主要途径。攻击者会上传一个特殊的脚本文件,这个文件本身就是一个Web页面,但包含了执行系统命令的代码。这种文件被称为 Webshell。

攻击流程:

  1. 发现漏洞:攻击者找到一个存在文件上传漏洞的网站(例如,可以上传图片,但未对文件类型进行严格校验)。

  2. 上传Webshell:攻击者将一张图片与Webshell代码结合(通过修改文件头等方式绕过检查),或者直接上传一个如 shell.php 的文件。

  3. 访问Webshell:攻击者通过浏览器访问这个上传成功的Webshell文件(例如 http://目标网站/uploads/shell.php)。

  4. 执行命令:Webshell被服务器端的PHP引擎解析执行,攻击者就可以通过它向服务器发送任意系统命令。

Webshell示例(PHP):

一个最简单的PHP Webshell如下:

```php

<?php system($_GET['cmd']); ?>

```

· 攻击者上传这个文件为 cmd.php。

· 然后访问:http://目标网站/uploads/cmd.php?cmd=whoami

· 服务器会执行 whoami 命令,并将结果返回给攻击者的浏览器,告诉攻击者当前Web服务器运行的用户身份。

通过这个简单的接口,攻击者可以执行 ls、dir、cat、wget、curl 等任何系统命令,完全控制服务器。

  1. 利用其他漏洞组合攻击

有时,单独的文件上传漏洞可能无法直接执行命令,但可以与其他漏洞结合,形成更强大的攻击链。

· 与服务端模板注入(SSTI)结合:如果上传的文件内容会被服务器的模板引擎解析(例如,上传一个包含恶意模板代码的配置文件),攻击者可能通过模板语法执行系统命令。

· 与XXE漏洞结合:如果上传的是XML文件,并且服务器会解析该XML,可能利用XXE漏洞读取系统文件或执行命令。

· 与解析漏洞结合:著名的服务器解析漏洞,如IIS 6.0的目录解析漏洞(/upload/test.asp;.jpg 会被当作ASP文件执行)、Apache的解析漏洞(test.php.jpg 在某些配置下会被当作PHP执行)等,可以让攻击者即使上传了图片格式的文件,也能让服务器以脚本方式执行它。

  1. 利用应用程序本身的功能

某些应用程序的功能本身就需要调用系统命令。例如,一个图像处理网站可能需要调用 ImageMagick 的命令行工具来处理图片。如果攻击者能上传一个精心制作的"图片"文件,该文件实际上是一个攻击 ImageMagick 本身漏洞的恶意文件(如著名的ImageTragick漏洞),那么当应用程序去处理这个图片时,就会触发漏洞,执行攻击者预设的系统命令。

总结与防御

核心要点:

· 文件上传漏洞本身 ≠ 命令执行。

· 文件上传漏洞 + 文件被执行的可能性 = 命令执行的高风险。

防御措施:

为了杜绝通过文件上传漏洞导致的命令执行,必须采取纵深防御策略:

  1. 白名单验证:只允许上传指定的、安全的文件类型(如 .jpg, .png),而不是黑名单。

  2. 重命名文件:为上传的文件生成一个随机的文件名,并加上正确的后缀,避免攻击者直接访问到原文件。

  3. 控制存储路径:将上传的文件存储在Web根目录之外,防止通过URL直接访问。如果必须Web访问,应通过专门的文件服务或脚本进行读取,而不是直接执行。

  4. 设置严格的权限:确保上传目录没有执行权限(例如,在Apache中可以使用 .htaccess 设置 php_flag engine off)。

  5. 检查文件内容:对图片等文件进行二次渲染或内容检查,确保其是有效的、无害的文件。

  6. 使用安全框架/库:使用成熟的安全库来处理文件上传,避免自己实现时产生逻辑漏洞。

总之,文件上传漏洞是一个非常严重的威胁,它就像是为攻击者打开了一扇"后门",使得后续的代码执行和系统控制成为可能。

*操作系统挺有意思的。

*特性

这是一个在 Python 开发环境(PyCharm) 中运行的脚本( rce-xor.py ),主要用于测试 远程命令执行(RCE)漏洞 以及 绕过安全检测 的技术。

核心功能拆解

  1. 命令执行:

脚本中调用了 system 函数(从输出 [+] your function: system 可知),并执行系统命令 ipconfig (用于查看网络配置,常见于 Windows 系统)。

这是 远程命令执行(RCE) 的典型行为------通过漏洞让目标系统执行攻击者指定的命令。

  1. 异或编码(XOR)混淆:

截图中高亮的长字符串(如 ("%08%02%08%03%05%0d"^"%7b%7b%7b%7c%60%60")("%09%0b%03%0f%0e%06%09%07"^"%60%7b%60%60%60%60%60") )是经过 异或(XOR)编码 处理的恶意代码。

  • 作用:异或编码可以打乱原始代码的特征(比如常见的恶意函数名、关键字),使其看起来像随机字符,从而绕过 WAF(Web 应用防火墙) 或杀毒软件的"特征码检测",达到 混淆和免杀 的效果。

  • 原理:异或运算具有可逆性( A XOR B XOR B = A ),攻击者可以预先对恶意代码进行异或加密,在目标系统执行时再解密还原,以此逃避检测。

场景推测

这种脚本通常用于 渗透测试 或 漏洞验证 场景:

  • 安全研究员会用它测试目标服务器是否存在文件上传、代码注入等可导致 RCE 的漏洞。

  • 通过异或编码混淆 payload,验证能否绕过服务器的安全防护(如 WAF、杀毒软件),成功执行系统命令。

简单来说,这是一套 "用编码混淆技术包装恶意命令,测试目标系统是否能被远程控制" 的工具脚本。

异或运算无字符rce漏洞。

又是无回显的问题,一个直接拼一下目标网站看看能不能拼通,另一个把文件写进去看看能不能访问。

还有一种绕过是把真实参数代码传递给变量。

cms一个东西可以绕过就可以挖。

白盒,代码审计。

黑盒,思路揣测。

找到符合它代码逻辑的地方猜测。

相关推荐
王景程12 天前
如何搭建IoT机器视觉
adb·android studio·web app·lavarel
逻极18 天前
Spec-Kit 实战指南:从零到一构建“照片拖拽相册”Web App
人工智能·ai·agent·ai编程·web app
weixin_3077791318 天前
AWS Elastic Beanstalk 实现 Java 应用高可用部署指南
java·开发语言·云计算·aws·web app
weixin_3077791319 天前
用Python和FastAPI构建一个完整的企业级AI Agent微服务脚手架
python·fastapi·web app
星光一影19 天前
打车/网约车、代驾、顺风车/拼车、货运、租车等多种出行服务的一站式解决方案
mysql·微信小程序·php·uniapp·html5·web app
CS Beginner22 天前
【IDEA】记录webapp下创建相同目录的一次错误
java·intellij-idea·web app
爱知菜25 天前
在Azure webapp中搭建 基于chroma的 RAG agent
chroma·web app
2401_885405511 个月前
定位守护童年,科技构筑安全屏障
科技·物联网·安全·小程序·宠物·web app·智能手表
合作小小程序员小小店1 个月前
web开发,学院培养计划系统,基于Python,FlaskWeb,Mysql数据库
后端·python·mysql·django·web app
牢七2 个月前
小迪web自用笔记59
web app