Showing posts with label Cracking. Show all posts
Showing posts with label Cracking. Show all posts

Sunday, February 5, 2012

Truecrypt's Guide




Contents


  • Introduction
  • What's Truecrypt and what are its advantages
  • Things to know before to try
  • Using truecrypt
  • Common Problems
  • Conclusion
Download
http://www.truecrypt.org/downloads

Introduction

This is just a little guide about using truecrypt, I'm writing it because this great tool have been mentioned several times in r00tsec but there's no guide to use it yet. Many sites don't have a truecrypt guide because it use is fairly easy, however, every guide (including the Official Beginner's Manual) is about truecrypt's GUI which work in the interactive mode, this is why this guide is about using truecrypt from the console and will be a Linux based guide.

If you're like me, then you'll find every possible time to use some console command instead of using a GUI, so for you is this guide. Isn't perfect, isn't the greatest, but I'll do my best to cover the things that create more confusion about the tool, also, will be (or try to) easy to follow for those who are using the tool for the first time and those who already know the tool.

For convenience, I will be using several concepts to define different things, by "virtual volumes" I'll be meaning every group of clusters (random space in a hardrive or a hardrive partition), by "real volumes" I'll be meaning hardrives or partitions and by "removable volumes" I'll be referring to every removable device (like usb hardrives).

What's Truecrypt and what are its advantages

Truecrypt its an opensource tool build with privacy on mind. Its also referred as hard-disk encryption software, as of today, portable in most of the mayor systems. It works by encrypting the data 'on-the-fly', this means that, if I open a music file that is saved on a encrypted volume, this file will be decrypted in the RAM memory system while the data is asked by the music player, when saving the data, all the encrypting is done in the RAM as well while truecrypt reads the file(s) that are being saved in the volume.

From paranoids to companies, this is the best tool to use when you want to keep your information private for peeking eyes. If you're looking for a solution to keep your things private this tool will be your best friend for sure!

Truecrypt is loved by many because it has many important features and this is a list of them:


  • Portable: Can be used in several of the mayor operating systems around, Windows, Linux and Mac OSX.
  • Volume scope: You can encrypt just a portion of disk or disk partition by creating a virtual volume, you can encrypt a partition or hardrive entirely and you can encrypt removable devices.
  • Several algorithms: At the time of this writing, Truecrypt support three encryption algorithms, AES, Twofish and Serpent.
  • Cascades: Related with the avobe, one of the best things to enforce security is that you can use two or three algorithms at the same time, this is what is called cascades which are: AES-Twofish, AES-Twofish-Serpent, Serpent-AES, Serpent-Twofish-AES and Twofish-Serpent.
  • Several hashes: Besides algorithms, truecrypt uses hashes to create random values from password and key files, at the time of this writing there are only three hashes available, SHA-1, RIPEMD-160 and Whirlpool.
  • Passwords and key files: Truecrypt is flexible in the way that you can use only passwords to protect the encrypted volume or you can use passwords and key files. The key files are used as random data that is sourced and implemented while creating the hashes, the great thing is that any kind of file and even entire directories can be used as key file, meaing that you can use a mp3 file or a video avi file as key file.
  • Interfaces: The tool can be used through a GUI (Graphical User Interface) or from the console which offer wider portability.
  • Interactive use: For those who are starting to use the tool, this is the best. The interactive mode is used by truecrypt when there are no parameters passed to the initial command, this means that truecrypt will ask the user for every piece of information neede in order to create an encrypted volume thus avoiding errors that can be created by new users.
  • Two kind of volumes: There are normal volumes and hidden volumes. At the beginning, every volume is a normal one, hidden volumes are created inside of normal volumes as a way to improve the privacy of the data.
  • Plausible deniability: Related to the previous, this is by far one of the greatest advantage of this tool. Basically, since every truecrypt volume, unless decrypted, is showing as random data, it's almost impossible to know that such truecrypt volume exists, besides that, if the normal volume is expose (someone forces to give the access password), it's impossible to know that there's a hidden volume in it thus the information saved in that hidden volume.


You can deny that there are alot of advantages in the tool, and the best of all, is free ;)

Things to know before to try

