爆破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 ...
随机推荐
- Spark-shell批量命令执行脚本
#!/bin/bash source /etc/profile exec $SPARK_HOME/bin/spark-shell --queue tv --name spark-sql-test -- ...
- UTF-8与UTF-8 BOM
在我们通常使用的windows系统中,我发现了一个有趣的现象.我新建一个空的文本文档,点击文件-另存为-编码选择UTF-8,然后保存.此时这个文件明明是空的,却占了3字节大小.原因在于:此时保存的编码 ...
- iptables发布内部网络服务器
要使因特网上的计算机访问到内部网的FTP服务器.WEB服务器,在做为防火墙的计算机上应添加以下规则: 1. echo 1 > /proc/sys/net/ipv4/ip_forward 2. 发 ...
- hadoop2.6.0 + hbase-1.0.0 伪分布配置
1 基本配置 主机名: 192.168.145.154 hadoop2 ======= 2 etc/hadoop下文件配置 1)core-site.xml <configuration> ...
- CentOS7 network.service loaded failed 处理技巧
某一日,用systemctl --failed查看到如下错误信息,但实际上网络是OK的,真奇怪: 1 2 3 4 5 6 7 8 [root@localhost.localdomain media]# ...
- [转]来自后端的逆袭 blazor简介 全栈的福音
背景 什么是SPA 什么是MPA MPA (Multi-page Application) 多页面应用指的就是最传统的 HTML 网页设计,早期的网站都是这样的设计,所之称为「网页设计」.使用 MPA ...
- H3C 配置NAT Server
- Python--day43--连表查询(重要)
- java声明异常(throws)
在可能出现异常的方法上声明抛出可能出现异常的类型: 声明的时候尽可能声明具体的异常,方便更好的处理. 当前方法不知道如何处理这种异常,可将该异常交给上一级调用者来处理(非RuntimeExceptio ...
- redis cluster和hash slot
redis cluster介绍 从redis3.0.0开始,官方支持了redis cluster的集群模式,结束了redis没有集群的时代. redis cluster 支撑 N 个 redis ma ...