je code suivant:Putilisateur shutil, le fichier complet n'est pas écrit dans l'archive. Essayé zipfile aussi
import os
import sys
import shutil
import binascii
import zipfile
code = "testing111"
head1 = ("\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01")
head2 = ("\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01")
head3 = ("\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01")
evilbuff = bytearray(head1)
evilbuff += code
evilbuff += bytearray(head2)
evilbuff += code
evilbuff += bytearray(head3)
file = "folder\\file\\demo\\images.png"
f = open(file,mode='wb')
f.write(evilbuff)
file2 = sys.argv[2]
shutil.make_archive("myzip", "zip", "demo_03")
print ("[+] Done")
Je suis en train d'écrire un fichier dans folder_03\file\demo\
puis zip le contenu du dossier folder_03
. Tout fonctionne bien.
Il y a juste un problème. Le fichier images.jpg
est dénudé à la fin.
Il est écrit comme prévu dans folder\file\demo\images.jpg
mais dans l'archive zip le fichier n'est pas complet. Environ 300 octets sont supprimés de la fin. Est-ce un bug dans l'utilitaire zip python? J'ai aussi essayé avec zipfile mais j'ai eu le même problème. Les octets de head1, head2, head3
ne sont que des exemples.
Le fichier n'est-il pas compressé lorsqu'il est placé dans une archive? –
Oui c'est compressé. Mais si j'extrais cette archive et vérifiais à nouveau ce fichier image. Certains octets de la dernière sont manquants. Cependant, le fichier dans le démo filder est écrit correctement. – user1111111111111