Pyrit setup

From ivc wiki
Revision as of 13:53, 9 April 2010 by Ivc (talk | contribs)
Jump to navigationJump to search

Pyrit is a tool used to pre-compute all possible SSID:PASSWORD combinations to generate a list of PMK tokens.

Pre-requisite

Pyrit version 0.3.0 and up depend on Scapy2 (package inspection) and SQLAlchemy 0.5.6 (database interface).

Scapy: On a Debian bases distribution, get the package using aptitude. Backtrack 4 final include the Scapy2.

aptitude update
aptitude install python-scapy scapy2

SQLAlchemy: As of writing, Backtrack 4 pwnsource, does only include version 0.4.5. Version 0.5.6 or later is required for pyrit 0.3.0.

Get the latest stable release, extract, build and install.

wget http://downloads.sourceforge.net/project/sqlalchemy/sqlalchemy/0.5.8/SQLAlchemy-0.5.8.tar.gz
tar zxvf SQLAlchemy-0.5.8.tar.gz
cd SQLAlchemy-0.5.8
sudo python easy_install SQLAlchemy

Install

Main App

Download the latest pyrit from pyrit.googlecode.com.

wget http://pyrit.googlecode.com/files/pyrit-0.3.0.tar.gz

Extract, build and install the package.

tar zxvf pyrit-0.3.0.tar.gz
cd pyrit-0.3.0
python setup.py build
sudo python setup.py install

If errors like this occurs:

cpyrit/_cpyrit_cpu.c:21:20: error: Python.h: No such file or directory

On Ubuntu, try to install python2.6-dev along with the other dev packages.

Test to verify the core modules work.

pyrit eval
pyrit list_cores
pyrit -e linksys create_essid

If these operations execute without error, everything should be set.

GPU Cores

Now, to install the GPU accelerated modules.

OpenCL (Nvidia/AMD/Cell): Requires the OpenCL SDK; Nvidia OpenCL SDK or ATI Stream SDK.

But before installing the SDK, the (proprietary) graphics drivers for the specific card has to be installed before hand. This is normally a procedure covered on great detail in the distro wiki or help forum, as it's something most Linux users need to do to get GPU acceleration up and running (games). For Ubunto, Check the ATI Binary Driver Howto.

To install the ATI SDK, follow these steps to the path set up.

Download the ATI SDK package from the official ATI Stream SDK page.

wget http://download2-developer.amd.com/amd/Stream20GA/ati-stream-sdk-v2.01-lnx64.tgz
tar zxvf ati-stream-sdk-v2.01-lnx64.tgz
mv ati-stream-sdk-v2.01-lnx64 ~/ati-stream-sdk

As per the installation notes, set the path.

pico ~/.bashrc
paste the following lines and correct the username/64-bit path:
export ATISTREAMSDKROOT=/home/ivc/ati-stream-sdk
export ATISTREAMSDKSAMPLESROOT=/home/ivc/ati-stream-sdk/samples
export LD_LIBRARY_PATH=$ATISTREAMSDKROOT/lib/x86_64:$LD_LIBRARY_PATH

The cpyrit setup.ph script doesn't know where to find the OpenCL header files and will report this error:

_cpyrit_opencl.c:23:19: error: CL/cl.h: No such file or directory

Edit setup.py and at the top add the path for /home/ivc/ati-stream-sdk/include to the list:

for path in ('/usr/local/opencl/OpenCL/common/inc', \
           '/opt/opencl/OpenCL/common/inc', \
           '/home/ivc/ati-stream-sdk/include', \
           '/usr/local/opencl/include'):

I had problems with the build and ld reporting it couldn't find the OpenCL library:

/usr/bin/ld: cannot find -lOpenCL
collect2: ld returned 1 exit status

A quick workaround was to create a symblink of libOpenCL.so to /lib64

sudo ln -s /home/ivc/ati-stream-sdk/lib/x86_64/libOpenCL.so /lib64/

And finally, to build the pyrit OpenCL module.

wget http://pyrit.googlecode.com/files/cpyrit-opencl-0.3.0.tar.gz
tar zxvf cpyrit-opencl-0.3.0
python setup.py build
sudo python setup.py install

Test to verify the new module is ready.

pyrit list_cores
pyrit benchmark

Nvidia CUDA cores install in a similar way. I have not tested this method. Make sure the Nvidia graphics drivers work with the graphics card. Next install the CUDA-Toolkit to get the required Nvidia compiler.

To install the pyrit CUDA module.

wget http://pyrit.googlecode.com/files/cpyrit-cuda-0.3.0.tar.gz
tar zxvf cpyrit-cuda-0.3.0
python setup.py build
sudo python setup.py install

Test to verify the new module is ready.

pyrit list_cores


References