导语
利用Python获取Google Chrome浏览器保存的账号和密码,也就是例如下图的登录界面:
当我们登录之后一般会习惯性地让浏览器默认记住密码,而这实际上存在安全隐患~~~
Let's Go!
开发工具
Python版本:3.6.4
相关模块:
pywin32模块
以及一些Python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
原理简介
我们的登录信息(每个网站对应的账号密码)就存储在下图所示的SQLite数据库中:
你可以在类似:
~\AppData\Local\Google\Chrome\User Data\Default
这样的路径下找到它。
Chrome的密码转储机制大概是这样的:
当用户访问网站时,Chrome会首先判断此次登录是否是一次成功的登录,如果成功登录,并且使用的是一套新的证书,这个证书是浏览器之前没有生成过的,Chrome就会生成一个提示条,询问用户是否需要记住密码。
当点击“保存密码”时,就会调用Chrome密码管理器的“保存”函数来响应操作。
T_T此处省略xxx字。。。
最后我们可以发现密码是调用Windows API函数:
CryptUnprotectData来加密的。
所以我们只需要连接数据库读取数据然后调用这个Windows API函数来还原密码就可以了。
利用Python我们只需要不到30行的有效代码即可获得Chrome浏览器保存的账号密码。
具体实现过程详见源代码。
使用演示
在cmd窗口运行“AnalyzeChrome.py”文件即可。
如下图所示(T_T打码了):
用户名也涉及隐私,所以我也打码了~~~
更多
T_T为了自己的账户安全,还是少把电脑借给别人或者在别人的电脑上登录一些网站吧AND so on...T_T
For information security~~~
领取专属 10元无门槛券
私享最新 技术干货