本地密码检索工具LaZagne Project
本文于2010天之前发表,文中内容可能已经过时。
简介
LaZagne project 是一款用于检索大量存储在本地计算机上密码的开源应用程序。每款软件他们保存密码的方法或许不尽相同(明文,API,算法,数据库等等),我开发这款工具的目的是为了寻找计算机中最常用软件的密码。
该项目已作为后期开发模块添加到pupy中。Python代码将在内存中解释,而不会触及磁盘,它可以在Windows和Linux主机上运行。
Standalones
Standalones现在可以在这里找到:https://github.com/AlessandroZ/LaZagne/releases/
安装
要求可在此处获得:https://github.com/AlessandroZ/LaZagne/wiki/Requirements
1 | pip install -r requirements.txt |
用法
- 启动所有模块
1 | laZagne.exe all |
- 仅启动特定模块
1 | laZagne.exe browsers |
- 仅启动特定的软件脚本
1 | laZagne.exe browsers -firefox |
- 将找到的所有密码写入文件(正常txt为-oN,Json为-oJ,所有为-oA)。注意:如果您在解析作为多行字符串编写的JSON结果时遇到问题,请检查此项。
1 | laZagne.exe all -oN |
- 得到帮助
1 | laZagne.exe -h |
- 更改详细模式(2个不同级别)
1 | laZagne.exe all -vv |
- 安静模式(标准输出上不会打印任何内容)
1 | laZagne.exe all -quiet -oA |
- 要解密域凭据,可以指定用户窗口密码。否则,它会尝试所有已经找到的密码作为Windows密码。
1 | laZagne.exe all -password ZapataVive |
注意:对于wifi密码\ Windows Secrets,使用管理员权限启动它(UAC身份验证/ sudo)
苹果系统
注意:在Mac OS系统中,如果没有用户密码,则很难检索存储在计算机上的密码。 所以,我建议使用其中一个选项
- 如果您知道用户密码,请在命令行中添加它
1 | laZagne all --password SuperSecurePassword |
- 您可以使用交互模式,该模式将向用户提示对话框,直到密码正确为止
1 | laZagne all -i |
支持的软件
视窗 | Linux的 | 苹果电脑 | |
---|---|---|---|
浏览器 | 7Star Amigo BlackHawk Brave Centbrowser Chedot Chrome Canary Chromium Coccoc Comodo Dragon Comodo IceDragon Cyberfox Elements浏览器 Epic隐私浏览器 Firefox 谷歌Chrome Icecat K-Meleon Kometa Opera Orbitum Sputnik Torch Uran Vivaldi | Chrome Firefox Opera | Chrome Firefox |
聊天 | Pigdin Psi Skype | Pigdin Psi | |
数据库 | DBVisualizer Postgresql Robomongo Squirrel SQLdevelopper | DBVisualizer Squirrel SQLdevelopper | |
游戏 | GalconFusion Kalypsomedia RogueTale Turba | ||
混帐 | Git for Windows | ||
邮件 | Outlook Thunderbird | Clawsmail Thunderbird | |
Maven的 | Maven Apache | ||
从记忆中转储 | Keepass Mimikatz方法 | 系统密码 | |
多媒体 | EyeCON | ||
PHP | 作曲家 | ||
SVN | 乌龟 | ||
系统管理员 | Apache Directory Studio CoreFTP CyberDuck FileZilla FTPNavigator OpenSSH OpenVPN PuttyCM RDPManager VNC WinSCP Windows子系统Linux版 | AWS Docker Environnement变量 FileZilla 历史记录文件 共享 SSH私钥 | |
无线上网 | 无线网络 | 网络管理器 WPA请求者 | |
内部机制密码存储 | 自动 登录MSCache 凭证文件 Credman DPAPI哈希 Hashdump(LM / NT) LSA机密 文件 | GNOME Keyring Kwallet Hashdump | 钥匙串 Hashdump |
自定义脚本开发
该工具通过python开发,易读、易维护,所以本文就尝试对其扩展,编写python脚本实现对360极速浏览器的密码导出,并且介绍脚本开发过程的细节。
1. 说明
· 解决LaZagne中的bug
· 开发脚本导出360极速浏览器密码
· 使用py2exe将python脚本转成exe
· 使用PyInstaller将python脚本转成exe
2. LaZagne中的bug
LaZagne下载地址:
https://github.com/AlessandroZ/LaZagne
python版本:2.7
下载后执行LaZagne-masterLaZagne-masterWindowslaZagne.py
报错,缺少第三方扩展包pyasn1和psutil
安装第三方扩展包:
1 | C:Python27Scriptseasy_install.exe pyasn1 |
再次执行LaZagne-masterLaZagne-masterWindowslaZagne.py
仍然报错,提示如下:
1 | ImportError: No module named memorpy |
经过搜索,并没有第三方扩展包memorpy,猜测是输入错误,正确的应该为memory_profiler
安装扩展包memory_profiler:
1 | C:Python27Scriptseasy_install.exe memory_profiler |
并且修改源文件:
路径为LaZagne-masterLaZagne-masterWindowslazagnesoftwaresmemorymemorydump.py
Line14:from memorpy import *
修改为
1 | from memory_profiler import * |
成功执行laZagne.py,如下图
3. 开发脚本导出360极速浏览器密码
原工程提示开发自定义脚本可参考:
https://github.com/AlessandroZ/LaZagne/wiki
但是该网页并没有提示信息,经过分析代码结构,得出以下修改方法
360极速浏览器:
360极速浏览器使用chrome内核,猜测存储密码的功能同Chrome相近,因此使用360极速浏览器作为测试对象
360极速浏览器提供密码保存功能,如下图
经测试发现:
Chrome保存密码的文件路径为:
1 | C:Users1Local SettingsApplication DataGoogleChromeUser |
360极速浏览器保存密码的文件路径为:
1 | C:Users1Local SettingsApplication Data360ChromeChromeUser Data |
经过对比,二者的差别仅在文件名存在差异,数据结构相同
添加360极速浏览器密码导出功能
1、修改LaZagne-masterWindowslazagneconfigmanageModules.py
(1)Line6添加如下代码:
from lazagne.softwares.browsers.cse import CSE
如下图
注:
lazagne.softwares.browsers.cse表示文件名
import CSE表示类名为CSE
(2)Line6添加如下代码:
CSE(),
注:
添加moduleNames,对应类名CSE
如下图
详细代码可参照:
https://github.com/3gstudent/LaZagne/blob/master/Windows/lazagne/config/manageModules.py
2、在LaZagne-masterWindowslazagnesoftwaresbrowsers新建文件cse.py
文件内容参照同级目录的chrome.py,如下位置作修改即可:
(1)Line10修改为class CSE(ModuleInfo):
注:
设置类名
(2)Line12修改为options = {‘command’: ‘-360cse’, ‘action’: ‘store_true’, ‘dest’: ‘360CSE’, ‘help’: ‘cse’}
注:
‘command’不能同chrome的-c重复
‘dest’表示显示导出浏览器密码的标题
(3)
Line22修改为360路径Local SettingsApplication Data360ChromeChromeUser Data
Line23修改为360路径AppDataLocal360ChromeChromeUser Data
完整代码如下:
1 | homedrive + homepath + 'Local SettingsApplication Data360ChromeChromeUser Data', |
(4)其他提示信息将chrome换成360cse就好
详细代码可参照:
https://github.com/3gstudent/LaZagne/blob/master/Windows/lazagne/softwares/browsers/cse.py
保存文件,再次执行laZagne.exe
成功导出360极速浏览器保存的密码,如下图
4. 使用py2exe将python脚本转成exe
LaZagne提供了编译好的Windows版本,下载地址如下:
https://github.com/AlessandroZ/LaZagne/releases/
但是如果想扩展功能,例如添加导出360极速浏览器密码的功能,就需要找到自己编译的方法
方法如下:
1)、下载py2exe
地址如下:
https://sourceforge.net/projects/py2exe/
2)、新建mysetup.py
内容如下:
1 |
|
保存在LaZagne-masterLaZagne-masterWindows下,即laZagne.py的同级目录
3)、生成
cmd执行:
C:Python27python.exe mysetup.py py2exe
4)、测试
执行laZagne.exe
提示ImportError: No module named pyasn1
解决方法:
在C:Python27Libsite-packages找到文件pyasn1-0.2.3-py2.7.egg
将其解压缩,在同级目录生成文件夹pyasn1
使用py2exe重新编译:
C:Python27python.exe mysetup.py py2exe
生成dist文件夹,再次执行laZagne.exe,成功,如下图
5. 使用PyInstaller将python脚本转成exe
1)、安装PyInstaller
方法1:使用pip安装
安装pywin32,下载地址:
https://sourceforge.net/projects/pywin32/files/pywin32/
使用pip安装:
1 | pip install pyinstaller |
报错,如下图
方法2:下载源码安装
源码下载地址:
http://www.pyinstaller.org/downloads.html
测试使用的版本为PyInstaller-3.2.1
解压缩后进入其子目录bootloader:
cd bootloader
编译:
python ./waf configure build install
重新进入根目录:
cd ..
安装pyinstaller:
python setup.py install
安装成功,如下图
2)、打包exe
参数如下:
C:Python27Scriptspyinstaller-script.py -F C:LaZagne-masterLaZagne-masterWindowslaZagne.py
注:
-F参数表示打包成单个exe
在C:Python27Scripts下生成dist文件夹,里面包含生成的laZagne.exe
测试系统(未安装Python)执行laZagne.exe
成功运行,如下图