fix: cookie and password decryption for macOS (#465) (#501)

Co-authored-by: Michael L <luoshitou9@gmail.com>
This commit is contained in:
Roger
2026-03-15 00:45:31 +08:00
committed by GitHub
parent 47ae49707c
commit 239501535a
2 changed files with 8 additions and 2 deletions
+3 -1
View File
@@ -87,10 +87,12 @@ func (c *ChromiumCookie) Extract(masterKey []byte) error {
value, err = crypto.DecryptWithChromium(masterKey, encryptValue)
if err != nil {
log.Debugf("decrypt chromium cookie error: %v", err)
} else if len(value) > 32 {
// https://gist.github.com/kosh04/36cf6023fb75b516451ce933b9db2207?permalink_comment_id=5291243#gistcomment-5291243
value = value[32:]
}
}
}
cookie.Value = string(value)
*c = append(*c, cookie)
}
+5 -1
View File
@@ -2,6 +2,10 @@
package crypto
import "errors"
var ErrDarwinNotSupportDPAPI = errors.New("darwin not support dpapi")
func DecryptWithChromium(key, password []byte) ([]byte, error) {
if len(password) <= 3 {
return nil, ErrCiphertextLengthIsInvalid
@@ -11,5 +15,5 @@ func DecryptWithChromium(key, password []byte) ([]byte, error) {
}
func DecryptWithDPAPI(_ []byte) ([]byte, error) {
return nil, nil
return nil, ErrDarwinNotSupportDPAPI
}