跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

通过网络安全服务导出保存在Firefox浏览器中的密码

精选回复

发布于

0x00 前言

上一篇文章《渗透技巧——导出Firefox浏览器中保存的密码》介绍了常用的导出Firefox浏览器密码的方法,其中firefox_decrypt.py使用NSS(网络安全服务)进行解密,支持key3.db和key4.db的主密码解密,本文将介绍其中涉及的原理,编写测试代码,验证主密码,分享脚本编写的细节。

0x01 简介

本文将介绍以下内容:

网络安全服务简介

通过python调用网络安全服务导出Firefox浏览器密码

开源python脚本

爆破脚本的实现

0x02 Network Security Services简介

网络安全服务(NSS)是一组支持安全客户端和服务器应用程序跨平台开发的库。

参考文件:

https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS

Firefox使用NSS作为加密算法和安全网络协议的基本库,PKCS#11标准用于凭证加密和解密。

参考文件:

https://developer . Mozilla . org/en-US/docs/Mozilla/Projects/NSS/PKCS11

0x03 通过Python调用Network Security Services导出Firefox浏览器的密码

参考代码:

https://github.com/unode/firefox_decrypt

https://github . com/Kerisa/browser password dump/blob/master/Mozilla pwd . py

Windows系统下的解密过程如下:

加载网络安全服务需要Nss3.dll

调用NSS_Init()进行初始化。

调用PK11_GetInternalKeySlot()获取内部插槽(用作身份验证主密码)

调用PK11_CheckUserPassword()来验证主密码。

读取logins.json以获取加密数据

调用PK11SDR_Decrypt()进行解密

需要注意的具体问题如下:

1. Python和Firefox的版本需要保持一致

在64位系统下,32位和64位都需要。

2. 将Firefox的安装路径加入到环境变量,便于调用

Firefox的安装目录中有一个我们需要调用的nss3.dll,所以可以选择将Firefox的安装路径添加到环境变量PATH中,对应的python代码如下:

导入操作系统

Firefox path=' C:\ Program Files \ Mozilla Firefox '

OS . environ[' PATH ']=';'。join([firefoxPath,os.environ['PATH']])

注:

在64位操作系统下,64位Firefox浏览器的默认安装目录是C:\Program Files\Mozilla Firefox,32位Firefox浏览器的默认安装目录是C:\ Program Files(x86)\ Mozilla Firefox。

调用nss3.dll的python代码如下:

导入类型

NssDll=ctypes。CDLL('nss3.dll ')

3. NSS初始化时需要三个文件

位置是:% appdata % \ Mozilla \ Firefox \ profiles \

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。