环境 | 版本 |
---|---|
系统 | uos |
Python版本 | Python3 |
模块 | PyPDF2、pikepdf、tqdm |
安装相应的模块
sudo pip3 install PyPDF2 sudo pip3 install pikepdf sudo pip3 install tqdm
运行破解代码
import pikepdf import os from PyPDF2 import PdfFileReader from tqdm import tqdm filename = "/home/uos/Desktop/PyQt5入门.pdf" #pdf文件路径 wordlist = "/home/uos/Desktop/wordlists/rockyou.txt" #密码字典路径 n_words = len(list(open(wordlist, 'rb'))) fp = open(filename, "rb+") pdfFile = PdfFileReader(fp) filepath, tempfilename = os.path.split(filename) with open(wordlist, "rb") as wordlist: if pdfFile.isEncrypted: for word in tqdm(wordlist, total=n_words, unit="word"): try: pdf = pikepdf.open(filename, password=word.strip()) except: continue else: print("[+] Password found:", word.decode().strip()) exit(0) print("[!] Password not found, try other wordlist!")
运行结果
密码为:bengie04
/home/uos/PycharmProjects/pythonProject1/venv/bin/python /home/uos/PycharmProjects/pythonProject1/main.py 7%|▋ | 1011828/14344392 [22:20<4:54:19, 754.96word/s] [+] Password found: bengie04 Process finished with exit code 0
/usr/share/wordlists
目录下拷贝一份到uos系统中或者百度rockyou.txt文件