What steps will reproduce the problem? 1. attack passthrough with --all-handshakes and large wordlists
What is the expected output? What do you see instead? Expected to see Success/Fail Instead errors:
Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-6: Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-2:2549 PMKs per second. Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-5:1163 PMKs per second. Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-8:1142 PMKs per second. Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-4: Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Segmentation faults so far; 32671 PMKs per second.
What version of the product are you using? On what operating system? 4.1-dev r297 with Ubuntu 10.10 Maverick
Please provide any additional information below.
Using intel i7 965 HT disabled stock speed One GeForce GTX 480 running at stock speed Different errors appear when trying to run again, command used:
pyrit --all-handshakes -r oct2203-02.cap -e "masters" -i Super-WPA attack_passthrough
Wordlist used can be found on isohunt torrent name: WPA-PSK WORDLIST 3 final its 4gb to dl
Comment #1
Posted on Feb 23, 2011 by Grumpy CatTraceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-1:850 PMKs per second. Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Exception in thread Thread-4:9863 PMKs per second. Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() File "/usr/local/lib/python2.6/dist-packages/cpyrit/pckttools.py", line 709, in run solution = self.solve(results) ValueError: All PMKs must be strings of 32 characters
Fatal Python error: Inconsistent interned string state.
another error....
Comment #2
Posted on Feb 23, 2011 by Quick CamelThis is a rather strange error that I suspect to be caused by memory corruption. I've completed running a 4gb file through Pyrit on Ubuntu 10.10 without problems. Even if there was some error with reading files larger than 2**32-1 bytes, the errors you posted should not appear.
Can you run memcheck on that machine?
Comment #3
Posted on Feb 23, 2011 by Happy PandaComment deleted
Comment #4
Posted on Feb 23, 2011 by Happy PandaI have also processed the 4gb Custom-WPA wordlist and have not yet experienced this issue, and im using old x86 cpus.
Maybe this is related to the SandyBridge chipset defect or a corrupted wordlist?
Comment #5
Posted on Feb 23, 2011 by Grumpy CatIve just run one round of memtest with no problems, going to try a 12+ session tonight + tomorrow to confirm the results.
For info purposes this is a: Rampage II Extreme mobo with a asus GTX 480 and 6GB of 1333 mhz Kingston RAM with Ubuntu 10.10 32bit
Comment #6
Posted on Feb 24, 2011 by Happy PandaYou know, you should import the wordlist to a db/sql server, since pyrit automatically parses it for "bad words"
Using the import_wordlist option, once youve got all your wordlists loaded, you can then creat_essid and do pyrit batch, as opposed to doing a passthrough attack, if theres any problem with your word lists, pyrit db should catch it and illiminate the issue, I am assuming theres some sort of problem with your wordlist, you also might want to run some tests on your hard disk to ensure there is not a problem with corruption on your disks.
Comment #7
Posted on Feb 24, 2011 by Quick CamelThe errors you see ("ValueError: All PMKs must be strings of 32 characters") are actually just safeguards and should never get triggered under normal operation. This is especially true as under "passthrough"-modes, the Pairwise Master Keys are created as strings of 32 characters each and then passed to the EAPOLCracker (which throws the error above).
I strongly suspect some memory corruption issue (happening in RAM).
Comment #8
Posted on Feb 24, 2011 by Grumpy CatWell I just concluded a 10+ hour session of memtest86 without errors, not sure what else it could be, I will try the import to server route and see what happens.
Comment #9
Posted on Feb 25, 2011 by Happy PandaAre you aware of the flaw in intels sandy bridge platform? I dont know if this is relevant, but is your chipset part of the deffective shipment?
Comment #10
Posted on Feb 25, 2011 by Grumpy CatHow could I find that out?
Comment #11
Posted on Feb 25, 2011 by Grumpy CatNow that I looked, I do not believe I have the sandy bridge chipset. I have 6 SATA ports but all are 3GB/s. This mobo was bought late 2009. I am currently putting my wordlists into pyrit, will let everyone know how it works after this.
Comment #12
Posted on Feb 26, 2011 by Grumpy CatOk so I got my ~960 million words imported into pyrit along with the masters essid; now when I run batch it ran well to about 60% but now I am getting segfaults and this error:
hair@zod:~/monkeybusiness$ pyrit batch Pyrit 0.4.1-dev (svn r297) (C) 2008-2011 Lukas Lueg http://pyrit.googlecode.com This code is distributed under the GNU General Public License v3+
Connecting to storage at 'file://'... connected. Working on ESSID 'masters' Traceback (most recent call last):far (64.5%); 37529 PMKs per second. File "/usr/local/bin/pyrit", line 6, in pyrit_cli.Pyrit_CLI().initFromArgv() File "/usr/local/lib/python2.6/dist-packages/pyrit_cli.py", line 115, in initFromArgv func(self, **options) File "/usr/local/lib/python2.6/dist-packages/pyrit_cli.py", line 803, in batchprocess for results in dbiterator: File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 787, in next solvedResults File "/usr/local/lib/python2.6/dist-packages/cpyrit/storage.py", line 486, in setitem f.write(PYR2_Buffer(essid, results).pack()) File "/usr/local/lib/python2.6/dist-packages/cpyrit/storage.py", line 248, in pack pmkbuffer = ''.join(pmks) OverflowError: join() result is too long for a Python string
Comment #13
Posted on Feb 26, 2011 by Happy Pandaare you planning to batch process/precompute the pmks into a db?
Comment #14
Posted on Feb 27, 2011 by Grumpy Catyes...
Comment #15
Posted on Feb 27, 2011 by Happy Pandayeah were doin the same thing, and since, apparently pyrit "serve" is broken atm, we found that u can manually run pyrit batch on multiple nodes configured for the same sql db and they will all process different work units of the same db, working together in essence. So, just letting ya know, thats how we found we could actually use multiple nodes to compute the psk db
Comment #16
Posted on Feb 27, 2011 by Grumpy CatOk i think this one might be solved, just gonna wait a bit longer for a good overnight run to see
Comment #17
Posted on Feb 28, 2011 by Grumpy CatStill getting segfaults with pyrit batch command... maybe I will try the downloadable version of pyrit to see if it behaves differently...
Comment #18
Posted on Feb 28, 2011 by Happy PandaPyrit serve has not been fixed yet as far as I know, svn 0.4.1 still has the issue
Comment #19
Posted on Feb 28, 2011 by Happy PandaPersonally, I think Precomputing the PMKs to file:// is pretty retarded, setup your config for sql instead, that way you have a solid foundation moving forward for expansion, at least with sql you can configure your hosts conf file and work on the same task with your nodes, and until they fix the pyrit serve command, this is the only way and your spinnning your wheels and going nowhere, trust bro, were in the same boat as you, and Im sure your going to eventually come to the same conclusion, just trying to save you some time.
Comment #20
Posted on Mar 1, 2011 by Swift KangarooI've had all sorts of issues with WPA-PSK WORDLIST file. For some reason it came in two files. I catted them into a new file and I no longer had any corruption issues. I recommend you do the same. I think the torrent is corrupt.
Comment #21
Posted on Mar 13, 2011 by Grumpy CatIt turns out my issues were likely RAM related, yesterday my RAM failed completely.
Comment #22
Posted on Mar 13, 2011 by Quick Camel(No comment was entered for this change.)
Status: WontFix
Labels:
Type-Defect
Priority-Medium