作者 | 朱小五

又是一杯奶茶。

事情的经过是这样的:

又是奶茶,行吧快点开工,争取李大伟回来之前搞定

李大伟说是6位数字密码

那么我们可以利用python生成全部的六位数字密码

#生成从000000到99999的密码表
f = open('passdict.txt','w')
for id in range(1000000):
    password = str(id).zfill(6)+'\n'
    f.write(password)
f.close()

这样,我们就生成了一个从000000到99999的密码表。

并把它们存入到 passdict.txt 的文件中。

6位的密码表就这么大!!!

下一步做什么?

自然是将生成的密码表中的密码遍历,

暴力破解啦!

科普时间:

zipFile模块式Python自带的模块,提供了对zip 文件的创建,读,写,追加,解压以及列出文件列表的操作

解压使用extractll方法extractall(path=None, members=None, pwd=None)

  • path:指定解压后文件的位置

  • members:(可选)指定要Zip文件中要解压的文件,这个文件名称必须是通过namelist()方法返回列表的子集

  • pwd:指定Zip文件的解压密码

那么我们可以利用 zipFile 模块来遍历密码表,

挨个挨个密码尝试,看能不能打开压缩包。

直到成功。

导入zipFile

import zipfile

def extractFile(zipFile, password):
    try:
        zipFile.extractall(pwd= bytes(password, "utf8" ))
        print("李大伟的压缩包密码是" + password)  #破解成功
    except:
        pass  #失败,就跳过

def main():
    zipFile = zipfile.ZipFile('李大伟.zip')   
    PwdLists = open('passdict.txt')   #读入所有密码
    for line in PwdLists.readlines():   #挨个挨个的写入密码
        Pwd = line.strip('\n')
        guess = extractFile(zipFile, Pwd)

if __name__ == '__main__':
    main()

花了不到一分钟

成功解出密码是:

收工√

趁着李大伟还没回来,

多说两句。

李大伟设置的只是6位数字的密码,

所以本次只要单线程暴力遍历就ok了。

那如果更多位数,

字母数字特殊字符混合的复杂密码呢?

我们可以应用多线程进程解压,加快速度

网络上还有一些暴力破解字典,

可以下载用来遍历

感兴趣的朋友们不妨试试。

大伟回来了。

我告诉他密码就是压缩包当天的日期。

李大伟表示:20191119他已经试过了。

然而这个压缩包的压缩时间是前一天20191118啊。

你口口声声说用当天日期,拿今天1119试什么试?

不过奶茶真好喝~

  • 相关破解源码和李大伟压缩包已上传Github:https://github.com/zpw1995/aotodata/tree/master/interest/zip

作者 | 朱小五

又是一杯奶茶。

事情的经过是这样的:

又是奶茶,行吧行吧。

快点开工,争取李大伟回来之前搞定。

李大伟说是6位数字密码

那么我们可以利用python生成全部的六位数字密码

#生成从到的密码表f = ):    password = str(id).zfill()+'\n'    f.write(password)f.close()

这样,我们就生成了一个从000000到99999的密码表。

并把它们存入到 passdict.txt 的文件中。

6位的密码表就这么大!!!

下一步做什么?

自然是将生成的密码表中的密码遍历,

暴力破解啦!

科普时间:

zipFile模块式Python自带的模块,提供了对zip 文件的创建,读,写,追加,解压以及列出文件列表的操作

解压使用extractll方法extractall(path=None, members=None, pwd=None)

  • path:指定解压后文件的位置

  • members:(可选)指定要Zip文件中要解压的文件,这个文件名称必须是通过namelist()方法返回列表的子集

  • pwd:指定Zip文件的解压密码

那么我们可以利用 zipFile 模块来遍历密码表,

挨个挨个密码尝试,看能不能打开压缩包。

直到成功。

导入zipFile

import zipfile

def extractFile(zipFile, password):    try:        zipFile.extractall(pwd= bytes(password, "utf8" ))        print("李大伟的压缩包密码是" + password)  #破解成功    except:        pass  #失败,就跳过

def main():    zipFile = zipfile.ZipFile('李大伟.zip')       PwdLists = open('passdict.txt')   #读入所有密码    for line in PwdLists.readlines():   #挨个挨个的写入密码        Pwd = line.strip('\n')        guess = extractFile(zipFile, Pwd)

if __name__ == '__main__':    main()

花了不到一分钟

成功解出密码是:

收工√

趁着李大伟还没回来,

多说两句。

李大伟设置的只是6位数字的密码,

所以本次只要单线程暴力遍历就ok了。

那如果更多位数,

字母数字特殊字符混合的复杂密码呢?

我们可以应用多线程进程解压,加快速度

网络上还有一些暴力破解字典,

可以下载用来遍历

感兴趣的朋友们不妨试试。

大伟回来了。

我告诉他密码就是压缩包当天的日期。

李大伟表示:20191119他已经试过了。

然而这个压缩包的压缩时间是前一天20191118啊。

你口口声声说用当天日期,拿今天1119试什么试?

不过奶茶真好喝~

  • 相关破解源码和李大伟压缩包已上传Github:https://github.com/zpw1995/aotodata/tree/master/interest/zip