When it comes to Linux systems, you need to have specifics kernel support in order "to use" truecrypt volumes, not to create them, just to use them. Also, the specific support you'll need depends on truecrypt's version you're using. Right now there are two mayor versions of the tool being used, the 4.3a and the 5.1a, this two have at least one very important difference regarding to linux support, the 4.3a uses device mapper while the 5.1a use FUSE (Userspace driver). Also, no matter what version of truecrypt you are using, you need to have the loop device support in the kernel.

So the first thing you'll need to check before start using truecrypt is that you have kernel support (activate them as modules or built-in accordingly to the truecrypt version you use):

Device Drivers --> Multiple devices drivers support (RAID and LVM) --> Device mapper support

File systems --> Filesystem in Userspace support

Device Drivers --> Block Devices --> Loopback device support



Using truecrypt

If you're starting to use this tool you need to understand at least how to encrypt what you need to encrypt, and to this, you need to understand that there are different scopes and kinds of volumes.

Virtual volumes: Lets say you have a linux partition in /dev/sda4 and this partition have 20GB of space. Now, virtual volumes are just a portion that can be reserved from a partition (or a hardrive if don't have any partitions), basically, is just a file with a fixed lenght that you create on a partition or hardrive. In /dev/sda4 a virtual volume could be one single file called private and be about 5GB of space, in turns, you have /dev/sda4 as a partition of 20GB with a file of 5GB. I call them virtual volumes because every truecrypt volume needs to be mounted and worked as if it was a single disk, so, even when it's actually just a file, it needs to be treated as if it was a real disk on your system.

Real volumes: Remember, as I said in the introduction, I'm using this terms as convenience so you can easily understand the way it all works, in the case of real volumes, I mean every partition or entire hardrive that's going to be encrypted. For instance, lets take the avobe example, you have a partition called /dev/sda4 and is about 20GB of space; You can encrypt the partition entirely, not just create a file on it, in the same way, if you have only one disk with no partitions at all, you can encrypt it completely. Those can be real volumes.

Removable volumes: This are just any kind of removable device where you can save data, like USB Hardrive, flashdrives and such.

Every truecrypt volume needs a path (like /media/sda4/private) which is going to be mapped then to a device in /dev, if it's a virtual volume, it will be mapped to /dev/mapper/truecryptN, this path is where the truecrypt volume is and is importand (demanded) to indicate it in order to create the volume. To use the volume, besides a known path, is need a mount point (like /mnt/something or /media/data), this is only used once the truecrypt volume have been created and mapped to device in /dev, this mount point is where you actually are going to save or access the data that is in the truecrypt volume, no worries if you don't catch this yet, you'll understand it later ;)

As I said before, this guide is about using truecrypt from the console in Linux systems, for a guide about the use with the graphical interface please refer to the Official user's guide:
http://www.truecrypt.org/docs/tutorial.php


From the command line, truecrypt has many parameters that can be used to create your volumes, I won't cover every possible use of those parameters so you can check all the options avialable issuing the command:
root@root [~]# truecrypt --help


However, if you've been following me so far, you should remember that I talked about the interactive mode in the advantages of truecrypt section. The great thing about this mode of operation is that you don't really need to know any other parameter in order to create a truecrypt volume, from the command line, the interactive mode is called like this:
root@root [~]# truecrypt --interactive


In this mode, the program will ask you everything that it needs to know to create a volume, the volume path, a password, a hash, a key file (optional), and other important stuff. This mode however can be called by truecrypt itself if the user issued some parameters but not every required to create the volume, for instance, lets say we create a volume called mystuff with the password uid0R00tS3c, the command could be something like this:
root@root [~]# truecrypt --password uid0R00tS3c --create /media/hda3/private


The thing with the above command is that it lacks of other important information, for example, the hash that should be used for the password, in this case, truecrypt will notice that not all the need parameters have been issued from the beginning so it will start to ask the user for all the missing data.

Moving on, using truecrypt is incredible easy, mostly thanks to the interactive mode. Starting from here, I'll be issuing several ways about how to use the tool to fit better your needs, feel free to ask or add whatever you think will improve this guide. For convenience, I'll be using two example disks, one is a partition /dev/hda2 that is mounted on /media/data, and the other will be an entire disk /dev/sda1 that will be mounted on /media/mydisk

Create a volume called 'private' on /dev/hda2:
root@root [~]# truecrypt --create /media/data/private


Create a volume called 'private' using the password R00tS3c:
root@root [~]# truecrypt --password R00tS3c --create /media/data/private


Create a volume called 'private' using password and the algorithm Twofish:
root@root [~]# truecrypt --password R00tS3c --encryption Twofish --create /media/data/private


Create a volume called 'private' with a blank password but using a key file:
root@root [~]# truecrypt --password '' --keyfile /home/rootsec/logo.jpg --create /media/data/private


Create a volume called 'private' with password, using cascade encryption and a directory as key file:
root@root [~]# truecrypt --password R00tS3c --keyfile /home/rootsec/documents --encryption AES-Twofish-Serpent --create /media/data/private


Create a volume called 'private' with password, key file, cascade and hash:
root@root [~]# truecrypt --password R00tS3c --keyfile /home/rootsec/mymovie.mpg --encryption Twofish-Serpent --hash SHA-1 --create /media/data/private


Create a key file called 'useme' using RIPEMD-160 hash
root@root [~]# truecrypt --keyfile-create --hash RIPEMD-160 /home/rootsec/useme


Add a key file to an existent volume called 'private':
root@root [~]# truecrypt --keyfile-add --change /home/rootsec/useme /media/data/private


Create a volume with an specific filesystem:
root@root [~]# truecrypt --filesystem ext3 --create /media/data/private


Create a volumen called 'private' with password and using a file as random generator instead of a hash:
root@root [~]# truecrypt --password R00tS3c --random-source /home/rootsec/drums.mp3 --create /media/data/private


Mount a volume called 'private' in /media/mystuff/:
root@root [~]# truecrypt /media/data/private /media/mystuff


Pass specific options to mount:
root@root [~]# truecrypt --mount-options ro /media/data/private /media/mystuff

The above will mount the truecrypt volume 'private' on /media/mystuff as read only

Create a volume with fixed space:
root@root [~]# truecrypt --size 200MB --create /media/data/private

The size can be used in KB, MB or GB, always put any of this, just putting the number will return an error.

Create a hidden volume:
root@root [~]# truecrypt --create /media/mydisk
root@root [~]# truecrypt --type hidden --size 2GB --create /media/mydisk

As I said before, hidden volumes are created inside normal volumes, this is way we need to create a normal value before. In this case (and if you remember) /media/mydisk is where the example /dev/sda1 disk is mounted, suppose that this disk is about 100GB, therefore, what we're doing here is create a hidden volume of 2GB inside that disk of 100GB.

Every truecrypt volume is mapped to /dev/mapper/truecryptN where 'N' is a number starting from 0 and assigned by avialability, lets say that you create one truecrypt volume, then it'll be mapped to /dev/mapper/truecrypt0, then you create another one, this will be mapped to /dev/mapper/truecrypt1, then you create another that will be mapped to /dev/mapper/truecrypt2 and so on. You can change this numbers for other if you like to avoid the automatic mapping. This is usefull when you have several truecrypt volumes and you need to know which is what:
root@root [~]# truecrypt --device-number 10 --create /media/data/private

This will map the truecrypt volume to /dev/mapper/truecrypt10

Change a volume: Imagine that you create the volume private with an space of 10GB but know you see that you don't need it to be so big, so lets change that:
root@root [~]# truecrypt --size 5GB --change /media/data/private

When you're doing this, you don't need to specify the older values, just the new ones, so if we want to change the password will use:
root@root [~]# truecrypt --password R00tS3c2 --change /media/data/private


List all mapped (thus mounted) truecrypt volumes:
root@root [~]# truecrypt --list


Unmount a truecrypt volume:
root@root [~]# truecrypt --dismount /media/data/private


Unmount all truecrypt volumes at once:
root@root [~]# truecrypt --dismount


Check the description of a volume:
root@root [~]# truecrypt --properties /media/data/private


Remove a truecrypt volume: If it's a virtual volume, all you need to do is erase the file, for instance, if I wanted to remove the 'private' volume created from previous examples, I'll use:
root@root [~]# rm /media/data/private

If you encrypted an entire partition or disk and you don't want it encrypted anymore, the only thing you can do is format.

Finally, if you want to save or access data in a truecrypt volume, all you have to do is mount it and save the data to the mount point, for instance, if I created the volume 'private' and mounted it in /media/mystuff, all I need to do in order to save my information in the encrypted volume is to copy (or move) the data to /media/mystuff.


Common problems

There are several common problems while using truecrypt but most of them are related to the lack of kernel support, but for a matter of completeness, this are the most common errors:

- Mount Failed: Yeah, this is all you'll see while trying to mount the volume :P This error is caused because device mapper support or FUSE (depending on truecrypt's version used) isn't active.

