私は倫理ハッキングコースを受講しています。コースの一部は、パスワードリストのテキストファイルからロックされたzipファイルのパスワードを見つけるPythonスクリプトを作成しています(理にかなっていればうれしいです)。基本的に、各パスワードを試してテキストファイルを繰り返します。スクリプトはうまくいかず、エラーも出されず、インストラクターは「うーん、それは私のために働く」と言います。ここではスクリプトがあります:倫理ハッキングスクリプトが機能しない - エラーメッセージなし
import optparse
import zipfile
from threading import Thread
def extract_zip(zfile, password):
try:
zfile.extractall(pwd=password)
print("[+] Password Found: " + password + '\n')
except:
pass
def main():
parser = optparse.OptionParser("usage %prog "+\
"-f <zipfile> -d <dictionary>")
parser.add_option('-f', dest='zname', type='string',\
help='specify zip file')
parser.add_option('-d', dest='dname', type='string',\
help='specify dictionary file')
(options, arg) = parser.parse_args()
if (options.zname == None) | (options.dname == None):
print(parser.usage)
exit(0)
else:
zname = options.zname
dname = options.dname
zFile = zipfile.ZipFile(zname)
passFile = open(dname)
for line in passFile.readlines():
password = line.strip('\n')
t = Thread(target=extract_zip, args=(zFile, password))
t.start()
if __name__ == '__main__':
main()
他の2つのファイルは、パスワードのリストをテキストファイル、テキストファイルからのパスワードのいずれかがロックを解除するパスワード保護されたzipファイルです。
コース内には、optparseが欠損していると言われるスレッドがあり、argparseがその置き換えですが、スクリプトを書き直しても機能しません。
私がコースのこの部分を閉じたいのであれば、なぜこれがうまくいかないのかについての助けを求めています。
ありがとうございました。
パスワードの抽出を担当するif条件でコードデバッグをデバッグしましたが、ファイルの読み取り中に何らかのエラーが発生している可能性があります。 –
私はそれをどうやって行うのか分かりません。私はデバッガを使用しようとしましたが、それは今私の知識を超えています。コードを見ると、(オプション、引数)は問題ですか? – Steve
pycharmをインストールし、Pythonで簡単にデバッグするためにYouTubeに行くのは簡単です。 –