提取 Chrome、Firefox 中储存的用户密码用于凭据发现

news2024/12/24 9:40:47
  • 操作环境
    • Chrome 浏览器 Version 125.0.6422.112 (Official Build) (64-bit)
    • Firefox 浏览器 Version 126.0 (64 位)
  • Chrome 浏览器储存密钥原理
    • 新的 Chrome 浏览器储存密码的方案是使用 Chrome 生成的 AES 密钥对用户密码进行加密之后储存在 Sqlite 数据库文件中,AES 密钥储存在文件中,Windows 操作系统下 Chrome 会使用 CryptProtectData 函数(Windows API)对密钥进行加密处理,之后再进行 Base64 编码
    • 加密编码后的密钥保存在 C:\%USERPROFILE%\Google\Chrome\User Data\Local State 文件中
      在这里插入图片描述
    • Sqlite 文件保存在 C:\%USERPROFILE%\Google\Chrome\User Data\Profile 1\Login DataC:\%USERPROFILE%\Google\Chrome\User Data\Default\Login Data 文件中,可以通过 SELECT action_url, username_value, password_value FROM logins 语句在这些 Sqlite 数据库中查找出关键信息
  • 解密 Chrome 浏览器用户密码步骤
    • 先解密出 AES 密钥,Base64 解码之后通过 CryptUnprotectData 函数进行解密,这一步可以通过编写 Python 脚本来完成
    • 通过查找 Sqlite 数据库中的关键信息提取出 password_value 值,因为只有这个值被加密
    • 通过 AES 密钥对 password_value 值进行解密
    • 使用 decrypt_chrome_password.py 脚本自动化此步骤
    C:\> git clone https://github.com/ohyicong/decrypt-chrome-passwords.git
    C:\> pip install pycryptodomex && pip install pywin32
    C:\> python3 decrypt_chrome_password.py
    
    在这里插入图片描述
  • Firefox 浏览器用户密码提取
    • Firefox 浏览器使用 Json 文件储存用户密码,文件路径为 Mozilla\Firefox\Profiles\*.default*\logins.json
    • 通过 firefox_decrypt.py 脚本自动解密 Firefox 用户密码
    C:\> git clone https://github.com/unode/firefox_decrypt.git
    C:\> python3.9 firefox_decrypt.py
    
    在这里插入图片描述
  • 参考
    • How To Extract Plaintext Google Chrome Passwords - John Hammond
    • https://github.com/ohyicong/decrypt-chrome-passwords.git - ohyicong
    • https://github.com/unode/firefox_decrypt.git - unode

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

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

相关文章

c++入门的基础知识

c入门 C是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等。熟悉C语言之后,对C学习有一定的帮助,本章节主要目标: 补充C语言语法的不足,以及C是如何对C语言设计…

C++ 数据结构算法 学习笔记(32) -五大排序算法

C 数据结构算法 学习笔记(32) -五大排序算法 选择算法 如下若有多个女生的身高需要做排序: 常规思维: 第一步先找出所有候选美女中身高最高的,与最后一个数交换 第二步再找出除最后一位美女外其它美女中的最高者,与倒数第二个美女交换位置 再找出除最…

ASE60P06-ASEMI场效应MOS管ASE60P06

编辑:ll ASE60P06-ASEMI场效应MOS管ASE60P06 型号:ASE60P06 品牌:ASEMI 封装:TO-220 批号:2024 沟道:N沟道 导通内阻RDS(ON)Max:19mΩ 启动电压:2V-4…

【启明智显技术分享】SOM2D02-2GW核心板适配ALSA(适用Sigmastar ssd201/202D)

提示:作为Espressif(乐鑫科技)大中华区合作伙伴及sigmastar(厦门星宸)VAD合作伙伴,我们不仅用心整理了你在开发过程中可能会遇到的问题以及快速上手的简明教程供开发小伙伴参考。同时也用心整理了乐鑫及星宸…

【代码随想录】二分查找算法总结篇

目录 前言二分查找例题一例题二例题三例题四 前言 本篇文章记录了代码随想录二分查找算法的总结笔记,下面我们一起来学习吧!! 二分查找 关于二分查找算法,我在之前的这篇博客里面做了非常多的分析,但是后面做题做着…

Leetcode | 5-21| 每日一题

