Cookie-Monster:一款针对Web浏览器的安全分析与数据提取工具
关于Cookie-Monster
Cookie-Monster是一款针对常见Web浏览器的安全分析与数据提取工具,该工具可以帮助广大研究人员提取并分析Edge、Chrome和Firefox浏览器中的Cookie数据。

Cookie-Monster适用于红队和蓝队成员,能够提取WebKit主密钥,找到具有Cookie和登录数据文件句柄的浏览器进程,然后复制句柄,并将相关数据下载并保存至本地。下载 Cookies/登录数据文件后,工具提供的Python解密脚本可以帮助提取并解密这些数据,而Firefox模块将负责解析profiles.ini并找到logins.json和key4.db文件所在的位置并下载它们。
工具要求
Mingw-w64
pycryptodome
pyasn1_modules
工具安装
由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。
接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clone https://github.com/KingOfTheNOPs/cookie-monster.git
然后切换到项目目录中,使用pip3命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:
cd cookie-monsterpip3 install -r requirements.txt
Linux平台下运行下列命令完成项目代码编译:
make
Windows平台下运行下列命令编译exe:
gcc .\cookie-monster.c -o cookie-monster.exe -lshlwapi -lcrypt32 -lntdll
工具使用
BOF使用
Usage: cookie-monster [ --chrome || --edge || --firefox || --chromeCookiePID <pid> || --chromeLoginDataPID <PID> || --edgeCookiePID <pid> || --edgeLoginDataPID <pid>]cookie-monster Example:cookie-monster --chromecookie-monster --edgecookie-moster --firefoxcookie-monster --chromeCookiePID 1337cookie-monster --chromeLoginDataPID 1337cookie-monster --edgeCookiePID 4444cookie-monster --edgeLoginDataPID 4444cookie-monster Options:--chrome 会查看所有正在运行的进程和句柄,如果其中一个与chrome.exe匹配,它会将句柄复制到Cookies/Login Data,然后将文件复制到CWD;--edge 会查看所有正在运行的进程和句柄,如果其中一个与msedge.exe匹配,它会将句柄复制到Cookies/Login Data,然后将文件复制到CWD;--firefox 查找profiles.ini并定位key4.db和logins.json文件;--chromeCookiePID 如果提供了chromePID,请查找具有cookie句柄的指定进程。如果已知cookie句柄,请指定PID以复制其句柄和文件;--chromeLoginDataPID 如果提供了chrome PID,请查找具有登录数据句柄的指定进程,指定PID以复制其句柄和文件;--edgeCookiePID 如果提供了Edge PID,请查找具有cookie句柄的指定进程。如果已知cookie句柄,请指定PID以复制其句柄和文件;--edgeLoginDataPID 如果提供了Edge PID,请查找具有登录数据句柄的指定进程。如果已知登录数据,请指定PID以复制其句柄和文件;
EXE使用
Cookie Monster Example:cookie-monster.exe --allCookie Monster Options:-h, --help 显示帮助信息和退出--all 运行chrome, edge, 和firefox方法--edge 提取Edge密钥并下载Cookies/Login数据至PWD--chrome 提取Chrome密钥并下载Cookies/Login数据至PWD --firefox 定位Firefox密钥和Cookie,不拷贝文件
解密脚本
解密Chrome/Edge Cookie文件:
python .\decrypt.py "\xec\xfc...." --cookies ChromeCookie.dbResults Example:-----------------------------------Host: .github.comPath: /Name: dotcom_userCookie: KingOfTheNOPsExpires: Oct 28 2024 21:25:22Host: github.comPath: /Name: user_sessionCookie: x123.....Expires: Nov 11 2023 21:25:22
解密Chrome/Edge密码文件:
python .\decrypt.py "\xec\xfc...." --passwords ChromePasswords.dbResults Example:-----------------------------------URL: https://test.com/Username: testerPassword: McTesty
许可证协议
本项目的开发与发布遵循GPL-3.0开源许可协议。
项目地址
Cookie-Monster:【GitHub传送门】
参考资料
GitHub - lclevy/firepwd: firepwd.py, an open source tool to decrypt Mozilla protected passwords
GitHub - Mr-Un1k0d3r/Cookie-and-Handle-Stealer: C or BOF file to extract WebKit master key to decrypt user cookie
GitHub - fortra/nanodump: The swiss army knife of LSASS dumping
GitHub - login-securite/DonPAPI: Dumping DPAPI credz remotely
相关文章:
Cookie-Monster:一款针对Web浏览器的安全分析与数据提取工具
关于Cookie-Monster Cookie-Monster是一款针对常见Web浏览器的安全分析与数据提取工具,该工具可以帮助广大研究人员提取并分析Edge、Chrome和Firefox浏览器中的Cookie数据。 Cookie-Monster适用于红队和蓝队成员,能够提取WebKit主密钥,找到具…...
C语言的结构体
结构体定义 结构体指针...
C语言 写一个函数days,实现某日在本年中是第几天计算。
写一个函数days, 【定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题(即将闰年情况包含在内)】 由主函数将年、月、日传递给days函数,计算后将日子数传回主函数输出。 #include <stdio.h>typedef struct {int yea…...
2-50 基于matlab的遗传模拟退火算法的聚类算法
基于matlab的遗传模拟退火算法的聚类算法,以模糊K-均值聚类算法为基础,对各样本的聚类中心进行优化,输出聚类可视化结果。聚类类别数可自由输入。程序已调通,可直接运行。 2-50 遗传模拟退火算法的聚类算法 - 小红书 (xiaohongshu…...
电脑屏幕录制软件,分享4款(2024最新)
在今天,我们的电脑屏幕成为了一个多彩多姿的窗口。通过它我们可以浏览网页、观看视频、处理文档、进行游戏……有时,我们想要记录下这些精彩瞬间,与朋友分享,或者作为教程留存,这时,电脑屏幕录制就显得尤为…...
机械学习—零基础学习日志(高数16——函数极限性质)
零基础为了学人工智能,真的开始复习高数 这里我们继续学习函数极限的性质。 局部有界性 充分条件与必要条件 极限存在是函数局部有界的充分条件。什么是充分条件,什么是必要条件呢?我这里做了一点小思考,和大家分享,…...
初识c++——list
一、list 1、list结构 c中list为双向带头循环列表: 二、list接口 1、构造 using namespace std; #include<iostream> #include<list> #include<vector> int main() {list<int> lt; //构造空的listlist<int> lt1(10, 1); //构造的l…...
angular入门基础教程(八)表单之双向绑定
绑定表单数据 为了让表单使用 Angular 的特性实现数据绑定,需要导入 FormsModule。 这个比 vue 要繁琐点,不复杂,但是比 react 的自己手动实现要方便,ng 帮我们实现了双向绑定 import { Component } from "angular/core&qu…...
【C++】C++中的find方法介绍
目录 一.find方法基本用法 1.查找字符 2.查找子字符串 3.查找子字符串(从指定位置开始) 4.查找字符范围 5.查找不包含特定字符的范围 二.使用string::npos返回无效位置 三.总结 在C中, std::string 类的 find 成员函数用于查找子字…...
JVM—HotSpot虚拟机对象探秘
1、对象的创建 对象只是普通对象,不包括数组和Class对象 类加载检查:当虚拟机遇到字节码New指令时,先检查这个指令的参数是否可以在常量池定位到一个类的符号引用,并且加载这个符号引用代表的类是否被加载、解析、验证、初始化过。…...
AI测试:人工智能模型的核心测试指标,分类判别、目标检测、图像分割、定量计算分别有哪些指标?
在前面的人工智能测试技术系列文章中,我们详细介绍了人工智能测试的技术方法和实践流程。在了解人工智能测试方法后,我们需要进一步学习和研究如何衡量这些方法的有效性,即人工智能模型测试指标的选择。测试指标的选择主要取决于模型的类型和…...
探索LLM世界:新手小白的学习路线图
随着人工智能的发展,语言模型(Language Models, LLM)在自然语言处理(NLP)领域的应用越来越广泛。对于新手小白来说,学习LLM不仅能提升技术水平,还能为职业发展带来巨大的机遇。那么,…...
Linux基础命令大全 持续更新中......
最近重新学习了linux基础知识,并整理出了以下内容,以供参考 最近几日后续会持续更新内容哦 用户管理 加括号的代表可以不写 useradd (参数选项) 用户名 添加新用户 passwd (参数选项) 用户名 用…...
CPU的起源与发展历程
CPU的起源与发展历程 文章目录 CPU的起源与发展历程前言指令概念电子管(真空管)体系结构冯诺依曼架构哈佛架构 晶体管集成电路指令集与微架构微处理器x86架构CISC与RISC的提出MIPS架构ARM架构RISC-V架构FPGA 总结 前言 从古至今,人类为了…...
【C语言】 二叉树创建(结构体,先序遍历,中序遍历,后续遍历)
二叉树的创建:首先先定义一个结构体,里面包含数据(data),指向左子树的指针(L),指向右子树的指针(R)三个部分 在创建树的函数中,首先先输入…...
【和相同的二元子数组】python刷题记录
R2-前缀和专题 目录 前缀和哈希表 双指针 ps: 第一眼过去,这题应该能用双指针解出来,应该也能用前缀和解题。 前缀和哈希表 适用于 nums[i] 值不固定为 0 和 1 的其他情况 class Solution:def numSubarraysWithSum(self, nums: List[int], goal: i…...
【单片机毕业设计选题24087】-基于北斗系统的智能路灯
系统功能: 系统操作说明: 上电后OLED显示 “欢迎使用智能路灯系统请稍后”,两秒后显示Connecting...表示 正在连接阿里云,正常连接阿里云后显示第一页面,如长时间显示Connecting...请 检查WiFi网络是否正确。 系统分为四种模…...
[Docker][Docker常用命令]详细讲解
目录 1.帮助命令2.镜像命令3.容器命令4.卷命令5.常用命令 1.帮助命令 docker version # 显示docker的版本信息 docker info # 显示docker的系统信息,包括镜像和容器的数量 docker 命令 --help # 某条命令的帮助命令2.镜像命令 查看所有本地的主机上的镜像…...
onlyoffice用nginx反向代理
我对于onlyoffice的需求就是当个在线编辑器使用。在集成react的时候之前都是写的绝对路径的地址,这样在需要迁移应用的时候就造成了巨大的麻烦,所以我决定用nginx做反向代理,这样我集成的时候就不用每次都修改源码中的地址了。 一开始写的代…...
JavaScript字符串转换成base64编码方法
// base64编码表 const base64EncodeChars ref<string>("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789/" );/*** base64编码* param {Object} str*/ const base64encode (str: string) > {let result "";// 循环遍历字符串…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...
