gpt4 book ai didi

google-chrome - 在 Windows 上解密 Chrome 的 cookie

转载 作者:行者123 更新时间:2023-12-02 03:34:45 33 4
gpt4 key购买 nike

我写了一个程序来使用 chrome 的登录 cookie 来自动执行某些操作,但是由于 Chrome 在一月份加密了所有 cookie,我的程序不能再工作了。

我正在尝试通过 This Topic 解密 cookie,并在 mac os 上的 java 中成功,但是我平时的运行环境是win7 os,所以只好在windows上解密。

我找到了 os_crypt_win.cc在 Chromium 的源代码中,它有一个加密部分:

bool OSCrypt::EncryptString(const std::string& plaintext, std::string* ciphertext) {
DATA_BLOB input;
input.pbData = const_cast<BYTE*>(reinterpret_cast<const BYTE*>(plaintext.data()));
input.cbData = static_cast<DWORD>(plaintext.length());

DATA_BLOB output;
BOOL result = CryptProtectData(&input, L"", NULL, NULL, NULL, 0, &output);
if (!result)
return false;

// this does a copy
ciphertext->assign(reinterpret_cast<std::string::value_type*>(output.pbData), output.cbData);

LocalFree(output.pbData);
return true;
}

我用java模仿这部分JNA :

String encrypted = bytesToHex(Crypt32Util.cryptProtectData(Native.toByteArray(plaintext), 0));

String encrypted = bytesToHex(Crypt32Util.cryptProtectData(plaintext.getBytes());

String encrypted = bytesToHex(Crypt32Util.cryptProtectData(plaintext.getBytes("UTF-8"));

String encrypted = bytesToHex(Crypt32Util.cryptProtectData(plaintext.getBytes("UTF-16"));

但我得到了一个错误的加密值,与 Chrome 中的值存储不同。

我是不是使用了错误的方法来加密它,还是我错过了一些重要的东西?

你能帮我解决这个问题吗?

最佳答案

您使用了正确的方法来加密值。值(value)观如何“错误”?如果它们只是与存储在 chrome 中的不同,那不是问题。原因很简单:

来自 msdn :

"The function creates a session key to perform the encryption. The session key is derived again when the data is to be decrypted."

来自 msdn blog :

"A random session key is created for each call to CryptProtectData. This key is derived from the master key, some random data, and some optional entropy passed in by the user. The session key is then used to do the actual encryption."

您应该检查的重要事情是您是否能够使用 DecryptUnprotectData 解密这些值。

关于google-chrome - 在 Windows 上解密 Chrome 的 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24353620/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com