Cách bẻ khóa file zip online đơn giản bằng Python

Hiện nay, định dạng .zip là một trong các định dạng nén phổ biến ở trên PC. Quá trình crack password file zip cũng được thực hiện khá đơn giản. Có phần hơi mất thời gian đối với các mật khẩu phức tạp. Ở bài viết, sửa chữa laptop Đà Nẵng Techcare sẽ hướng dẫn cách bẻ khóa file zip online đơn giản bằng Python.

1. Các thư viện cần sử dụng

Thư viện zipfile được sử dụng để xử lí file Zip.

Xem thêm bài viết tương tự:

bẻ khóa file rar online

phần mềm giải nén rar miễn phí

Thư viện itertools được sử dụng để tạo các chuỗi password.

Thư viện time được sử dụng để tính thời gian.

2. Coding

Để bẻ khóa file zip online bằng Python trước tiên các bạn hãy tạo một biến lưu giá trị của tất cả những kí tự ở trên bàn phím:

CHARACTER =’abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()’

Tiếp theo, bạn hãy viết hàm Brute rồi sử dụng hàm extractall ở module zipfile. Như vậy để tiến hành thử giải nén file zip với password đã được tạo:

123456789 def Brute(zipFile,password):

# Thử giải nén file zip

try:

zipFile.extractall(pwd=password.encode())

print (‘Password:’,password)

return True

except:

pass

Sau đó, chúng ta sẽ có hàm main:

123456789101112131415161718 def main():

# File zip cần crack

zipFile = zipfile.ZipFile(‘filename.zip’)

length = 1

start_time = time.clock()

# Lặp cho đến khi tìm ra pass

while True:

# Tạo list pass

listPass = product(CHARACTER, repeat=length)

for tryPass in listPass:

password = ”.join(tryPass)

# Nếu password đúng thì in thời gian và return

if Brute(zipFile,password):

print(‘Time’,time.clock() – start_time,’s’)

return

# Nếu list pass sai, tăng độ dài kí tự trong list lên 1

length += 1

Lúc này, Function product trong module itertools sẽ bắt đầu thực hiện nhiệm vụ tạo ra list pass có chiều dài chữ trong biến length. Tiếp đến, hàm Brute tiến hành nhiệm vụ thử giải nén mật khẩu trong list này. Nếu trường hợp sai thì tạo lại list pass có độ dài các chữ tăng thêm 1. Bạn hãy thực hiện như thế cho đến khi nào bẻ khóa file zip online và tìm ra password.

Toàn bộ code:

1234567891011121314151617181920212223242526272829303132333435363738import zipfile

from itertools import product

import time

CHARACTER = ‘abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()’

def Brute(zipFile,password):

# Thử giải nén file zip

try:

zipFile.extractall(pwd=password.encode())

print (‘Password:’,password)

return True

except:

pass

def main():

# File zip cần crack

zipFile = zipfile.ZipFile(‘filename.zip’)

length = 1

start_time = time.clock()

# Lặp cho đến khi tìm ra pass

while True:

# Tạo list pass

listPass = product(CHARACTER, repeat=length)

for tryPass in listPass:

password = ”.join(tryPass)

# Nếu password đúng thì in thời gian và return

if Brute(zipFile,password):

print(‘Time’,time.clock() – start_time,’s’)

return

# Nếu list pass sai, tăng độ dài kí tự trong list lên 1

length += 1

if __name__ == ‘__main__’:

main()

3. Thử nghiệm

Chúng ta sẽ tạo một file zip với tên là Takizawa Laura.zip và pass là jav.

Tiến hành chạy thử và kết quả như sau:

Lúc đầu, list pass sẽ được tạo với length = 1 có dạng là [a, b, c,…]. Sau đó, nếu không được thì tiếp tục tăng length = 2. Lúc đó, list sẽ trở thành [aa, ab, ac,…] và nếu cũng không được thì tăng lên length = 3 thì [aaa, aab,…, jav,…].


Đây là một trong những cách bẻ khóa file zip online đơn giản thông qua kĩ thuật Brute Force. Hệ thống sửa chữa laptop Đà Nẵng Techcare hy vọng sẽ giúp các bạn thực hiện thành công nhé!

02363663333 Gọi điện0236.366.3333