-Wrong FS: So, you're going to mount the volume and it shows:
mount: wrong fs type, bad option, bad superblock on /dev/mapper/truecrypt0,
missing codepage or other errorIn some cases useful info is found in syslog - try
dmesg | tail or so


When creating volumes (unless it's used the --filesystem option), truecrypt create those volumes using 'auto' filesystem which, for linux porpuses doesn't work for nothing, so, in order to avoid this error you'll need to create a filesystem in the volume like this:
root@root [~]# truecrypt --device-number 20 /media/data/private /media/mystuff && mkreiserfs /dev/mapper/truecrypt20

To actually create a file system on the truecrypt device, first its need to be mapped, that's why you need to mount it first and instally after create the file system you want, I used reiserfs but you can use whatever you like.
The '--device-number' option is optional, I used becuase is better if you want to control what device you're going to format.

-No free loopback device available: This error is because the lack of loop device support in the kernel (Device Drivers --> Block Devices --> Loopback support).


Conclusion

So we've come to the end of this guide, I hope you liked, I try to be the more specific I could and try to reach those who knows the toold and those who don't, however, this is not an strict guide, meaning that you can discuss, share, provide more examples of use or anything you like :)


Source - r00tsecurity

l517 - simple wordlist generator for windows.


L517 is a word-list generator for the Windows Operating System.

