Impossible de tester une wordlist dans une boucle FOR
Bonjour,
Je n'arrive pas à tester les mots de passe d'un dictionnaire à travers une boucle FOR.
Je voulais savoir quelle était mon erreur de code ...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
import gnupg
wordlist = "zero.txt"
fin = open(wordlist)
gpg = gnupg.GPG(gnupghome='/root/ctf/script/gpg_decrypt')
with open('flag.txt.gpg', 'rb') as f:
for word in fin:
#real passphrase is "Z3r0K00l"
print('test passwrd ',word)
status = gpg.decrypt_file(f, passphrase=word, output='my-decrypted.txt')
print(status.ok)
f.close()
fin.close() |
Voici le résultat dans le terminal:
Code:
1 2 3 4 5 6 7 8 9 10 11
|
root@kali:~/ctf/script/gpg_decrypt# more zero.txt
test
Z3r0K00l
root@kali:~/ctf/script/gpg_decrypt# python3 gpg_decrypt.py
test passwrd test
False
test passwrd Z3r0K00l
False |
Si je teste le mot de passe dans une variable, ça passe bien !
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
import gnupg
password='Z3r0K00l'
gpg = gnupg.GPG(gnupghome='/root/ctf/script/gpg_decrypt')
with open('flag.txt.gpg', 'rb') as f:
#real passphrase is "password"
print('test passwrd ',password)
status = gpg.decrypt_file(f, passphrase=password, output='my-decrypted.txt')
print(status.ok)
f.close() |
Code:
1 2 3 4
|
root@kali:~/ctf/script/gpg_decrypt# python3 gpg_decrypt.py
test passwrd Z3r0K00l
True |
Du coup c'est un problème dans ma boucle for ?