基于谷歌内核(Chromium)浏览器Cookie值的读取工具
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
一、基于谷歌内核浏览器的cookie文件保存位置以目前流行的三款基于Chrominum内核的浏览器为例,Cookie文件保存在当前用户的AppData目录下,注意该文件没有扩展名。 1、谷歌的Chrome 2、奇虎的360se 3、微软的Edge 注意360的保存位置略有不同。 二、Cookie文件的格式和加密方式该Cookie文件是sqlite格式的数据库文件,可以用sqlite数据库浏览工具打开查看,如下图: 打开观察发现cookie值是被加密的,采用的加密算法是AES,确切的说是GCM算法。要进行解密则需要知道秘钥key和向量iv。那么key和iv保存在哪? 三、秘钥key在哪秘钥文件在“Local State”文件中,注意这是一个json文件,不是目录,所在位置在Cookies文件的上两层目录中。对应上述三款浏览器分别如下:
该文件是一个json文件,其中的“os_crypt/encrypted_key”键值是以base64的编码保存的加密后的key。base64解码后是一个二进制数据块。前5个字符是"DPAPI",是加密算法标记,可以忽略,后面才是被加密后的key。 DPAPI(Data Protection Application Programming Programming Interface)是Windows操作系统内置的数据加密接口,主要用于保护敏感信息(如密钥、用户凭据等)。这是windows特有的加密算法,不在openssl算法库中,只能使用windows自带的API函数CryptUnprotectData对加密后的key进行解密,其它语言应该有对API的封装或实现。 为何要采用DPAPI的方式对key进行加密呢? 它的好处是,只有在本机调用CryptUnprotectData函数对本机的key进行解密才能成功,如果将“Local State”拷贝到其它机器进行解密则会失败。也就是说DPAPI在加密的过程中加入了当前用户的“身份”和“机器”信息,解密时会进行校验。这种设计就确保了你无法通过“偷窃”的方式对key值进行解密(比如拷贝到自己的机器上慢慢研究),只能在“案发现场”进行解密,从而在某种程度上保护了cookie的安全。 四、向量iv在哪iv就在cookie加密的数据中,cookies数据库文件的“encryped_value”字段中。其编码格式为:3字节的标志符+12字节iv+真正的AES加密数据。 该值的前三个字符是“v10”,可忽略,从第3个字符(以0为起始值)开始的后12个字节是iv。AES加密数据从第15个字节开始到最后。 到此为止我们已经得到了key、iv以及待解密的AES数据。接下来就可以调用AES解密函数对加密数据进行解密了。 五、CookieReader工具介绍由于谷歌的Chromium内核在运行时会以“完全独占”的方式(其它程序无法共享读取)打开cookies数据库文件,因此使用该工具前要关闭对应的浏览器,否则将无法读取到该浏览器的cookie数据。当然也可以将cookies文件拷贝出来进行读取。即使以这种方式也要先关闭对应的浏览器,否则拷贝出来的cookies文件是空文件。强烈建议拷贝出来后进行读取。 同样,在该工具读取Cookies文件时,对应的浏览器也无法正常读取到Cookie数据,因为无法独占打开数据库了。点击下载CookieReader工具 下拉框有四种模式: 1、自选择cookie文件 该方式下,用户可以自己指定需要打开的Cookie文件, 比如将Cookies文件拷贝到本机的其它地方进行读取。 2、谷歌Cookie文件 该方式下,用户无需选择Cookie文件,该工具直接读取当前谷歌浏览器的Cookie目录所在的文件,此时务必要关闭谷歌浏览器。 3、360 Cookie文件 同上,读取360浏览器的Cookie。 4、Edge Cookie文件 同上,读取微软Edge浏览器的Cookie文件。 转自https://www.cnblogs.com/softlee/p/18915269 该文章在 2025/6/12 11:57:02 编辑过 |
关键字查询
相关文章
正在查询... |