Python — 项目3-破解使用crypt方法加密(已加salt参数)的登录密码
1、环境部署、

root@kali:~/python/anquangongji# pwd
/root/python/anquangongji
root@kali:~/python/anquangongji# ls
checkfile.py      dictionary.txt   passwordunix.txt    scanmultports.py  vulnftpbanner.txt
crarkpassword.py  openfiletest.py  scanerftpbanner.py  vulnbanners.txt
root@kali:~/python/anquangongji#
root@kali:~/python/anquangongji# cat passwordunix.txt
root:HXEtlo/Qz.0mA
xwb:HXEtlo/Qz.0mA
test:XWW7IhbgLDjB2
xwb1:XWW7IhbgLDjB2
root@kali:~/python/anquangongji#
root@kali:~/python/anquangongji# cat dictionary.txt
123456
qwe123456
asd123456
root@kali:~/python/anquangongji#
root@kali:~/python/anquangongji# 
passwordunix.txt文件的内容生成方式是:
Python 2.7.13 (default, Jan 19 2017, 14:48:08)
[GCC 6.3.0 20170118] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import crypt
>>> crypt.crypt("123456","HX")
'HXEtlo/Qz.0mA'
>>> crypt.crypt("123456","HX")
'HXEtlo/Qz.0mA'
>>> crypt.crypt("qwe123456","XW")
'XWW7IhbgLDjB2'

2、源码与运行情况

root@kali:~/python/anquangongji#
root@kali:~/python/anquangongji# cat crarkpassword.py
#!/usr/bin/python
# --*-- coding:utf-8 --*--import crypt#导入加密模块def testpasswd(cryptpasswd):salt = cryptpasswd[0:2]#取出salt参数#print saltdictfile = open("dictionary.txt","r")for word in dictfile.readlines():word = word.strip("\n")#去除换行符#print wordcryptword = crypt.crypt(word,salt)#使用crypt加密模块加密参数#print cryptword#print len(cryptword)cryptpasswd1 = cryptpasswd.replace("\n","")#谨记!从系统文件中读取内容会自动加入一个"\n"换行字符#print len(cryptpasswd1)#print cryptpasswd1if cryptword == cryptpasswd1:#字符长度相同,则进入print '[+] : Found Pasword!!!,密码为:' + word + "\n"returnprint "[+] Password not found !! \n"returndef main():passfile = open("passwordunix.txt")for line in passfile.readlines():if ":" in line:user = line.split(":")[0]#取出用户#print usercryptpasswd = line.split(":")[1].strip(' ')#取出登陆密码字段#print cryptpasswdprint "[+] 破解密码中。。。。。。。" + usertestpasswd(cryptpasswd)if __name__ == "__main__":main()#前面必须是4个空格,否则无法运行root@kali:~/python/anquangongji# 

运行情况:

root@kali:~/python/anquangongji#
root@kali:~/python/anquangongji# python crarkpassword.py
[+] 破解密码中。。。。。。。root
[+] : Found Pasword!!!,密码为:123456[+] 破解密码中。。。。。。。xwb
[+] : Found Pasword!!!,密码为:123456[+] 破解密码中。。。。。。。test
[+] : Found Pasword!!!,密码为:qwe123456[+] 破解密码中。。。。。。。xwb1
[+] : Found Pasword!!!,密码为:qwe123456root@kali:~/python/anquangongji# 
在现代的类Unix系统中在/etc/shadow文件中存储了口令的hash,但是更多的是使用SHA-512等更安全的hash算法,如:root@kali:~/python/anquangongji# cat /etc/passwd | grep ^root
root:x:0:0:root:/root:/bin/bash
root@kali:~/python/anquangongji# cat /etc/shadow | grep ^root
root:$6$Md.vwnjH$r2Ir4r5W/hnwBcXWMjUybN2UYovcUBy27I7xY1Oi7i0UgqaF.ZJQTPRr0s7.8GMVAAqB8XXXlQX2H3nw0YtE01:16609:0:99999:7:::
root@kali:~/python/anquangongji# 在Python中的hashlib库可以找到SHA-512的函数,这样就可以进一步升级脚本进行口令破解。

参考:https://www.cnblogs.com/Genesis-007/p/5368760.html

