KeePass CVE-2023-32784:进程内存转储检测

KeePass CVE-2023-32784:进程内存转储检测

KeePass 是一种流行的开源密码管理器,可以在 Windows、Mac 或 Linux 上运行。该漏洞允许从正在运行的进程的内存中以明文形式提取主密钥。主密钥将允许攻击者访问所有存储的凭据

强烈建议更新到KeePass 2.54以修复该漏洞

在本文将解释新漏洞 CVE-2023-32784,其工作原理以及当攻击者获得对系统的完全访问权限并执行其他技术来窃取凭据时如何检测此类攻击

Linux 内存中的凭证

在谈论Linux的凭证时,我们通常会想到/etc/shadow文件,但那并不是密码可能存储的唯一位置。许多进程也会将凭证存储在内存中,恶意工具会尝试提取这些凭证。例如,在下面描述的proc目录就是这种攻击类型的一个常见向量

来自Linux内核文档:
/proc目录包含(除其他内容外)系统上运行的每个进程都有一个子目录,以该进程ID(PID)命名。”

MITRE定义了对proc文件系统进行凭证获取的敌对行为称为操作系统凭证转储:Proc文件系统T1003.007

什么是 KeePass CVE-2023-32784?

CVE-2023-32784允许从内存转储中恢复明文主密码。内存转储可以是KeePass进程转储、交换文件(pagefile.sys)、休眠文件(hiberfil.sys)或整个系统的RAM转储

KeePass 2.X使用自定义开发的密码输入文本框SecureTextBoxEx。在这个CVE中被利用的漏洞是,每输入一个字符,就会在内存中创建一个剩余字符串。由于.NET的工作原理,一旦它被创建出来几乎不可能摆脱它。例如,当键入“Password”时,将产生以下剩余字符串: •a, ••s, •••s, ••••w, •••••o, ••••••r, •••••••d.第一个字符无法恢复

为了重现该场景,我们使用了18.04.1-Ubuntu和Linux上的KeePass 2.38版本。概念验证(PoC)基于此Github仓库,并且也是原始PoC的一部分

我们使用的 PoC 按照以下步骤提取 KeePass 密钥:

  • 首先,扫描所有/proc/<pid>/cmdline文件并存储带有关键字 KeePass 的文件的 pid
  • /proc/<pid>/maps然后,获取不与库直接关联的内存映射的地址
  • 最后,利用 . 将所有这些映射的内存存储到缓冲区中/proc/<pid>/mem。解析内存以尝试查找用户输入主密码时剩余的字符串,这些字符串依次为 •a、••s、•••s

Keepass CVE-2023-32784

正如我们在上图中看到的,主密钥在没有第一个字符的情况下被暴露

如何检测 KeePass CVE-2023-32784

为了检测这种类型的攻击,我们应该能够监控/proc未知进程对文件夹的访问。这将触发警报,我们可以进一步调查。

在这种情况下,我们需要调整策略 从/proc文件中读取环境变量或创建一个新的**

为了正确触发此规则,我们应该修改条件以捕获PoC 中用于获取 KeePass 主密码的/proc/<pid>/cmdline/proc/<pid>/maps或 的读取。/proc/<pid>/mem

- rule: Dump memory detectiondesc: An attempt to read process environment variables from /proc filescondition: >open_read and container and (fd.name glob "/proc/*/mem" or fd.name glob "/proc/*/maps")output: >Detected process memory dump to search for credentials (proc.name=%proc.name 
proc.pname=%proc.pname fd.name=%fd.name container=%container.info evt.type=%evt.type 
evt.arg.request=%evt.arg.request proc.pid=%proc.pid proc.cwd=%proc.cwd proc.ppid=%proc.ppid 
proc.cmdline=%proc.cmdline proc.pcmdline=%proc.pcmdline)<small>
<span class="shcb-language__paren"></span></small>

通过这条新策略,我们能够检测到 CVE-2023-32784 的利用

Keepass CVE-2023-32784

该告警包含我们继续调查威胁所需的所有信息

