login about faq

Due to the large amount of spam accounts, we temporarily disabled new user sign ups. To override this, email newuser.lgqa@gmail.com and an admin will determine if you are permitted to join


So I came across this somewhere and I went to the website to check it out. I don;t think I understood it entirely. In simplest form, what is pyrit and what does it accomplish?

asked Aug 25 '12 at 02:04

SuperZeoX's gravatar image

SuperZeoX
15101215


Briefly, It facilitates cracking through wireless protocols such as WPA utilizing the massive computing power of many core architectures such as GPGPUs. Such technique yields a very powerful and complex attack in far less computational time especially when brute forcing. You could perform an attack that would take days (on the CPU counterpart) in a matter of hours or less due to the massive parallelism and throughput of such hardware and parallel programming disciplines (More about GPGPUs).

From the project's page on Google code:

Pyrit takes a step ahead in attacking WPA-PSK and WPA2-PSK, the protocols that protect today's public WIFI-airspace. Pyrit's implementation allows to create massive databases, pre-computing part of the WPA/WPA2-PSK authentication phase in a space-time-tradeoff. The performance gain for real-world-attacks is in the range of three orders of magnitude which urges for re-consideration of the protocol's security. Exploiting the computational power of Many-Core- and other platforms through ATI-Stream, Nvidia CUDA, OpenCL and VIA Padlock, it is currently by far the most powerful attack against one of the world's most used security-protocols.

Briefly the main challenge here is that in order to try one combination of Pairwise Master Key used to secure the Wireless LAN, it would be computationally in-feasible as each time the string you are tying is passed through multiple slow hash functions (by design) which dramatically hinders the performance of your "not so parallel" typical brute force algorithm which runs on the CPU. Another part of the challenge is also the space complexity as each hash occupies a large size in memory. Trying such HUGE amount of combinations as in brute-force could very easily exceed the memory capacity not to mention that reading and writing data onto the hard disk is also a performance penalty. Thusly, more parallelism and throughput is required in such a way that u 'batch-process' multiple potential strings in parallel and smartly exchange the data (also in batches) between the device (GPU), the host(CPU) then to the main host memory and HDD. Thus, minimizing the reading and writing operations as well.

Another quote from the project's page:

Attacking WPA/WPA2 by brute-force boils down to to computing Pairwise Master Keys as fast as possible. Every Pairwise Master Key is 'worth' exactly one megabyte of data getting pushed through PBKDF2-HMAC-SHA1. In turn, computing 10.000 PMKs per second is equivalent to hashing 9,8 gigabyte of data with SHA1 in one second. The following graph shows various performance numbers measured on platforms supported by Pyrit.

As you see in the statistics, Cracking on the GPU using pyrit is way faster than typical cracking on the CPU. Compare the core i7 to the nvidia GTX for example:

alt text

Here is a demonstration on how fast Pyrit is when cracking WiFi pass hashes:

http://youtu.be/KOmacSCmlbY

This answer is marked "community wiki".

answered Aug 25 '12 at 05:07

TjWallas's gravatar image

TjWallas
271369

wikified Aug 25 '12 at 09:57

Thank you very much! I had a feeling this is what it was, but I like the way you described it. Great Job!

(Aug 25 '12 at 13:52) SuperZeoX SuperZeoX's gravatar image
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or __italic__
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported


Join Us in the Chat Room

Tags:

×506
×52
×31

Asked: Aug 25 '12 at 02:04

Seen: 543 times

Last updated: Aug 25 '12 at 13:52