Resistant
Challenge
Reverse challenge with obfuscated key/IV material. Undo XOR mask and reproduce AES-CBC path.
Solution
Key solve code:
from pwn import xor
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad
key = bytes([0xb4, 0x9f, 0xe8, 0xf5, 0x90, 0x97, 0xb9, 0x0b, 0x5a, 0xb9, 0xbb, 0xce, 0xba, 0x9f, 0xb8, 0x81])
iv = bytes([0x6c, 0x5e, 0x03, 0x99, 0xde, 0x6f, 0xd3, 0x2e, 0x78, 0x3d, 0xb8, 0x11, 0xd1, 0x4c, 0x1d, 0xde])
xor_key = bytes([0xde, 0xad, 0xbe, 0xef])
key = xor(key, xor_key)
iv = xor(iv, xor_key)
cipher = AES.new(key, AES.MODE_CBC, iv)
m = pad(b"N0tUrM0msP4sswd!", block_size=16)
c = cipher.encrypt(m)
print(c.hex())
Flag
gigem{a_b4ttl3_4_th3_hist0ry_b00ks}