Overview

I wrote L517 to be the only word-list generator and editor I would ever need. L517 is small (considering what it does), it is fast (considering it's a Windows app), and it is lightweight (when not loading astronomically large lists). A user-friendly GUI requires no memorization of command-line arguments!
L517 contains hundreds of options for generating a large, personalized, and/or generic wordlist. With L517, you can generate phone numbers, dates, or every possible password with only a few clicks of the keyboard; all the while, filtering unwanted passwords.

Download
http://code.google.com/p/l517/downloads/list


Use this command to anonymously check out the latest project source code:
# Non-members may check out a read-only working copy anonymously over HTTP.
svn checkout http://l517.googlecode.com/svn/trunk/ l517-read-only

Features


Collecting

  • Gathers words from many different file-types,
    1. .txt
    2. .mp3
    3. .pdf
    4. .ppt
    5. .srt
    6. .rtf
    7. .doc / .docx
    8. .htm / .html
    9. .jpg / .jpeg
    10. and many more
  • Can handle both unix and windows text file types,
  • Collect from every file in a directory (and subdirectories),
  • Collect words from a website (strips HTML code), good for personalized wordlists (myspace, facebook, etc),
  • Collect from dragged-and-dropped selected text or files,
  • Collect words from pasted text (Ctrl+V).

Generating

  • Generate any string of any length (an exhaustive 26-pattern character set is included),
    • New in v0.91: L517 can pause and resume list generation! Simply click 'Cancel' while generating a list, and L517 will prompt to pause.
  • Generate dates in different formats over any time period,
    1. mm/dd/yy : 12/31/10
    2. mm/dd/yy : 12/31/2010
    3. dd/mm/yy : 31/12/10
    4. dd/mm/yyy : 31/12/2010
    5. mmm/dd/yy : december/10/10
    6. mmm/dd/yyy : december/10/2010
    7. dd/mmm/yy : 10/december/10
    8. dd/mmm/yyy : 10/december/2010
  • Generate phone numbers based on location (United States only). Input a city and the L517 will look-up all area-codes and prefixes of that city, then generate every possible phone-number based on those prefixes.
  • "Analyze" is a new option in v0.2; when "analyzing," L517 discovers and extracts patterns in the list by looking at both prefixes (beginning) and postfixes (end) of items. The analysis results in two lists of commonly used prefixes and postfixes. Great for actual password lists.

Filtering

  • Filter by length (minimum/maximum).
  • Convert list to lowercase, UPPERCASE.
  • Copy words to new formats: First Letter Upper and/or eVeRy OtHeR lEtTeR.
  • 13375P34K (leetspeak) case mutator.
    • Reads from 'leetspeak.txt' (included at program start-up, can be edited by the user).
    • Generates every possible mutation of a word. For example: If the 'leetspeak.txt' file has "a,A,@,4" as different values for 'a', then L517 would generate the following for the item "aa":
      • aa
      • Aa
      • @a
      • 4a
      • aA
      • AA
      • @A
      • 4A
      • a@
      • and so on...
  • Strip out certain text from items that already exist, and also as they are added.
  • Convert special characters to the hex equivalent. i.e. convert !@#$%^& to %20%40%21%22%23.
  • Include foreign characters. this gathers words that are beyond the scope of the alphabet and 0-9 number syetem, such as àçéîÿöû.

Mutating

Add mutations to items already on the list -- append [right-side] and/or prepend [left-side]. These are useful when generating a password list:
  1. Add each number 0-9 to every item on the list,
  2. Add every letter (a-z) to each item on the list,
  3. Add every word from L517's default prefix/postfix wordlist to every item in the list,
  4. Add every word from your own wordlist to every item in the current list.

List options

  • Sort alphabetically (automatic).
  • Remove duplicate entries, (slow, but accurate and stable).
  • Find item in list, Find Next.
  • Remove, Remove by string, and Clear.
  • Save list to files in sections (split by number of items in each file).
    • i.e. L517 can save any number of items per file, so no wordlist file will grow to be too large (L517 will save to many smaller files).
  • Save in Windows/DOS text format, or *nix format.

Installation & Execution

L517 requires MSVBVM60.DLL and MSCOMCTL.OCX in order to run.
  • MSVBVM60.DLL has been standard on all Windows machines since Win98SE. Vista and Windows 7 include it.
  • MSCOMCTL.OCX is not as common, but it is available as a download in the 'Downloads' section. Save this file to your Windows System32 folder and L517 should execute properly.
These files are required so that the program will run properly.
L517 also uses Xpdf's executable: pdftotext.exe. This file is needed to extract text from .PDF files, and is also included in the L517 executable.

Linux Compatibility

Beta testers have run L517 in Linux under Wine. The Visual Basic 6.0 Runtime Installer needs to be run in Wine before L517 can be executed.

Changes

  • v0.8 : Language support for French, German, and Spanish; available in HELP menu.
  • v0.7 : Customizable 'leetspeak' case mutations.
  • v0.6 : Paste (Ctrl+V) in the EDIT menu; various bug fixes.
  • v0.5 : Corrected case bugs.
  • v0.4 : Fixed RICHTX32.OCX error; Removed RichTextControl from project -- replaced with built-in Microsoft Word API's for .doc files.
  • v0.3 : New 'phone number' generation option; Generate based on charset; Two new cases; Split files every # of items.
  • v0.2 : 'Analyzer' option; Fixed bugs; More help documentation.
  • v0.1 : First public release.

wifite - WEP/WPA Password Cracker for BT4

introduction

designed for Backtrack4 distribution of Ubuntu; works great with BlackBuntu! Linux only; no windows or osx support.

downloads
http://code.google.com/p/wifite/downloads/list

purpose

to attack multiple WEP and WPA encrypted networks at the same time. this tool is customizable to be automated with only a few arguments. wifite can be trusted to run without supervision.  

features

  • this project is available in French: all thanks goto Matt² for his excellent translation!
  • sorts targets by power (in dB); cracks closest access points first
  • automatically deauths clients of hidden networks to decloak SSIDs
  • numerous filters to specify exactly what to attack (wep/wpa/both, above certain signal strengths, channels, etc)
  • customizable settings (timeouts, packets/sec, channel, change mac address, ignore fake-auth, etc)
  • "anonymous" feature; changes MAC to a random address before attacking, then changes back when attacks are complete
  • all WPA handshakes are backed up to wifite.py's current directory
  • smart WPA deauthentication -- cycles between all clients and broadcast deauths
  • stop any attack with Ctrl+C -- options: continue, move onto next target, skip to cracking, or exit
  • switching WEP attack methods does not reset IVs
  • intel 4965 chipset fake-authentication support; uses wpa_supplicant workaround
  • SKA support (untested)
  • displays session summary at exit; shows any cracked keys
  • all passwords saved to log.txt
  • built-in updater: ./wifite.py -upgrade

requirements

  • linux operating system (confirmed working on Ubuntu 8.10 (BT4R1), Ubuntu 10.04.1)
  • tested working with python 2.4.5 and python 2.5.2; might be compatible with other versions,
  • wireless drivers patched for monitor mode and injection: backtrack4 has many pre-patched drivers,
  • aircrack-ng (v1.1) suite: available via apt: apt-get install aircrack-ng or by clicking here,
  • xterm, python-tk module: required for GUI, available via apt: apt-get install python-tk
  • macchanger: also available via apt: apt-get install macchanger
  • pyrit: not required, optionally strips wpa handshake from .cap files

execution

download the latest version:
wget -O wifite.py http://wifite.googlecode.com/svn/trunk/wifite.py
change permissions to executable:
chmod +x wifite.py
execute:
python wifite.py
or, to see a list of commands with info:
./wifite.py -help

snapshot

console mode:

gui mode (default):

video tutorial

capturing WPA handshake using Wifite (and then cracking with oclHashCat).

 

video credit: Maurizio Schmidt

examples

the program contains lots of interactivity (waits for user input). these command-line options are meant to make the program 100% automated -- no supervision required.
to crack all WEP access points:
./wifite.py -all -nowpa
to crack all WEP access points with signal strength greater than (or equal to) 50dB:
./wifite.py -p 50 -nowpa
to attack all access points, use 'darkc0de.lst' for cracking WPA handshakes:
./wifite.py -all --dict /pentest/passwords/wordlists/darkc0de.lst
to attack all WPA access points, but do not try to crack -- any captured handshakes are saved automatically:
./wifite.py -all -nowpa --dict none
to crack all WEP access points greater than 50dB in strength, giving 15 minutes for each WEP attack method, and send packets at 600 packets/sec:
./wifite.py --power 50 -wepw 15 -pps 600
to attempt to crack WEP-encrypted access point "2WIRE752" endlessly -- program will not stop until key is cracked or user interrrupts with ^C):
./wifite.py -e "2WIRE752" -wepw 0

