天天看点

本地密码查看工具LaZagne中的自定义脚本开发

本文讲的是<b>本地密码查看工具LaZagne中的自定义脚本开发</b>,LaZagne是一款用于检索大量存储在本地计算机密码的开源应用程序。 因为每个软件储存密码的方式不尽相同(明文、API、定制算法、数据库等),所以该工具使用多种方法获取软件密码,目前支持的软件如下图

本地密码查看工具LaZagne中的自定义脚本开发

该工具通过python开发,易读、易维护,所以本文就尝试对其扩展,编写python脚本实现对360极速浏览器的密码导出,并且介绍脚本开发过程的细节。

0x01 简介

本文将要介绍以下内容:

· 解决LaZagne中的bug

· 开发脚本导出360极速浏览器密码

· 使用py2exe将python脚本转成exe

· 使用PyInstaller将python脚本转成exe

0x02 LaZagne中的bug

LaZagne下载地址:

<a href="https://github.com/AlessandroZ/LaZagne" target="_blank">https://github.com/AlessandroZ/LaZagne</a>

python版本:2.7

下载后执行LaZagne-masterLaZagne-masterWindowslaZagne.py

报错,缺少第三方扩展包pyasn1和psutil

安装第三方扩展包:

再次执行LaZagne-masterLaZagne-masterWindowslaZagne.py

仍然报错,提示如下:

经过搜索,并没有第三方扩展包memorpy,猜测是输入错误,正确的应该为memory_profiler

安装扩展包memory_profiler:

并且修改源文件:

路径为LaZagne-masterLaZagne-masterWindowslazagnesoftwaresmemorymemorydump.py

Line14:from memorpy import *

修改为

成功执行laZagne.py,如下图

本地密码查看工具LaZagne中的自定义脚本开发

0x03 开发脚本导出360极速浏览器密码

原工程提示开发自定义脚本可参考:

<a href="https://github.com/AlessandroZ/LaZagne/wiki" target="_blank">https://github.com/AlessandroZ/LaZagne/wiki</a>

但是该网页并没有提示信息,经过分析代码结构,得出以下修改方法

360极速浏览器:

360极速浏览器使用chrome内核,猜测存储密码的功能同Chrome相近,因此使用360极速浏览器作为测试对象

360极速浏览器提供密码保存功能,如下图

本地密码查看工具LaZagne中的自定义脚本开发

经测试发现:

Chrome保存密码的文件路径为:

360极速浏览器保存密码的文件路径为:

经过对比,二者的差别仅在文件名存在差异,数据结构相同

添加360极速浏览器密码导出功能:

1、修改LaZagne-masterWindowslazagneconfigmanageModules.py

(1)Line6添加如下代码:

from lazagne.softwares.browsers.cse import CSE

如下图

本地密码查看工具LaZagne中的自定义脚本开发

注:

lazagne.softwares.browsers.cse表示文件名

import CSE表示类名为CSE

(2)Line6添加如下代码:

CSE(),

添加moduleNames,对应类名CSE

本地密码查看工具LaZagne中的自定义脚本开发

详细代码可参照:

<a href="https://github.com/3gstudent/LaZagne/blob/master/Windows/lazagne/config/manageModules.py" target="_blank">https://github.com/3gstudent/LaZagne/blob/master/Windows/lazagne/config/manageModules.py</a>

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

完整代码如下:

(4)其他提示信息将chrome换成360cse就好

<a href="https://github.com/3gstudent/LaZagne/blob/master/Windows/lazagne/softwares/browsers/cse.py" target="_blank">https://github.com/3gstudent/LaZagne/blob/master/Windows/lazagne/softwares/browsers/cse.py</a>

保存文件,再次执行laZagne.exe

成功导出360极速浏览器保存的密码,如下图

本地密码查看工具LaZagne中的自定义脚本开发

0x04 使用py2exe将python脚本转成exe

LaZagne提供了编译好的Windows版本,下载地址如下:

<a href="https://github.com/AlessandroZ/LaZagne/releases/" target="_blank">https://github.com/AlessandroZ/LaZagne/releases/</a>

但是如果想扩展功能,例如添加导出360极速浏览器密码的功能,就需要找到自己编译的方法

方法如下:

1、下载py2exe

地址如下:

<a href="https://sourceforge.net/projects/py2exe/" target="_blank">https://sourceforge.net/projects/py2exe/</a>

2、新建mysetup.py

内容如下:

保存在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重新编译:

生成dist文件夹,再次执行laZagne.exe,成功,如下图

本地密码查看工具LaZagne中的自定义脚本开发

0x05 使用PyInstaller将python脚本转成exe

1、安装PyInstaller

方法1:使用pip安装

安装pywin32,下载地址:

<a href="https://sourceforge.net/projects/pywin32/files/pywin32/" target="_blank">https://sourceforge.net/projects/pywin32/files/pywin32/</a>

使用pip安装:

报错,如下图

本地密码查看工具LaZagne中的自定义脚本开发

方法2:下载源码安装

源码下载地址:

<a href="http://www.pyinstaller.org/downloads.html" target="_blank">http://www.pyinstaller.org/downloads.html</a>

测试使用的版本为PyInstaller-3.2.1

解压缩后进入其子目录bootloader:

cd bootloader

编译:

python ./waf configure build install

重新进入根目录:

cd ..

安装pyinstaller:

python setup.py install

安装成功,如下图

本地密码查看工具LaZagne中的自定义脚本开发

2、打包exe

参数如下:

C:Python27Scriptspyinstaller-script.py -F C:LaZagne-masterLaZagne-masterWindowslaZagne.py

-F参数表示打包成单个exe

在C:Python27Scripts下生成dist文件夹,里面包含生成的laZagne.exe

测试系统(未安装Python)执行laZagne.exe

成功运行,如下图

本地密码查看工具LaZagne中的自定义脚本开发

0x06 小结

本文介绍了使用python编写LaZagne扩展脚本的方法,实现了导出360极速浏览器的用户密码。针对不同的软件,使用LaZagne定制脚本导出密码无疑是一个十分高效的方式。

原文发布时间为:2017年9月9日

本文作者:3gstudent 

本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。

<a href="http://www.4hou.com/tools/7404.html" target="_blank">原文链接</a>