2769. 找出最大的可达成数字 考点: 暴力 数学式子计算 思维 题解 通过式子推导: 第一想法是二分确定区间在区间内进行查找是否符合条件的, 本题最关键的便是 条件确定 , 第二种方法: 一般是通过数学公式推导的,这种题目我称为数学式编程题 代码 条件判断式 class Solution { …

长文处理更高效:一键章节拆分,批量操作轻松搞定,飞速提升工作效率!

在当今信息爆炸的时代,我们时常需要处理大量的文本内容。无论是阅读长篇小说、整理专业资料还是编辑大型文档,TXT文本文件的普遍性不言而喻。然而,当TXT文本内容过于庞大时,阅读、编辑和管理都变得异常繁琐。此时,一款…

齐护K210系列教程(三十一)_视觉小车

视觉小车 齐护编程小车端程序动作说明联系我们 在经常做小车任务项目时会用的K210的视觉与巡线或其它动作结合,这就关系到要将K210的识别结果传送给小车的主控制器,K210为辅助传感器(视觉采集)。 这节课我们用K210识别图像&#x…

多微信如何高效管理?一台电脑就能搞定!

对于有多个微信号的人来说,管理这些微信无疑是一道难题。 今天,就给大家分享一个能够让你高效管理多个微信号的神器——个微管理系统,下面,就一起来看看它都有哪些功能吧! 1、多号同时登录在线 系统支持多个微信号同…

AI助力农田作物智能化激光除草,基于轻量级YOLOv8n开发构建农田作物场景下常见20种杂草检测识别分析系统

随着科技的飞速发展,人工智能(AI)技术在各个领域的应用愈发广泛,其中农业领域也不例外。近年来,AI助力农田作物场景下智能激光除草的技术成为了农业领域的一大亮点,它代表着农业智能化、自动化的新趋势。智…

泪目!网络连接中断的原因,终于找到了!

朋友们,出大事了! 不知道多少朋友玩过 DNF 这个游戏,这个我从小学玩到大学的 “破” 游戏,昨天竟然出手游了! 我都忘了自己曾几何时预约过这个手游通知,昨天给我发了条通知信息说游戏已开服。 老玩家直接…

网络实时安全:构筑数字时代的铜墙铁壁

什么是网络实时安全? 网络实时安全,简而言之,是一种能够在威胁发生的瞬间即刻识别、响应并有效抵御的安全机制。它强调的是速度与效率,确保网络环境能够持续处于安全状态。这背后,离不开高科技的支撑——扩展检测系统…

分类预测 | Matlab实现ZOA-SVM斑马算法优化支持向量机的多变量输入数据分类预测

分类预测 | Matlab实现ZOA-SVM斑马算法优化支持向量机的多变量输入数据分类预测 目录 分类预测 | Matlab实现ZOA-SVM斑马算法优化支持向量机的多变量输入数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现ZOA-SVM斑马算法优化支持向量机的多变量输…

STM32+CubeMX移植SPI协议驱动W25Q16FLash存储器

STM32CubeMX移植SPI协议驱动W25Q16FLash存储器 SPI简介拓扑结构时钟相位(CPHA)和时钟极性( CPOL) W25Q16简介什么是Flash,有什么特点?W25Q16内部块、扇区、页的划分引脚定义通讯方式控制指令原理图 CubeMX配…

使用vue3实现右侧瀑布流滑动时左侧菜单的固定与取消固定

实现效果 实现方法 下面展示的为关键代码,想要查看完整流程及代码可参考https://blog.csdn.net/weixin_43312391/article/details/139197550 isMenuBarFixed为控制左侧菜单是否固定的参数 // 监听滚动事件 const handleScroll () > {const scrollTopThreshol…

mac M3芯片 goland 2022.1 断点调试失败(frames are not available)问题,亲测有效

遇到如上问题,解法 步骤1:下载dlv文件 执行 go install github.com/go-delve/delve/cmd/dlvlatest 然后在 $GOPATH/bin里发现多了一个dlv文件 (找不到gopath? 执行 go env 可以看到) 步骤2:配置dlv 将这个dlv文件移到 /Applications/G…

redis中String,Hash类型用法与场景使用

String 用法 1. 设置键值对 (1)设置键值对使用 set 命令设置 key 的值。 返回值:ok,如果 key 已经存在,set 命令会覆盖旧值。 (2)使用 setex 命令设置 key 的值并为其设置过期时间&#xff…

MCS-51伪指令

上篇我们讲了汇编指令格式,寻址方式和指令系统分类,这篇我们讲一下单片机伪指令。 伪指令是汇编程序中用于指示汇编程序如何对源程序进行汇编的指令。伪指令不同于指令,在汇编时并不翻译成机器代码,只是会汇编过程进行相应的控制…

『Stable Diffusion 』AI绘画,不会写提示词怎么办?

提示词 有没有想过,为什么你用 SD 生成的猫是长这样的。 而其他人可以生成这样的猫。 虽然生成的都是猫,但猫与猫之间还是有差距的。 如果你的提示词只是“cat”,那大概率就会出现本文第一张图的那个效果。而如果你加上一些形容词&#xff…

【ArcGIS微课1000例】0111:谷歌地球Google Earth下载安装与使用教程

一、谷歌地球安装 双击安装包,默认点击完成即可。 二、谷歌地球使用 打开快捷方式,开始使用谷歌地球。欢迎界面: 软件主界面: 三、谷歌地球下载 软件安装包位于《ArcGIS微课实验1000例(附数据)专栏配套完数据包中的0111.rar中…