10:47:47.232147057: Warning Detected process memory dump to search for credentials 
(proc.name=dump proc.pname=sudo fd.name=/proc/2859/mem container=host (id=host) 
evt.type=openat evt.arg.request=<NA> proc.pid=2916 
proc.cwd=/home/kpdemo/CVE-2023-32784-keepass-linux/ proc.ppid=2915 
proc.cmdline=dump proc.pcmdline=sudo ./dump gparent=bash ggparent=gnome-terminal- 
gggparent=systemd proc.sid=2802 
proc.exepath=/home/kpdemo/CVE-2023-32784-keepass-linux/dump user.uid=0 
user.loginuid=1000 user.loginname=kpdemo user.name=root group.gid=0 group.name=root 
container.id=host container.name=host image=<NA>)<small>
<span class="shcb-language__paren"></span></small>

正如漏洞利用中所述,如果攻击者在您的计算机中拥有足够的权限和能力,则攻击者可能能够执行任何恶意操作。然而,这条策略可以让我们知道我们的凭据是否被破坏并采取相应的行动

更多转储进程内存的工具

如果我们对此类技术进行更多研究,我们会发现还有其他工具可以执行类似的操作。让我们看看几个以及如何以相同的方式检测它们

Mimipenguin

Mimipenguin 2.0是一个转储当前 Linux 桌面用户登录密码的工具。它改编自流行的 Windows 凭据窃取工具 mimikatz 背后的想法

Keepass CVE-2023-32784

该工具尝试执行类似于 KeePass PoC 的操作,但在这种情况下,它找不到密钥(因为未实现 CVE)。但是,它能够获取系统凭据。在上图中,我们可以看到两个警报;第一个是检测对/proc/<pid>/mem

10:56:59.508184318: Warning Detected process memory dump to search for credentials 
(proc.name=python proc.pname=sudo fd.name=/proc/1114/mem container=host (id=host) 
evt.type=openat evt.arg.request=<NA> proc.pid=7194 proc.cwd=/home/kpdemo/mimipenguin/ 
proc.ppid=7193 proc.cmdline=python mimipenguin.py proc.pcmdline=sudo python 
mimipenguin.py gparent=bash ggparent=gnome-terminal- gggparent=systemd 
proc.sid=2802 proc.exepath=/usr/bin/python user.uid=0 user.loginuid=1000 
user.loginname=kpdemo user.name=root group.gid=0 group.name=root container.id=host 
container.name=host image=<NA>)<small><span class="shcb-language__paren"></span></small>

第二个是它/etc/shadow从提取用户密码的地方获取访问权限

10:57:52.447428441: Warning Sensitive file opened for reading by non-trusted program 
(user=root user_loginuid=1000 program=python command=python mimipenguin.py pid=7194 
file=/etc/shadow parent=sudo gparent=bash ggparent=gnome-terminal- gggparent=systemd 
container_id=host image=<NA>)<small><span class="shcb-language__paren"></span></small>

LaZagne

LaZagne是一个开源应用程序,用于检索本地计算机上存储的大量密码。在这种情况下,它不仅关注内存,还使用不同的技术(纯文本、API、自定义算法、数据库等)搜索凭证

Keepass CVE-2023-32784

在此示例中,我们再次收到检测到访问的警报,并且该工具向我们显示它已找到用户的密码和我们保存的 KeePass 数据库

11:14:02.074516511: Warning Detected process memory dump to search for credentials 
(proc.name=python proc.pname=sudo fd.name=/proc/1114/maps container=host (id=host) 
evt.type=openat evt.arg.request=<NA> proc.pid=7253 
proc.cwd=/home/kpdemo/LaZagne/Linux/ proc.ppid=7252 proc.cmdline=python laZagne.py 
all proc.pcmdline=sudo python laZagne.py all gparent=bash ggparent=gnome-terminal- 
gggparent=systemd proc.sid=2802 proc.exepath=/usr/bin/python user.uid=0 
user.loginuid=1000 user.loginname=kpdemo user.name=root group.gid=0 group.name=root 
container.id=host container.name=host image=<NA>)<small>
<span class="shcb-language__paren"></span></small>

最后

收集凭据是攻击者非常常用的技术。需要拥有所有必要的工具来检测这些类型的操作,以防止它们横向移动或影响其他服务

