English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Python을 사용하여 zip 파일 비밀번호를 강력하게 깨는 방법에 대한 자세한 설명

서론

Python 내장 zipfile 모듈을 통해 zipfile을 압축 풀고, 조금 더 추가하여 비밀번호 해독을 완료합니다

zipfile 모듈은 zipfile 형식의 압축 및 해제를 위한 모듈입니다. zipfile에는 두 가지 매우 중요한 클래스가 있습니다. 각각은 ZipFile과 ZipInfo입니다. 대부분의 경우, 이 두 클래스만 사용하면 됩니다. ZipFile은 주요 클래스로, zipfile을 생성하고 읽는 데 사용되며, ZipInfo는 저장된 zipfile의 각 파일의 정보를 저장합니다.

예를 들어, Python zipfile 모듈을 읽기 위해, 여기서 filename은 파일 경로입니다:

import zipfile 
z = zipfile.ZipFile(filename, 'r') 
for i in z.infolist(): 
print i.file_size, i.header_offset 

여기서는 z.infolist()를 사용했습니다. 이는 압축 파일 내 모든 파일의 정보를 반환합니다. ZipInfo의 리스트입니다. ZipInfo 객체는 압축 파일 내 파일의 정보를 포함하고 있으며, 가장 일반적으로 사용되는 것은 filename, file_size, header_offset입니다. 이들은 파일 이름, 파일 크기, 파일 데이터가 압축 파일 내의 위치입니다.

준비 단계

먼저, 당신은 압축 파일이 필요하며, 그에 대한 비밀번호를 설정해야 합니다. 그런 모양입니다


그런 다음, 당신은 비밀번호가 포함된 압축 파일을 성공적으로 얻었습니다. 그렇다면 이제 끝입니다

강력한 해킹

먼저, 우리는 강력한 해킹이 무엇인지 알아야 합니다. 간단하게 말하면, 반복적으로 비교하는 방식입니다. 우리는 모두 MD를 알고 있습니다.5암호화하면 MD5또한, 그들은 불가역적입니다. 그렇다면 인터넷에서 MD로 알려진 암호화를 사용하면5암호화 웹사이트는 어떻게 해석하는지, 실제로는 강력한 해킹 방식입니다.

예를 들어, MD를 사용하여5암호화된 문자열을 암호화했습니다. 문자열 str="abc"의 암호화된 결과는 "3cd24fb0d6963f7d" 이렇게 긴 문자열은 누구도 이해하지 못하겠습니다, MD5암호화 웹사이트는 어떻게 만들었는지, 그들이 바빴을 때는 무작정 시도하면서 "/cc/bb/abc 이런 것들을 MD로 사용하기 시작합니다5암호화한 것을 저장해 두고, 검색할 때마다 "3cd24fb0d6963f7d" 데이터베이스에서 비교를 해보면, 운 좋으면 찾을 수 없습니다. 대부분의 경우 암호화된 문자열이 조금 더 복잡하면 찾을 수 없습니다. 이것이 바로 MD5암호화, 즉 강력한 해킹입니다

위의 코드

import zipfile #모듈을 가져옵니다. 이는 압축과 해压缩을 위해 사용됩니다
password="123" #우리가 설정한 비밀번호
zfile = zipfile.ZipFile("test.zip") #해压缩할 압축 파일
zfile.extractall(path='C:\\Users\\Administrator\\Desktop\\', members=zfile.namelist(), pwd=password.encode('utf-8'))
#해压缩 작업을 수행하세요, path는 출력 경로입니다

우리는 위의 코드를 실행해 보겠습니다(물론이야, 당신의 암호화된 비밀번호는123),그럼 창고에 test.zip를 압축해 놓았다는 것을 발견하게 됩니다. 완벽한 ending입니다. 그런데 강력한 해킹이 아직 부족합니다. 비밀번호를 알고 있으면 해킹할 필요가 있을까요? 계속 보세요.

import zipfile 
zfile = zipfile.ZipFile("test.zip")
passFile=open('pwd.txt') # 비밀번호 파일을 읽기 위해
for line in passFile.readlines():
  try:
    password = line.strip('\n')
    zfile.extractall(path='C:\\Users\\Administrator\\Desktop\\', members=zfile.namelist(), pwd=password.encode('utf-8'))
    break
  except:
    print("다시 틀렸습니다")

pwd.txt에 있는 내용은 다음과 같습니다

1223
abc
aaa
123

이제 zip 파일 비밀번호의 강력한 해킹이 완료되었습니다. 실제로는 try except 예외 메커니즘을 매우 정교하게 사용한 것입니다. 압축이 정상적으로 이루어지면 정상 비밀번호로, 압축이 실패하면 예외가 발생합니다. 시도해 보세요.

결론

이 문서의 전체 내용이 끝납니다. 이 문서의 내용이 여러분의 학습이나 업무에 도움이 되길 바랍니다. 의문이 있으시면 댓글을 통해 소통하시기 바랍니다. 감사합니다. 나르래 튜토리얼에 대한 지원에 감사합니다.

선언: 이 문서의 내용은 인터넷에서 가져왔으며, 저작권은 저작자에게 있으며, 인터넷 사용자가 자발적으로 기여하고 자체로 업로드한 내용입니다. 이 사이트는 소유권을 가지지 않으며, 인공 편집 처리를 하지 않았으며, 관련 법적 책임도 부담하지 않습니다. 저작권 위반이 의심되는 내용이 있으시면 이메일을 notice#w로 보내 주시기 바랍니다.3codebox.com에 이메일을 보내면 (#을 @으로 변경하십시오) 신고하고 관련 증거를 제공하시면, 사이트가 즉시 위반 내용을 삭제합니다.

추천 합니다