女神相册密码忘记了,我只用Python写了20行代码就破解了!

一、事情是这样的

今早上班,公司女神小姐姐说,她去年去三亚旅游的照片打不开了

好奇问了一下才知道。

原来是,她把照片压缩了,而且还加了密码。

但是密码不记得了,只记得是一串6位数字。

话说照片压缩率也不高,而且还加密,难道是有什么可爱的小照片

 

但是作为一个正(ba)直(gua)的技术人员

我跟她说:“这事交给我,python写个脚本,帮你破解掉~~”

 

二、首先回顾一下女神的操作流程

对相册进行压缩的时候,添加了密码。

LIke This ↓

 

三、需要密码打开相册

打开的时候,提示这样的,需要输入密码。

 

四、python脚本化处理

 

1、基本思路

首先如果想要python命令行来打开小姐姐相册,那么首先要找到尝试打开的命令行,即解压缩时使用的命令行。然后我们使用python脚本写嵌套循环,不断的对zip文件进行尝试解压,然后找回真实的密码。

 

2、解压命令

首先压缩文件是zip格式的,我们使用万能的7z命令来进行解压。

为什么不用unzip命令呢?(因为我试过了,unzip无法循环)

 

 

3、解压命令参数分析

 

#7Z详细参数,下面只截取几个关键参数
PS C:\Users\lex> 7z
7-Zip 21.01 alpha (x64) : Copyright (c) 1999-2021 Igor Pavlov : 2021-03-09
Usage: 7z <command> [<switches>...] <archive_name> [<file_names>...] [@listfile]
<Commands>
  a : Add files to archive           #加入压缩
  d : Delete files from archive
  e : Extract files from archive (without using directory names)
  t : Test integrity of archive      #尝试密码,不解压
...
<Switches>
  -o{Directory} : set Output directory
  -p{Password} : set Password         #设置密码参数

4、整理7z解压命令

命令太简单,感觉都有点配不上我的才华和思路

 

 

7z -p 123456 t 三亚相册.zip
#  t:尝试打开,类似后台运行
# -p:尝试的密码
#  最后是要解压的文件

5、关门!上python脚本

根据小姐姐的需求,密码是6位纯数字,那就帮我节省了好大一段时间

只对6位纯数字进行尝试就可以了。

三分钟就把脚本搞出来了

 

# -*- coding:utf-8 -*-  
import os
import subprocess
import zipfile
def brutecrack():
    for a in range(1,10):
        for b in range(1,10):
            for c in range(1,10):
                for d in range(1,10):
                    for e in range(1,10):
                        for f in range(1,10):
                            passwd=str(a)+str(b)+str(c)+str(d)+str(e)+str(f)
                            command='7z -p'+passwd+' t F:/三亚相册.zip'  #t 表示test,不进行实际解压,只测试密码
                            print(passwd)
                            child=subprocess.call(command)
                            #os.popen(command)#这个也可以用,但是不好监控解压状态
                            print(child)
                            if child==0:
                                print("相册密码为:"+passwd)
                                return
if __name__ == '__main__':
    brutecrack()

五、找女神去...

面对着一筹莫展的女神,我运行起了脚本,不到5秒,相册成功打开了。此文转载文,著作权归作者所有,如有侵权联系小编删除!

 

效果gif ↓

打开之后,女神看我的眼神都变了。

女神照片就不给你们看了,哈哈哈 你们是来学技术的不是来看照片的  对吧!

近期有很多朋友通过私信咨询有关Python学习问题。为便于交流,点击蓝色自己加入讨论解答资源基地

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值