mall>


## 最后收集凭据是攻击者非常常用的技术。需要拥有所有必要的工具来检测这些类型的操作,以防止它们横向移动或影响其他服务最后,我们强烈建议升级到新版本KeePass 2.54

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1382563.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Python爬虫之爬取酷狗音乐歌曲

Python爬虫之爬取酷狗音乐歌曲 1.安装第三方库 在Python的语言库中, 分为Python标准库和Python的第三方库. Python标准库是在你安装Python的时候已经包含在了安装目录下, 而Python第三方库需要使用Python的包管理pip来安装. 在本次代码中, 我们需要用到request库. requests翻…

(统计学习方法|李航)第四章 朴素贝叶斯算法——贝叶斯估计

贝叶斯估计方法&#xff1a; 计算男女时只有两个值&#xff0c;所以K2 贝叶斯估计就是拉普拉斯平滑 估计方法&#xff1a;为什么叫做贝叶斯估计呢&#xff1f; 例题&#xff1a; 重新回顾以下朴素贝叶斯&#xff1a; 对他求导&#xff0c;求出最大值 得到了色i他的估计值&…

数据归一化:优化数据处理的必备技巧

文章目录 &#x1f340;引言&#x1f340;数据归一化的概念&#x1f340;数据归一化的应用&#x1f340;数据归一化的注意事项与实践建议&#x1f340;代码演示&#x1f340;在sklearn中使用归一化&#x1f340;结语 &#x1f340;引言 在当今数据驱动的时代&#xff0c;数据的…

制造业为什么要建设数字化供应链

数字化让越来越多的人走向了线上的世界&#xff0c;让那些拥有线上产品或提供线上服务的企业提供了更多流量。 但与此同时&#xff0c;传统制造业遭受了沉重的打击&#xff0c;考虑到防疫要求&#xff0c;很多工厂长期处于人手不足的状态&#xff0c;生产制造效率大幅降低&…

架构设计第八讲:架构 - 理解架构的模式2 (重点)

架构设计第八讲&#xff1a;架构 - 理解架构的模式2 (重点) 本文是架构设计第8讲&#xff1a;架构 - 理解架构的模式2&#xff0c;整理自朱晔的互联网架构实践心得, 他是结合了 微软给出的云架构的一些模式的基础上加入他自己的理解来总结互联网架构中具体的一些模式。我在此基…

设计师常用的几个资源网站,你都知道吗?

如果你是一名设计师&#xff0c;你的电脑上可能存储了很多的设计网站&#xff0c;但是碎玉一些新手小白来说&#xff0c;刚接触设计的时候应该怎样进行绘制呢&#xff1f;难道要自己去一笔一笔的进行绘制吗&#xff1f;下面给大家分享几个设计网站&#xff0c;一起来看看吧&…

设计师常用的几个资源网站分享,再也不用为没有素材发愁

如果你是一名设计师&#xff0c;你的电脑上可能存储了很多的设计网站&#xff0c;但是碎玉一些新手小白来说&#xff0c;刚接触设计的时候应该怎样进行绘制呢&#xff1f;难道要自己去一笔一笔的进行绘制吗&#xff1f;下面给大家分享几个设计网站&#xff0c;一起来看看吧&…

设计师常用的几个资源网站,你都知道几个呢?

如果你是一名设计师&#xff0c;你的电脑上可能存储了很多的设计网站&#xff0c;但是碎玉一些新手小白来说&#xff0c;刚接触设计的时候应该怎样进行绘制呢&#xff1f;难道要自己去一笔一笔的进行绘制吗&#xff1f;下面给大家分享几个设计网站&#xff0c;一起来看看吧&…

Windows下在线图片处理工具

图片处理工具Photopea Photopea是一个在线版的图片编辑器, 与Photoshop的界面非常相似, 经常被人们误以为是Photoshop的在线网页版, Photopea可以满足绝大多数图片修改需求, 更有趣的是, Photopea支持打开Sketch格式,对经常与Sketch打交道的设计师, 非常有诱惑力! 更多介绍 &…

