-
Notifications
You must be signed in to change notification settings - Fork 162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Invalid triple DES key size. Key must be either 16 or 24 bytes long #3
Comments
my os x version : 10.12.6 |
I have exactly the same issue using the same mac os version. It works very well decrypting the user keychain but the system keychain fails. I have done my test using the same password on both keychain. The following condition fails because my value of pad is equal to 188. I have tried to debug the problem without success. However, thanks for your great work ! |
@AlessandroZ Did you try the 24bytes System Key on macOS? |
I have tried.
|
On 10.12.6, doing exactly what @Explorer1092 did The system keychain is well decrypted. It's weird that it failed on newer version. I will try to upgrade later, to check again. Thanks a lot ! |
@AlessandroZ Thank you. @Explorer1092 I will check it asap ;-) |
@Explorer1092 It seems to be the DB Key decryption failed. It's occurred when the master key is invalid. |
Hi, just to let you know, I have updated my system and I have tried chainbreaker using your last commit and it worked very well for me. Here is my Mac OS version:
I won't have access to a Mac anymore, that's why I did a last try :). The issue has been fixed for me. Thanks for your work. Have a nice day. |
@AlessandroZ Thank you. |
@n0fate do you have a email?i can send the example keychain file to you. |
@Explorer1092 I got your email. but you didn't attach a SystemKey file. |
|
I have merged @ve6yeq 's code. |
MBP:chainbreaker-master kevin$ python chainbreaker.py -f /Library/Keychains/System.keychain -k 2fc651f52eca28b3bd66890c35528e95fa802e52fa4d6079
[-] DB Key
00000000: 00 .
[+] Symmetric Key Table: 0x00007968
Traceback (most recent call last):
File "chainbreaker.py", line 970, in
main()
File "chainbreaker.py", line 781, in main
passwd = keychain.KeyblobDecryption(ciphertext, iv, dbkey)
File "chainbreaker.py", line 599, in KeyblobDecryption
plain = kcdecrypt(dbkey, magicCmsIV, encryptedblob)
File "chainbreaker.py", line 696, in kcdecrypt
cipher = triple_des(key, CBC, iv)
File "/Users/kevin/Downloads/chainbreaker-master/pyDes.py", line 524, in init
self.setKey(key)
File "/Users/kevin/Downloads/chainbreaker-master/pyDes.py", line 537, in setKey
raise ValueError("Invalid triple DES key size. Key must be either 16 or 24 bytes long")
ValueError: Invalid triple DES key size. Key must be either 16 or 24 bytes long
The text was updated successfully, but these errors were encountered: