从Chrome进程内存直接提取Cookies的ChromeKatz工具

ChromeKatz简介

CookieKatz是一个工具,可以让操作员直接从进程内存中转储Chrome、Edge和Msedgewebview2中的cookie。基于Chromium的浏览器会在启动时将所有cookie从磁盘上的cookie数据库中加载。有了CookieKatz,用户可以选择要提取的进程,并快速导出cookie,无需使用任何外部库或依赖项。该工具还支持实时转储,允许操作员在浏览器运行时查看和提取cookie。

特点

  • *支持从Incontio和Edge In-Private进程中转储cookie
    *能够访问其他用户浏览器的cookie(如果获得许可)
    *从webview进程中转储cookie
    *无需访问磁盘上的数据库文件
    *无需DPAPI密钥即可解密cookie
    *从小型脱机转储文件中解析cookie
    该工具有些限制:
    *目前仅支持64位浏览器安装
    *不支持32位浏览器安装或32位CookieKatz版本
    *仅转储普通cookie,不包括Chromium使用的分段cookie存储
    *即使在内存中找到正确偏移的方法目前稳定且适用于多个不同版本,但未来可能会出现故障。

该解决方案由三个项目组成:CookieKatz(PE 可执行文件)、CookieKatz-BOF(Beacon 对象文件版本)和CookieKatzMinidump(小型转储解析器)。

从Chrome进程内存直接提取Cookies的ChromeKatz工具-阿帕胡

构建和安装

在此处下载 CookieKatz-BOF 的最新版本。该 zip 文件包含已编译的 BOF 和用于运行它们的 CNA 脚本。

自己构建

您可以使用发布或调试配置和 x64 平台在 Visual Studio 上构建这两个项目。

BOF 版本是使用 Cobalt Strike 的 Visual Studio 模板bof-vs开发的。这意味着 CookieKatz-BOF 的调试配置将生成 exe 而不是 COFF 文件。您可以在此处阅读有关 Visual Studio 模板使用的更多信息。

您可以在VS 2022 的 x64 Native Tools Command Prompt中使用 nmake 编译自己的 BOF :

nmake all

用法

注意!当选择使用PID作为目标时,分别使用命令/list或cookie-katz-find来选择正确的子进程!

CookieKatz

示例:.\CookieKatz.exe 默认情况下,目标是第一个可用的 Chrome 进程.\CookieKatz.exe /edge 目标是第一个可用的 Edge 进程.\CookieKatz.exe /pid:<pid> 尝试以给定的 pid 作为目标,期望其为 Chrome 进程.\CookieKatz.exe /webview /pid:<pid> 目标是给定的 msedgewebview2 进程.\CookieKatz.exe /list /webview 列出可用的 webview 进程标志: /edge 目标为当前用户 Edge 进程 /webview 目标为当前用户 Msedgewebview2 进程 /pid 尝试转储给定的 pid,例如,如果正在以提升权限运行,则可以转储其他用户的 pid /list 列出可作为目标的进程,与 /edge 或 /webview 一起使用以对其他浏览器进行目标设置 /help 这就是你刚才所做的!也可以使用 -h

CookieKatz-BOF

beacon> help cookie-katzDump cookies from Chrome or EdgeUse: cookie-katz [chrome|edge|webview] [pid]beacon> help cookie-katz-findFind processes for Cookie-KatzUse: cookie-katz-find [chrome|edge|webview]

CookieKatzMinidump

Usage: CookieKatzMinidump.exe <Path_to_minidump_file>Example: .\CookieKatzMinidump.exe .\msedge.DMPTo target correct process for creating the minidump, you can use the following PowerShell command: Get-WmiObject Win32_Process | where {$_.CommandLine -match 'network.mojom.NetworkService'} | select -Property Name,ProcessId

制作人员

  • Henkru用于修复 BOF 版本崩溃并创建 CNA 脚本
  • B3arr0用于测试 BOF 版本并帮助消除错误
  • TheWover提供出色的 PEB 定义!
  • 0vercl0k用于创建 udmp-parser,它是小型转储解析的核心库

项目地址

GitHub:
https://github.com/Meckazin/ChromeKatz

THE END