这些开发好工具,你知道几个?

文章目录 这些超级好的软件&#xff0c;你知道吗&#xff1f;&#xff01;文档类Microsoft OfficeWPS OfficeTyporanotepadsublime Text3或2 工具类截图工具&#xff1a;snipaste虚拟机&#xff1a;Oracle VM VirtualBox笔记类&#xff1a;Microsoft OneNote在线大纲&#xff1…

ubuntu虚拟机磁盘压缩:vmware-toolbox-cmd命令实现

压缩之前&#xff0c;虚拟机占用磁盘空间 虚拟机必须已经安装vmware-tool&#xff0c;运行如下命令&#xff0c;参看磁盘的挂载点 sudo /usr/bin/vmware-toolbox-cmd disk list $sudo /usr/bin/vmware-toolbox-cmd disk list [sudo] password for lkmao: Shrink disk is disab…

C++初阶之一篇文章教会你list(理解和使用)

list&#xff08;理解和使用&#xff09; 什么是list特点和优势基本操作示例用法与其他序列式容器&#xff08;如 std::vector 和 std::deque&#xff09;相比&#xff0c;std::list 显著的区别和优势成员类型 list构造函数1. default (1)2. fill (2)3.range (3)4. copy (4) li…

如何学习大数据

文章目录 每日一句正能量前言一、什么是大数据二、大数据的应用领域三、社会对大数据的人才需求四、大数据的学习路线后记 每日一句正能量 多数人认为&#xff0c;一旦达到某个目标&#xff0c;人们就会感到身心舒畅。但问题是你可能永远达不到目标。把快乐建立在还不曾拥有的事…

【雕爷学编程】Arduino动手做(54)---大按键微动按钮模块3

37款传感器与模块的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&#x…

华为手机相册怎么镜像翻转_手机视频剪辑软件怎么制作电子相册_

2020年11月09日 10:25 作者&#xff1a;黄页 编辑&#xff1a;黄页 生活中我们经常会利用手机把身边的美好事物拍摄下来&#xff0c;用以记录生活中的点点滴滴。然而你是否想过将这些照片以动态的形式展示给身边的亲朋好友&#xff0c;让图片“动”起来呢?下面就教你手机视频剪…

华为堡垒机_浪潮无线分析,华为云堡垒机

预期结果步骤2在第6次输入错误用户名/密码时&#xff0c;页面无法正常打开&#xff0c;且被测设备有相关日志记录。测试结果口通过口部分通过口未通过口未测试备注4.2.16敏感数据泄密防护项目&#xff1a;Web攻击防护分项目&#xff1a;敏感数据泄密防护用例编号&#xff1a;版…

华为手机设置页面黑色_华为手机微信猫和老鼠主题皮肤怎么设置 ?超个性主题等你来设置!...

阅读本文前&#xff0c;请您先点击上面的蓝色字体&#xff0c;再点击“关注”&#xff0c;这样您就可以继续免费收到文章了。每天都有分享&#xff0c;完全是免费订阅&#xff0c;请放心关注。 …

华为手机大小尺寸一览_超实用!3招教你用华为手机玩转类型学摄影!

怎么样把照片发朋友圈最吸睛&#xff1f; 每个人都有展示图片的喜好和想法 但往往按照系列发一整组照片&#xff0c;容易收获更多点赞 ▼ 像这样我们常看到的系列图&#xff0c;有一个学名 叫做 “摄影类型学” 名字听起来有没有觉得很高级 但是操作起来却并不难 今天我们就来讲…

学以致用:python面向对象和PyEcharts的完美混合技

文章目录 学习目标数据案例分析数据内容需求分析参考代码data_define.pyfile_define.pymain.py 学习目标 使用面向对象思想完成数据读取和处理基于面向对象思想重新认知第三方库使用(PyEcharts) 数据案例分析 数据内容 1月份数据是普通文本&#xff0c;使用逗号分割数据记录&…

【力扣每日一题】2023.8.12 合并K个升序链表

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个链表数组&#xff0c;数组里的链表都是升序的&#xff0c;让我们合并这些链表&#xff0c;要求合并之后还是升序的。 最简…