Itunes Backup - Printable Version +- hashcat Forum (https://hashcat.net/forum) +-- Forum: Misc (https://hashcat.net/forum/forum-15.html) +--- Forum: General Talk (https://hashcat.net/forum/forum-33.html) +--- Thread: Itunes Backup (/thread-6047.html) |
RE: Itunes Backup - Si2006 - 01-18-2017 (01-17-2017, 09:33 PM)epixoip Wrote: I'm not that familiar with Apple products or iTunes but assuming the algorithm is one that Hashcat supports, we should be able to modify plist2hashcat.pl to support both iOS and iTunes. Can you provide me with an example of a manifest.plist that contains the required keys? Password is 123456 RE: Itunes Backup - Tuxel - 01-18-2017 My file is differently structured With plistutil you can convert the file to Readable format RE: Itunes Backup - trebor_hc - 01-18-2017 Just dropping in to register my interest in this as well. If any specific versions of iOS backup need to be created, I could probably help with that too. Thanks. RE: Itunes Backup - rk - 01-18-2017 In the manifest.plist file there are attributes in the keybag to derive the password. All the attributes (wpky, salt, iter etc) are pretty easy to parse. There is the header, followed by 00 00 00. The next offset is the length of the attribute which always seems to run neatly up to the next attribute. My iTunes pw is 4589. The iterations are 10000 The wkey (the last wkey in the keybag) is: 1D C1 F4 BA 48 44 D6 79 00 01 F1 45 05 91 32 18 73 C6 1D F3 66 61 12 CE 59 48 BF 93 BB C5 1E C9 00 9B ED 68 1D 0F 67 92 The salt is: 1F 90 BE 09 15 9A 77 21 54 D9 95 F3 93 14 41 83 67 C3 E3 3F I know that each of those hex bites are required and if any are compromised Elcomsoft can't get the password. I believe this pw to be PBKDF2-HMAC-SHA1. This should be all the data required to get the pw, if anyone can figure out how to input this to hashcat we may be done here. I tried a few variations like converting it to base64 but no luck. It looks too long. H5C+CRWadyFU2ZXzkxRBg2fD4z8=:HcH0ukhE1nkAAfFFBZEyGHPGHfNmYRLOWUi/k7vFHskAm+1oHQ9nkg== RE: Itunes Backup - boonkerz - 01-19-2017 My File looks like this RE: Itunes Backup - philsmd - 01-19-2017 Well, it is pretty easy to see from the link posted by keen (http://stackoverflow.com/questions/1498342/how-to-decrypt-an-encrypted-apple-itunes-iphone-backup) that after the $key = pbkdf2_hmac_sha1 ($pass, $salt, $iter) call the WPKY key needs to be "unwrapped" (see AESUnwrap ($key, $wpky) in the code snippet from the stackoverflow post) to verify if the first 8 bytes are 0xa6a6a6a6a6a6a6a6. If this is successfull the $pass (and therefore the $key + $wpky combination) are correct. Therefore this algorithm is not just -m 12000 = PBKDF2-HMAC-SHA1 and is also not yet supported by hashcat. Update: Here you have a POC (proof of concept) to show that this is exactly how you possibly can attack this: Code: #!/usr/bin/env perl Note: I put this code together pretty quickly so please don't blame me for it. Feel free to use it (pubic domain license). This is an example on how you use it (dictionary/password candidates come from stdin, Manifest file as first command line argument): Code: ./hashcat --stdout -a 3 ?d?d?d?d?d?d | ./crack_plist_file.pl Manifest.plist RE: Itunes Backup - rk - 01-19-2017 Nice work and thanks for straightening this out. RE: Itunes Backup - Tuxel - 01-19-2017 It works. Thank you . I still have something from the password for 3 characters he already calculates 4 hours. Does my command work? Code: ./hashcat --stdout -a 3 48df8dx4?a?a?a | ./plisttohash.pl Manifest.plist RE: Itunes Backup - philsmd - 01-19-2017 Yeah, looks good Tuxel (if you are sure about the hard-coded "48df8dx4" beginning). In theory you should be able to speed it up significantly e.g. with the "parallels" tool: Code: ./hashcat --stdout -a 3 48df8dx4?a?a?a | parallel --pipe ./plisttohash.pl Manifest.plist Well, and if you want that devs implement this into hashcat (with GPU support), then you shouldn't hesitate to open a github feature request. But there is still some information missing to be double-checked (see https://hashcat.net/faq#i_want_to_request_some_new_algorithms_or_features_how_can_i_accomplish_this). For instance, we should know exactly the max/min salt, wpky lengths, min/max iterations etc. RE: Itunes Backup - Tuxel - 01-20-2017 I would be very glad if there would be a GPU Hashcat integration. It's a great project. Thank you all Uwe |