我用 Python 破解了同事的加密压缩包!的更多相关文章

  1. 使用 Python破解大众点评字体加密(SVG反扒)

    前言 大众点评拥有大量高质量评论信息.种草信息,同时也有非常严格的反扒机制. 今天我们一起使用 Python破解大众点评字体加密,获取极具商业价值的信息. 本文知识点: requests 的使用 xp ...

  2. 使用Z3破解简单的XOR加密

    使用Z3破解简单的XOR加密 翻译:无名侠 原文地址: https://yurichev.com/blog/XOR_Z3/ 如果我们有一段用简单XOR加密过的文本,怎么寻找密钥呢?密钥的长度可能很长, ...

  3. 【转】python模块分析之hashlib加密(二)

    [转]python模块分析之hashlib加密(二) hashlib模块是用来对字符串进行hash加密的模块,明文与密文是一一对应不变的关系:用于注册.登录时用户名.密码等加密使用.一.函数分析:1. ...

  4. 【Python3爬虫】反反爬之破解同程旅游加密参数 antitoken

    一.前言简介 在现在各个网站使用的反爬措施中,使用 JavaScript 加密算是很常用的了,通常会使用 JavaScript 加密某个参数,例如 token 或者 sign.在这次的例子中,就采取了 ...

  5. python 中md5 和 sha1 加密, md5 + os.urandom 生成全局唯一ID

    首先先来介绍一下md5 和 sha1 的概念 MD5 MD5的全称是Message-Digest Algorithm 5(信息-摘要算法).128位长度.目前MD5是一种不可逆算法. 具有很高的安全性 ...

  6. Python解析器源码加密系列之(二):一次使用标准c的FILE*访问内存块的尝试

    摘要:由于近期打算修改Python解释器以实现pyc文件的加密/解密,出于保密的要求,解密之后的数据只能放在内存中,不能写入到文件中.但是后续的解析pyc文件的代码又只能接受FILE*作为入参,所以就 ...

  7. 手游Apk破解疯狂,爱加密apk加固保护开发人员

    2013年手游行业的规模与收入均实现了大幅增长,发展势头强劲.权威数据显示, 我国移动游戏市场实际销售收入从2012年的32.4亿猛增到2013年的112.4亿元,同比增长了246.9%,手游用户从2 ...

  8. Python实现RSA无填充加密,兼容BouncyCastle

    场景 某系统登录时密码经过前台rsa加密传给后端,为实现模拟登录需要原样生成加密串. 分析 前台通过RSA.js.BigInt.js.Barrett.js三个js文件实现加密,公钥通过ajax请求获得 ...

  9. 实验楼Python破解验证码

    本人大二,因为Python结业考试项目,又想要学习机器学习方向,但是由于接触时间不长,选择了实验楼的Python破解验证码这个项目作为我的项目, 我在原来的基础上加了一些代码用于完善,并且对功能如何实 ...

随机推荐

  1. centos 7 Atlas keepalived 实现高可用 MySQL 5.7 MHA环境读写分离

    目录 简介 相关链接 环境准备 Atlas 环境 MySQL 集群环境 Atlas 安装 和 配置 为数据库的密码加密 修改配置文件 启动 Keepalived 安装配置 安装 master 配置 K ...

  2. Ansible 常见模块介绍

    目录 Ansible 常见模块介绍 ping 模块 command 模块 cron 模块 user 模块 group 模块 copy 模块 file 模块 service 模块 shell 模块 sc ...

  3. VLAN实验4(在eNSP上利用单臂路由实现VLAN间路由)

    原理概述: 以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响*并增强 网络的安全性和可管理性.其缺点足同时也严格地隔离了不同VLAN之间的任何二层流量,使分属于不同VLAN的用户 不能直 ...

  4. windows下PyCharm安装及使用 【转自 https://blog.csdn.net/yctjin/article/details/70307933?locationNum=11&fps=1】

    一.首先安装pycharm,可以参考这篇文章:http://www.jianshu.com/p/042324342bf4 搭建环境 1.win10_X64,其他Win版本也可以.2.PyCharm版本 ...

  5. git的用法 回到某个版本

    进入到项目文件夹 如果新建项目时没有勾选git 进入到项目中

  6. Python自带又好用的代码调试工具Pdb学习笔记

    返璞归真 这几天项目有一个linux下部署数据库的操作,数据库使用python进行初始化安装.然后问题来了,由于linux服务器涉及安全要求,除了代码以来的Python3.6版本外不允许安装其他插件与 ...

  7. python使用mysql的一些坑

    注意:如果你用的是python3.x,直接去看第四个问题 遇到的第一个问题 正常来说直接执行pip安装,就是可以的,但是MySQL-python偏偏比较独特 pip install MySQL-pyt ...

  8. SpringMVC Mock测试

    什么是mock测试? 在测试过程中,对于某些不容易构成或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法,就是Mock测试. Servlet.Request.Response等Servle ...

  9. P2910 [USACO08OPEN]寻宝之路Clear And Present Danger |Floyd

    题目描述 农夫约翰正驾驶一条小艇在牛勒比海上航行. 海上有N(1≤N≤100)个岛屿,用1到N编号.约翰从1号小岛出发,最后到达N号小岛. 一张藏宝图上说,如果他的路程上经过的小岛依次出现了Ai,A2 ...

  10. 小白学 Python 爬虫(17):Requests 基础使用

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...