Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
bw-dump — 一个针对 (CVE-2023-38840) 的概念验证,可以从锁定的 Bitwarden 保险库中提取明文主密码。 | Kitploit
工具/GitHubGitHub/markuta/bw-dump
密码破解内存取证密码攻击漏洞分析漏洞利用取证分析数字取证
GitHubmarkuta/bw-dump

bw-dump

一个针对 (CVE-2023-38840) 的概念验证,可以从锁定的 Bitwarden 保险库中提取明文主密码。

查看仓库
4222年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

BW-Dump

更新2:此漏洞被分配了 CVE-2023-38840。

更新:GitHub 上已发布了一个拉取请求(5813)的补丁,修复了该漏洞。受影响的版本是 Bitwarden Desktop 2023.7.0 及以下版本。

描述

一个概念验证工具,可从锁定状态的 Bitwarden 密码库中提取主密码(密码库必须至少解锁过一次)。此工具仅适用于当前会话,系统重启后将无法使用。不需要管理员权限。

已发布一篇博客文章,可在此处查看:https://redmaple.tech/blogs/2023/extract-bitwarden-vault-passwords/

演示

使用 bw-dump 配合 Microsoft Edge 和 Bitwarden 浏览器扩展的简短演示。最新工具仅适用于 Bitwarden Desktop。

https://user-images.githubusercontent.com/9108334/191377244-f0e9a123-e4f0-43b0-90b5-697fc005ae7b.mov

构建

警告:Windows Defender 会将编译后的二进制文件报告为恶意软件!

要构建经过 strip 的二进制文件,请执行:

root@kitploit:~
go build -ldflags="-s -w"

要在 Linux 系统上构建,请执行:

root@kitploit:~
env GOOS=windows GOARCH=amd64 go build -ldflags="-s -w"

运行

只需构建并执行二进制文件即可。不需要管理员权限。确保 Bitwarden 进程正在运行。此外,密码库至少需要解锁一次。之后,主密码会在内存中存储一段时间。

您也可以传递 -d 选项,当发现模式时转储内存区域。每个结果会在当前工作目录中创建一个名为 dump-pid-<PID>-<MEM-REGION>.hex 的文件。

示例输出

root@kitploit:~
PS C:\Users\Tester\dev\go\bw-dump> bw-dump.exe

 888 88b, Y8b Y8b Y888P    888 88e
 888 88P'  Y8b Y8b Y8P     888 888b  8888 8888 888 888 8e  888 88e 
 888 8K     Y8b Y8b Y  888 888 8888D 8888 8888 888 888 88b 888 888b
 888 88b,    Y8b Y8b       888 888P  Y888 888P 888 888 888 888 888P
 888 88P'     Y8P Y        888 88"    "88 88"  888 888 888 888 88" 
                                                           888     
            Created by @NazMarkuta at Red Maple            888     
    
BW-Dump is a Windows forensics tool that extracts Bitwarden master passwords from locked vaults
(must be unlocked at least once) by reading process memory using Windows API functions which
searches for magic byte patterns. The tool doesn't require any special (admin) permissions.

Now supports Bitwarden Desktop App (v2023.1.1) running on Windows 10 or 11. The tool (may) 
still support older Bitwarden Chromium extension versions (v2022.6.0) and below.

[+] Searching for processes...
[+] PID: 4228
[+] EXEName: Bitwarden.exe
[+] CMDLine: "C:\Users\Tester\AppData\Local\Programs\Bitwarden\Bitwarden.exe" --type=renderer --user-data-dir="C:\Users\Tester\AppData\Roaming\Bitwarden" --app-path="C:\Users\Tester\AppData\Local\Programs\Bitwarden\resources\app.asar" --no-sandbox --no-zygote --first-renderer-process --lang=en-GB --device-scale-factor=1 --num-raster-threads=1 --renderer-client-id=4 --time-ticks-at-unix-epoch=-1675782335888921 --launch-time-ticks=4007177473 --mojo-platform-channel-handle=2508 --field-trial-handle=1792,i,3673052334935287551,6849534636950916074,131072 --disable-features=SpareRendererForSitePerProcess,WinRetrieveSuggestionsOnlyOnDemand /prefetch:1

[+] Searching PID memory (4228)
[+] Found pattern at MemBaseAddr (0xb0800554000)
[+] Found password prefix bytes at offset (0xc121)
[!] Invalid offset size, skipping...

[+] Found pattern at MemBaseAddr (0xb0800a8c000)
[+] Found password prefix bytes at offset (0x1104)
[!] Invalid offset size, skipping...

[+] Found pattern at MemBaseAddr (0xb08014bc000)
[+] Found password prefix bytes at offset (0x62aa)
[+] Password recovered: "SUPER-SECURE-password8"

PS C:\Users\Tester\dev\go\bw-dump> 

是否有解决方案或变通方法?

有两种(可能更多)方法可以从内存中清除主密码:

  1. 锁定后,输入任意随机错误密码。这将替换内存中存储的密码。
  2. 终止 Bitwarden.exe 进程,Windows 应会进行一些垃圾回收。

下一步计划?

  • 创建一个 Volatility3 插件,从保存的内存转储中提取主密码。
下载工具