Monday, January 23, 2012

MD5 Theory and Cracking



Hello guys we are all back to work.....
I got this tutorial on  http://www.breakthesecurity.com
I found this tutorial interesting ,.so here you go.
When this will be useful for you?

  1. You hacked one website's database using SQL Injection,  but the passwords are stored using MD5 or SHA-1 Hash Algorithm.  At that time this tutorial will help to decrypt the password.
  2. You want to know basics of MD5 Hash Algorithm.
  3. You like to learn how to Cracking MD5 Hash Algorithm.




Introduction to MD5 Algorithm:
you can refer this link Introduction To Cryptography ,if you don't know about  encryption.

MD5 is widely used Hash Algorithms by Website owners. MD5 was designed by Ron Rivest in 1991 to replace an earlier hash function, MD4.

It is not like usual encryption. Usually we encrypt the original text to cipher text then decrypt the cipher text to original text.

we can call the MD5 as "One Way Encryption"(No longer).

It is like one way path.  one can move to destination but can not come back to starting place. 



Encrypt(originalText) 
Decrypt(cipherText)

Using MD5 Hash algorithm we can only create a hash code.  Original Text is converted to 128 bits hash code(encrypted form). 

Consider my original text is "BreakTheSec".

It will be converted to
4258118ee03eb6996adb71a59e1c6d09



 Algorithm:
