ARX

리버싱을 너무 안햇던 관계로 문제를 조금씩 풀어보려 함 ㅠㅠ
안한 이유: 뇌를 쓰기가싫음

아웃라인

key는 12바이트고 SuP3RSaFeK3Y
Pasted image 20240829144304.png

암호화 로직

Pasted image 20240829143316.png

key = (0x53, 0x75, 0x50, 0x33, 0x52, 0x53, 0x61, 0x46, 0x65, 0x4b, 0x33, 0x59)

n1 = flag[0]
n2 = flag[1]

for i in range(3):
    x = key[2*i] 
    y = (n2 + ((n1 << 7) | (n1 >> 9)))
    tmp = x ^ y
 
    a = key[2 * i + 1] 
    b = ((n2 << 7) | (n2 >> 9))
    tmp2 = a ^ b

    n2 = tmp 

result[0] = n1
result[1] = n2

대충 이렇게 2바이트씩... 두개씩 잘라들어가는 형태를 상상하면
그대로 역연산 하면 된다. 0xffff 를 이용해서 16비트 값으로 제한해줌

익스

6abbfb9a3f3bb7ad861e33c6bdd9311a.jpg REDACTED! NOTHING TO SEE!