首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

WinRAR 曝 19 年前重大漏洞,可完全控制电脑!| 附解决方法

  • 24-03-05 03:21
  • 4677
  • 6479
blog.csdn.net

640?wx_fmt=gif

640?wx_fmt=jpeg

整理 | 琥珀

出品 | AI科技大本营(ID:rgznai100)

四大项目,挑战Python全栈工程师?

https://edu.csdn.net/topic/python115?utm_source=csdn_bw

作为目前最受欢迎的电脑解压缩工具之一,WinRAR 号称在全球拥有 5 亿用户。不过最近的情况表明,如果你正在使用这款软件,建议立即升级到 5.70 Beta 1 版本,否则将有可能受到攻击者利用 WinRAR 的代码执行漏洞进行的对计算机的控制。

 

近日,安全公司 Check Point 安全研究员 Nadav Grossman 在一篇文中披露,WinRAR 中存在严重漏洞,可完全控制受害者的计算机。而且,该漏洞已经存在了近 19 年,并迫使 WinRAR 完全放弃对易受攻击 ACE 格式的支持。

 

640?wx_fmt=png

 

传送门:

https://research.checkpoint.com/extracting-code-execution-from-winrar/

 

目前这个漏洞存在于 WinRAR 的 UNACEV2.dll 代码库中,该代码库用于解析 ACE 格式,在解压处理的过程中存在一处目录穿越漏洞,允许解压过程中将文件写入启动文件夹中,导致系统重启后导致代码执行。然后,攻击者可制作一个 ACE 恶意文件,当被 WinRAR 打开时,会利用 UNACEV2.dll 的目标路径,将文件解压到攻击者选择的路径中。视频演示如下:

 

 

 

值得一提的是,早在此前,针对这种类型的漏洞,Zerodium 还给出了漏洞悬赏计划。

 

640?wx_fmt=png

 

研究人员在文中具体介绍了 WinRAR 代码执行漏洞的发现过程。几个月前,他们先利用 Winafl fuzz 对 Windows 环境下的二进制文件进行了模糊测试。

 

传送门:https://github.com/googleprojectzero/winafl

 

以下为准备过程:

 

  1. 在 WInRAR 注函数内创建 hareness,使其能够模糊任何存在当类型而无需为每种格式构造单独的 harness;

  2. 消除用户交互的对话框等 GUI 元素;

  3. 使用奥卢大学 2005 年左右进行的一项有趣研究发布的超大型语料库;

  4. 在 WinRAR 命令行模式下使用 WinAFL 对程序进行模糊处理。

 

通过以上操作后,研究人员发现了 RAR、LZH、ACE 等压缩格式的崩溃,并且在解析 ACE 格式的崩溃时,WinRAR 使用名为 unacev2.dll 的 dll 来解析 ACE 格式文件。这个 dll 从 2006 年起就没有保护机制。

 

在漏洞利用过程中,研究人员试图将 ACE 恶意文件放到启动文件夹中以便在系统启动时执行。

 

示例:

 

研究人员将 .ace 扩展名更改为 .rar 扩展名,因为 WinRAR 会根据文件内容而不是扩展名测试格式。

 

下图为 acefile 的输出:

 

640?wx_fmt=png

通过文件名字段中精心构造的字符串(绿色部分)触发漏洞

 

无论目标文件夹的路径是什么,该存档都将解压缩到 C:\some_folder\some_file.txt

 

那么真实的漏洞利用过程是怎样的?

 

研究人员表示,可以通过从 ACE 存档中提取压缩的可执行文件到其中一个启动文件夹(Startup Folders),从而获得代码执行。

 

制作一个将压缩文件提取到启动文件夹的 ACE 存档,在以下路径中至少有 2 个启动文件夹:

 

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

C:\Users\<用户名>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

 

第一个启动文件夹的路径需要高权限/高完整性级别。但是,WinRAR 默认以中等完整性级别运行。

 

第二个启动文件夹的路径需要知道用户的名称。

 

不过,研究人员向 WinRAR 报告这个代码执行漏洞之后, WinRAR 官方也对此进行了回应表示,目前给出的修复方法就是从软件包中删除 UNACEV2.dll,或者可以下载最新的 5.70 Beta 1 版本。

 

由于 UNACEV2.dll 自 2005 年以来就没有更新,尚无法访问其源代码,因此对于使用这个库来压缩 ACE 格式的用户来说,官方表示只能放弃对其支持。

 

640?wx_fmt=png

官网默认下载的 5.61 版本并非最新版本

 

WinRAR 5.70 Beta 1 下载地址如下:

 

32 位:http://win-rar.com/fileadmin/winrar-versions/wrar57b1.exe

64 位:http://win-rar.com/fileadmin/winrar-versions/winrar-x64-57b1.exe

好学,高效的Python,薪资也这么高:

https://edu.csdn.net/topic/python115?utm_source=csdn_bw

相关链接:

https://research.checkpoint.com/extracting-code-execution-from-winrar/


640?wx_fmt=jpeg

 热 文 推 荐 

☞ 极客头条

☞ 为了完成月入三万的目标,我都做了哪些准备?

☞ 高性能访客记录系统如何设计?

☞ 那些简历造假拿 Offer 的程序员,后来都怎么样了?

☞ 被V神点赞, 我是如何用五子棋打败以太坊排名最高的应用的? |人物志

☞ 50个最有价值的数据可视化图表(推荐收藏)

一键免费自动AI抠图,效果连PS大哥也点赞!

史上最难的一道Java面试题

 

print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!\n");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"

640?wx_fmt=gif点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章。

640?wx_fmt=png喜欢就点击“好看”吧!

CSDN
微信公众号
成就一亿技术人
注:本文转载自blog.csdn.net的CSDN资讯的文章"https://blog.csdn.net/csdnnews/article/details/87887800"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top