MD5 processes a variable-length message into a fixed-length output of 128 bits. The input message is broken up into chunks of 512-bit blocks (sixteen 32-bit little endian integers); the message is padded so that its length is divisible by 512. The padding works as follows: first a single bit, 1, is appended to the end of the message. This is followed by as many zeros as are required to bring the length of the message up to 64 bits fewer than a multiple of 512. The remaining bits are filled up with a 64-bit integer representing the length of the original message, in bits.
The main MD5 algorithm operates on a 128-bit state, divided into four 32-bit words, denoted A, B, C and D. These are initialized to certain fixed constants. The main algorithm then operates on each 512-bit message block in turn, each block modifying the state. The processing of a message block consists of four similar stages, termed rounds; each round is composed of 16 similar operations based on a non-linear function F, modular addition, and left rotation. Figure 1 illustrates one operation within a round. There are four possible functions F; a different one is used in each round:
F(X,Y,Z) = (X\wedge{Y}) \vee (\neg{X} \wedge{Z})
G(X,Y,Z) = (X\wedge{Z}) \vee (Y \wedge \neg{Z})
H(X,Y,Z) = X \oplus Y \oplus Z
I(X,Y,Z) = Y \oplus (X \vee \neg{Z})
\oplus, \wedge, \vee, \neg denote the XOR, AND, OR and NOT operations respectively.

