linux密码暴力破解机
linux 密码保存在
/etc/shadow
shadow 文件的保存格式
python:$$mWSyC6Pv$hpMreQT77R9ML/Xx1QnRAow1tUTDjIowaTssV7bZw9S44FXYd93kfrFQ8Y2vpj/bQfrub/Q.Z6XkYDt4gAUBE0:::::::
加密格式:
{用户名}:{加密后的口令密码}:{口令最后修改时间距原点(1970-1-1)的天数}:{口令最小修改间隔(防止修改口令,如果时限未到,将恢复至旧口令):{口令最大修改间隔}:{口令失效前的警告天数}:{账户不活动天数}:{账号失效天数}:{保留}
密码域密文也是由三部分组成的,即:$id$salt$encrypted。
id为1时,采用md5进行加密;
id为5时,采用SHA256进行加密;
id为6时,采用SHA512进行加密。
在python中有一个crypt 模块可以进行密码计算,而且不用我们担心加密方式是什么。
crypt 方法接收两个参数,第一个是需要加密的明文,第二个参数是 salt.
linux salt 为 $6$mWSyC6Pv$ 形式 其中6表示加密方式 sha512
>>> import crypt
>>> crypt.crypt('sdssdd','$6$mWSyC6Pv$')
'$6$mWSyC6Pv$8AhSQcqAsoGsMIFHnLhvCRf4cg5gWvPHhWtliw39yIGUYwK5uODO6bzL7GUxD.X.U5N14m3MA0Pikf5fsyO0/'
>>>
>>>
shadow 只有超级用户才有权限查看,所以拷贝出来的shadow文件需要修改权限
chmod shadow
代码实现
import crypt def testPass(cryptPass):
salt = cryptPass[0:12] # 获取加密方式以及密码盐
try:
dictFile = open('dictionary', 'r') # 打开密码字典
try:
for word in dictFile.readlines():
word = word.strip('\n')
cryptWord = crypt.crypt(word, salt) # 将字典中读取的铭文密码通过加密与shadow密码进行判断
if cryptWord == cryptPass:
print('[+] Found Password: ' + word + "\n")
return
print('[-] Password not Found.\n')
return
except:
dictFile.close()
except:
print('[-] dictionary 文件无法打开')
exit(0) def main():
try:
passFile = open('shadow') # 打开shadow文件
try:
for line in passFile.readlines(): # 一行一行读取
if ":" in line:
user = line.split(':')[0] # 利用 : 分隔 获取用户名
cryptPass = line.split(':')[1].strip(' ') #去掉前后空格
print('[*] Cracking Password For : ' + user)
testPass(cryptPass)
except:
passFile.close()
except:
print('[-] shadow 文件无法打开') if __name__ == '__main__':
main()
linux密码暴力破解机的更多相关文章
- Python 黑客 --- 002 入门级 ZIP压缩文件口令暴力破解机
Python 黑客 入门级实战:ZIP压缩文件口令暴力破解机 使用的系统:Ubuntu 14.04 LTS Python语言版本:Python 2.7.10 V 编写zip 压缩文件口令破解器需要使用 ...
- SSH密码暴力破解及防御实战
SSH密码暴力破解及防御实战 一.Hydra(海德拉) 1.1 指定用户破解 二.Medusa(美杜莎) 2.1 语法参数 2.2 破解SSH密码 三.Patator 3.1 破解SSH密码 四.Br ...
- Linux下暴力破解工具Hydra详解
一.简介 Number one of the biggest security holes are passwords, as every password security study shows. ...
- linux下暴力破解工具hydra【转】
一.简介 Number one of the biggest security holes are passwords, as every password security study shows. ...
- Kali中密码暴力破解工具hydra的使用
前言 hydra是著名黑客组织thc的一款开源的暴力破解密码工具,功能非常强大,kali下是默认安装的,几乎支持所有协议的在线破解.密码能否破解,在于字典是否强大.本文仅从安全角度去讲解工具的使用,请 ...
- 通过BurpSuite和sqlmap配合对dvwa进行sql注入测试和用户名密码暴力破解
0x1 工具和环境介绍 dvwa:渗透测试环境 BurpSuite:强大的WEB安全测试工具 sqlmap:强大的sql注入工具 以上工具和环境都在kali linux上安装和配置. 0x2 步骤说明 ...
- 密码暴力破解工具acccheck使用
title: acccheck categories: Password Attacks tags: [passwords,kali linux,acccheck,infogathering,pass ...
- 强力密码暴力破解工具:hydra
语法: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FIL ...
- linux 防暴力破解
#!/bin/bash SCANIP=`grep "Failed" /var/log/secure* | awk '{print $(NF-3)}'| sort |uniq -c ...
随机推荐
- mysql concat_ws 与 concat 多字段模糊匹配应用
有时我们希望在表中多个字段检索是否有我们给出的关键字,我们可以使用 concat_ws 和 concat 连接需要检索的字段,如: select * from userInfo where conca ...
- bzoj千题计划282:bzoj4517: [Sdoi2016]排列计数
http://www.lydsy.com/JudgeOnline/problem.php?id=4517 组合数+错排公式 #include<cstdio> #include<ios ...
- hdu 6166 Senior Pan
http://acm.hdu.edu.cn/showproblem.php?pid=6166 题意: 给出一张无向图,给定k个特殊点 求这k个特殊点两两之间的最短路 二进制分组 枚举一位二进制位 这一 ...
- SQL语句(六)成批导入导出数据
(六) 成批导入导出数据 假设已经存在teaching数据库, 存在一张Student表,如图: 右键teaching->任务->导入数据 下一步->数据源(Microsoft Ex ...
- Spring Cloud(十四)Config 配置中心与客户端的使用与详细
前言 在上一篇 文章 中我们直接用了本应在本文中配置的Config Server,对Config也有了一个基本的认识,即 Spring Cloud Config 是一种用来动态获取Git.SVN.本地 ...
- Jquery教你写一个简单的轮播.
这个我表示写的不咋地-_-//,但是胜在简单,可优化性不错. 实际上我本来想写个复杂点的结构的,但是最近忙成狗了!!!!所以大家就讲究着看吧 HTML结构 <div class="ba ...
- TED_Topic9:How we're priming some kids for college — and others for prison
Alice Goffman In the United States, two institutions guide teenagers on the journey to adulthood: co ...
- ajax函数说明
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- Anaconda+django写出第一个web app(七)
今天来实现如何在页面弹出一些信息,比如注册成功后弹出注册成功的信息.这一点可以通过materialize里的Toasts来实现. django自带的messages可以告诉我们是否注册成功,以及注册失 ...
- Dream_Spark版本定制第一课
从今天起,我们踏上了新的Spark学习旅途.我们的目标是要像Spark官方机构那样有能力去定制Spark. 一. 我们最开始将从Spark Streaming入手. 为何从Spark Streami ...