[CTF GEMA] SXOR
CTF GEMA Groupe 2025
Niveau de Difficulté : Easy
Catégorie du Challenge : Reverse
Description :
Facile celui-là, LOL !
Steps to Solve
Tout d'abord, nous exécutons le programme et nous constatons qu'il doit recevoir des données pour passer...

L'analyse montre qu'il y a une partie principale qui contient un champ d'entrée et une fonction de chiffrement.
La valeur hexagonale représente le drapeau et la clé de chiffrement dans local_68.


Dans la fonction de chiffrement xor, nous pouvons voir ici qu'il s'agit d'un simple chiffrement xor que nous allons décoder.
def xor_decrypt(hex_string, key):
encrypted_bytes = bytes.fromhex(hex_string)
key_length = len(key)
decrypted = []
for i, byte in enumerate(encrypted_bytes):
decrypted_char = chr(byte ^ ord(key[i % key_length]))
decrypted.append(decrypted_char)
return ''.join(decrypted)
hex_string = "2e7f70764b5b074b486f1003436e0306504348405f02015f4d"
key = "h3110"
decrypted_text = xor_decrypt(hex_string, key)
print(f"Decrypted text: {decrypted_text}")
inverser xor avec xor et avec la même clé, vous obtiendrez le résultat correct

Flag
FLAG{34zy_x0r_3ncryp710n}