MD5 HASHES:

The 128-bit (16-byte) MD5 hashes (also termed message digests) are typically represented as a sequence of 32 hexadecimal digits. The following demonstrates a 43-byte ASCII input and the corresponding MD5 hash:

MD5("The quick brown fox jumps over the lazy dog")
= 9e107d9d372bb6826bd81d3542a419d6

The hash of the zero-length string is:

MD5("")
= d41d8cd98f00b204e9800998ecf8427e


Cracking MD5 Hash Algorithm:
In 1996, World comest to know that there are some flaws in MD5 HASH Algorithm.  Cryptographers began recommending the use of other algorithms, such as SHA-1 (which has since been found also to be vulnerable).

Boer Showed that MD5 is executed on 1 block of 512 bits will yield the same output for different input values in the buffer ABCD. This is known as Pseduo Collision.

Berson said Differential crypt analysis, with in a reasonable time to find 2 messages that produce this same hash code.

Dictionary Method on MD5:
In dictionary method the hash code will compared with some usual passwords.

For Eg: Users may give simple and usual password like "love","iloveyou".
Convert this usual words to Hash code.
Then store the words to Dictionary.
Compare User's Hash code with each hash code which is listed in dictionary.

Birthday Attacks On MD5:
Name itself define the attack method.  You alone birth on your birthday?  The answer is negative, there are lot of people born on your birthday.  The same method is used here.  Some of original text will use same Check Sum.


Some sites that crack md5 hashes

 
  •  www.tmto.org
  •  md5.noisette.ch
  • md5decryption.com
  • www.c0llision.net
  • www.netmd5crack.com
  • www.md5decrypter.com
  • md5hashcracker.appspot.com
  • www.hashhack.com
  • isc.sans.edu
  • www.md5crack.com
  • passcracking.com
  • authsecu.com
  • md5.rednoize.com
  • md5.web-max.ca
  • www.cmd5.com
  • md5.thekaine.de
  • www.shell-storm.org
  • www.md5this.com
  • www.hashchecker.com
  • hashcrack.com
  • md5pass.com
  • md5pass.info  
  • cmd5.org

Saturday, September 17, 2011

Start in the world of reverse engineering

Reverse engineering, software cracking, and ASM may sounds like black magic to some of you. It does in the beginning cause we don’t know what all the code actually means. If one reads and practices enough, it's really not very complicated. Reverse engineering can give you some real understanding of the inner workings of computers. ASM is a very powerful programming language itself as it works on the very low level and gives you better access to all the resources.

Today we are sharing the best tuts on the Internet for starters. This series created by lena151. Contents: 40 tuts on cracking from the very basic to the advanced. I hope it's going to be a very nice place to start for you.

We're gonna continue to share more learning stuff on cracking, so keep in touch.


Further recommended readings: To get a good idea of ASM
 http://101.lv/learn/asm/index.htm
 http://www.drpaulcarter.com/pcasm/pcasm-book-pdf.zip

Tuts Download Here

Note: this is only for the educational purpose. we don’t take any responsibility for anything and for what you use this information for. I personally recommend you to open all the files in a separate isolated space.
Learn and help others to learn.
inf0g33k