笔记(第八天)

一、安装docker和docker-compose

一、docker的安装

二、docker compose

二、vulhub中的漏洞复现

1.Tomcat弱口令

先在docker中配置好环境

下载完成后打开tomcat管理页面http://192.168.47.136:8080/manager/html

输入弱密码tomcat:tomcat,即可访问后台:

上传war包即可直接getshell

2.weblogic 弱口令

下载好环境以后

搭配好环境访问http://192.168.47.136:7001/console,即为weblogic后台

登录上去

本环境前台模拟了一个任意文件下载漏洞,访问http://your-ip:7001/hello/file.jsp?path=/etc/passwd可见成功读取passwd文件

weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可。这两个文件均位于base_domain下,名为SerializedSystemIni.datconfig.xml,在本环境中为./security/SerializedSystemIni.dat./config/config.xml(基于当前目录/root/Oracle/Middleware/user_projects/domains/base_domain)。

SerializedSystemIni.dat是一个二进制文件,用burpsuite来读取

即可获取到加密解密密文

3.apache 换行解析

配置环境

完成后打开靶场

进行抓包

上传失败

此时我们抓取上传文件包,在文件名后添加一个\x0A,(注意,不能是\x0D\x0A,只能是一个\x0A

要点到hex界面,注意它这里文件名后面本来就是有一个0d0a的,我们点击0d选择插入一个字节

我们访问刚才上传的evil.php%0a,发现能够成功解析,但这个文件不是php后缀,说明目标存在解析漏洞。

4.Apache Druid Embedded Javascript Remote Code Execution (CVE-2021-25646)

配置好环境

三、RCE漏洞原理与常见场景

一、RCE漏洞概述

远程代码执行(Remote Code Execution, RCE)漏洞是一种严重的安全漏洞类型,它允许攻击者在受害者的远程系统上执行任意代码或命令。这意味着攻击者可以越过应用程序的正常边界,直接操控目标服务器或设备的核心功能,可能导致数据泄露、系统破坏、安装恶意软件,甚至完全控制目标系统。

二、RCE漏洞原理

RCE漏洞的根本原因在于应用程序未能正确验证用户输入,或者在处理敏感操作时未能进行严格的权限控制。具体原理如下:

不安全的数据处理:

当Web应用或API接受用户输入并在后端处理时,如果未经充分过滤或转义就将其作为命令或脚本的一部分执行,攻击者就能通过精心构造的输入插入恶意代码。
例如,假设一个网站有一个用于执行系统命令的功能,但没有对用户提供的参数进行检查。攻击者可能提交类似于 ping; rm -rf / 的命令,系统将会先执行正常的ping命令,随后删除所有文件,这就是典型的命令注入导致的RCE。

不安全的API调用:

应用程序在调用外部系统API或组件时,如果信任了不可信的数据,也可能触发RCE。例如,一些编程语言库在处理反序列化操作时,如果没有对反序列化的对象进行安全检查,攻击者就可以通过构造特殊的序列化数据来执行任意代码。
未修补的漏洞利用:

许多RCE漏洞源于第三方软件或系统组件中的已知漏洞。例如,早期的FastCGI PHP解析器存在漏洞,攻击者可以通过特制的HTTP请求,注入并执行PHP代码。


三、RCE漏洞常见场景

Web应用程序:

CGI脚本或ASP.NET页面在执行系统命令时没有对用户输入进行过滤,导致命令注入漏洞,进而转化为RCE。
PHP、JSP、ASP等动态网页语言的某些函数(如eval()、system()、exec()等)如果不恰当地处理用户输入,也会产生RCE漏洞。
API接口:

RESTful API或SOAP服务在处理XML或JSON数据时,如果存在反序列化漏洞,攻击者可能通过构造特殊的数据结构,使服务器执行恶意代码。
应用程序依赖的第三方库,如Java中的Fastjson、Jackson等,在处理JSON时如果没有妥善处理字符串解析,可能引发RCE。
文件上传漏洞:

不安全的文件上传功能使得攻击者可以上传恶意脚本文件,然后通过某种方式(如URL重写、目录遍历等)访问并执行这个文件,达成RCE。
邮件系统:

某些邮件客户端或服务器软件在解析MIME格式邮件时,可能因处理不当而受到攻击,导致恶意代码被执行。
网络设备管理界面:

如前所述,网络设备如路由器、交换机、防火墙等的Web管理界面,若存在设计缺陷,可能导致RCE。例如,原本用来ping目标主机的接口,却因为没有对输入过滤,让攻击者执行任意系统命令。


四、RCE漏洞的防范与缓解

严格输入验证:确保所有不受信任的输入都经过严格的过滤和校验,不允许包含可能构成命令或代码的特殊字符。
最小权限原则:确保执行系统命令或API调用的应用程序进程拥有尽可能低的权限,以限制攻击者一旦成功利用RCE后的行动范围。
代码审查与安全编码:开发团队应遵循安全编码规范,避免使用易导致RCE的危险函数,并定期进行代码审计。
及时更新补丁:保持所有系统和第三方组件的最新状态,尽快修补已知的安全漏洞。
沙箱技术:在可能的情况下,采用沙箱或者其他形式的隔离技术,限制代码执行的环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值