pengjunling 发表于 2015-4-24 05:05:45

[python脚本]MD5破解工具iCrack

  iCrack是一个在线/离线 md5破解工具,使用python编写,目前覆盖大约14个在线破解数据库。
  
  刚刚试了下,还不错


1 #!/usr/bin/env python
2 #
3 # File_name: md5 hash cracker
4 # Writin by: lnxg33k
5 # Currently contains about 13 site for cracking
6 #
7 # This program is free software: you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation, either version 3 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program.If not, see .
19 #
20
21 import sys
22 import time
23 import urllib2
24 import urllib
25 import re
26 import hashlib
27
28 if len(sys.argv) < 2:
29   print '\nUsage:'
30   print '\t%s --online ' % sys.argv
31   print '\t%s --offline '% sys.argv
32   sys.exit(1)
33
34 def banner():
35   print '''
36                   ___         ___         ___         ___         ___   
37   ___          //\         //\         //\         //\         /__/|   
38    //\      //:/      //::\       //::\       //:/      ||:|   
39   //:/       //:/      //:/\:\   //:/\:\   //:/         ||:|   
40/__/::\      //:/___   //:/~/:/    //:/~/::\   //:/___   __||:|   
41\__\/\:\__/__/:///\ /__/:/ /:/___ /__/:/ /:/\:\ /__/:///\ /__/\_|:|____
42   \\:\/\ \\:\ //:/ \\:\/:::::/ \\:\/:/__\/ \\:\ //:/ \\:\/:::::/
43      \__\::/\\:\/:/   \\::/~~~~   \\::/       \\:\/:/   \\::/~~~~
44      /__/:/    \\:\/:/   \\:\      \\:\      \\:\/:/   \\:\   
45      \__\/      \\::/       \\:\      \\:\      \\::/       \\:\   
46                  \__\/         \__\/         \__\/         \__\/         \__\/
47   
48         |-----------------------------------------------|
49         | [+] MD5 Hash Cracker (online | offline)       |
50         | [+] Home: http://www.isecur1ty.org            |
51         | [+] Written by: isecur1ty team members      |
52         | [+] Credits: Obzy, Relik and Sas-TerrOrisT    |
53         |-----------------------------------------------|
54 '''
55
56 option   = sys.argv
57 passwd   = sys.argv
58
59 if option == '--online':
60   if len(passwd) != 32:
61   print '\n
[*] Error: "%s" doesn\'t seem to be a valid MD5 hash "32 bit hexadecimal"' % passwd
62   else:
63   try:
64       banner()
65       def myaddr():
66         site = 'http://md5.my-addr.com/'
67         rest = 'md5_decrypt-md5_cracker_online/md5_decoder_tool.php'
68         para = urllib.urlencode({'md5':passwd})
69         req= urllib2.Request(site+rest)
70         try:
71         fd   = urllib2.urlopen(req, para)
72         data = fd.read()
73         match= re.search('(Hashed string: )(\w+.\w+)', data)
74         if match: print '[-] site: %s\t\t\tPassword: %s' % (site, match.group(2))
75         else: print '[-] site: %s\t\t\tPassword: Not found' % site
76         except urllib2.URLError:print '[+] site: %s \t\t\t[+] Error: seems to be down' % site
77       myaddr()
78
79       def victorov():
80         try:
81         site = 'http://www.victorov.su/'
82         para = 'md5/?md5e=&md5d=%s' % passwd
83         req= urllib2.Request(site+para)
84         req.add_header
85         opener = urllib2.urlopen(req)
86         data = opener.read()
87         match = re.search('()(.+[^>])()', data)
88         if match: print '[-] site: %s\t\t\tPassword: %s' % (site, match.group(2))
89         else: print '[-] site: %s\t\t\tPassword: Not found' % site
90         except urllib2.URLError:print '[+] site: %s \t\t\t[+] Error: seems to be down' % site
91       victorov()
92      
93       def md5crack():
94         site = 'http://www.md5crack.com/'
95         rest = 'crackmd5.php'
96         para = urllib.urlencode({'term':passwd})
97         req = urllib2.Request(site+rest)
98         try:
99         fd = urllib2.urlopen(req, para)
100         data = fd.read()
101         match = re.search('(Found: md5)(..)(\w+.\w+)', data)
102         if match: print '[-] site: %s\t\t\tPassword: %s' % (site, match.group(3))
103         else: print '[-] site: %s\t\t\tPassword: Not found' % site
104         except urllib2.URLError: print '[+] site: %s \t\t\t[+] Error seems to be down' % site
105       md5crack()
106      
107       def passcracking():
108         site = 'http://passcracking.com/'
109         rest = 'index.php'
110         para = urllib.urlencode({'datafromuser':passwd})
111         req = urllib2.Request(site+rest)
112         try:
113         fd = urllib2.urlopen(req, para)
114         data = fd.read()
115         match = re.search(r"()(.+[^
页: [1]
查看完整版本: [python脚本]MD5破解工具iCrack