Python---项目3-破解使用crypt方法加密(已加salt参数)的登录密码相关推荐

  1. 基于Pyinstaller库将Python项目包括 图片打包exe方法,本人已经实践多次

    基于Pyinstaller库将Python项目包括 图片打包exe方法,本人已经实践多次 文章目录 基于Pyinstaller库将Python项目包括 图片打包exe方法,本人已经实践多次 一.前言 ...

  2. pycharm如何更改python项目环境_如何用Pycharm打开已有项目配置python环境

    如何用Pycharm打开已有项目配置python环境 发布时间:2020-07-06 11:06:30 来源:亿速云 阅读:175 作者:清晨 这篇文章将为大家详细讲解有关如何用Pycharm打开已有 ...

  3. python项目依赖库打包发布方法

    一.打包在线安装 使用命令打包: pip freeze > requirements.txt 在新机器上自动安装: pip install -r requirements.txt 二.导出包离线 ...

  4. 使用Python字符串的编码与解码方法实现信息加解密

    代码思路很简单,字符串的encode()方法可以将其编码为字节串,在生成的字节串中插入干扰字节后无法正常解码,要想还原信息,必须清楚干扰字节的位置并删除后再使用decode()解码.本文代码重点在于演 ...

  5. python包离线安装教程_Linux下离线安装Python项目的依赖包

    Linux下离线安装Python项目的依赖包 记录下在Linux下离线安装Python项目的依赖包的方法步骤.第一步新建一个site-packages文件夹,把Python项目有需要的依赖包名称导出到 ...

  6. python内置函数之len()方法

    文章目录 len()方法 描述 语法 参数 返回值 实例 len()方法 描述 Python len() 方法返回对象(字符.列表.元组等)长度或项目个数. 语法 len()方法语法: len( s ...

  7. Python项目-Day26-数据加密-hash加盐加密-token-jwt

    Python项目-Day26-数据加密-hash加盐加密-token-jwt 数据加密 import hashlibpwd='a123456' #sha1的参数必须是二进制 temp=hashlib. ...

  8. python多线程破解压缩包_我用 Python 破解了同事的加密压缩包!

    原标题:我用 Python 破解了同事的加密压缩包! 作者 | 朱小五 又是一杯奶茶. 事情的经过是这样的: 又是奶茶,行吧行吧. 快点开工,争取李大伟回来之前搞定. 李大伟说是6位数字密码 那么我们 ...

  9. Python爬虫-JS破解openlaw加密cookie

    简单介绍: 最近做研究js混淆加密,以openlaw作为网站进行学习研究.openlaw主页裁判文书栏中有大量案件信息,同时能够为客户提供标准的法律专业知识以及智慧和经验成果.过程中遇到一些反爬措施, ...

最新文章

  1. 软件测试-HTTP Analyzer过期了怎么办?
  2. request url换成ip地址_【协议粗讲】TTP协议之URL,不能不知道的协议技术点
  3. object如何转换为int_如何使用Python将语音转换为文本
  4. python3编程入门_在类Unix系统上开始Python3编程入门
  5. java clicked_关于java:JComponents在调用mouseClicked()之后消失
  6. java reflect 例子
  7. 快速入门人工智能的方法,持续更新ing
  8. Android属性动画之ObjectAnimator控制
  9. h264文件视频存储格式和音频存储格式
  10. LAMMPS实例教程—In文件详解
  11. 主分区、扩展分区、逻辑分区和活动分区的区别
  12. coreldraw的线条怎么变成圆头_CDR将照片变线条的三种方法
  13. 详谈双亲委派机制(面试常问)
  14. 5.内网渗透之PTHPTTPTK
  15. nginx配置别名与前后端根目录名关联
  16. (一)OSPF协议 及ospf与RIP的比较
  17. javascript 编码_我们的1,600小时JavaScript编码课程
  18. Fiddler / Charles - 夜神模拟器证书安装App抓包
  19. 项目记录 / 基于AT89C51的环境检测系统
  20. 扬帆际海教育:跨境电商需要了解的主流社媒平台

热门文章

  1. QML:ListView按下选中当前项和高亮的一例
  2. 【UNR #6 B】机器人表演(DP)
  3. 计算机高级职称有哪些专业,计算机专业的高级职称有什么呀?
  4. 【VPD】使用Oracle VPD(Virtual Private Database)限制用户获取数据的范围
  5. (转载)常见的差分(动)阻抗计算模型(CITS25 软件)
  6. 分享|2023年全球市场准入认证咨讯
  7. 四大运营商频段最新划分情况
  8. 左右两侧浮动广告代码
  9. 关于Java反射获取静态属性值的方式
  10. 吴佳怡最新街拍曝光  潮酷girl演绎初秋时尚