본문 바로가기

CTF46

(CTF) 2022 hspace open CTF writeup (REV) Crack Space MFC 로 만든 keygen 문제이다. 아마 2바이트인 유니코드를 사용하는데, 플레그 포멧 안에 있는 글자의 길이는 31 이고, 0 부터 31까지 반복문을 돌면서 i 가 홀수 → 해당 인덱스와 다른값이랑 xor i 가 짝수 → 문자열 뒤집기 위와 같은 암호화를 진행한다. [0, 15, 0, 2, 0, 13, 0, 4, 0, 11, 0, 6, 0, 9, 0, 8, 0, 7, 0, 10, 0, 5, 0, 12, 0, 3, 0, 14, 0, 1, 0] 이 순서로 암호화 되는데, 띄엄띄엄 암호화된다. ㅋㅋ 뒤에서나 앞에서나 돌면서 똑같이 한 번 더 xor 해주면 풀린다. solve.py from pwn import u32 cmp = [0x53, 0x0, 0x0, 0x0, 0xa5.. 2022. 1. 16.
[CTF] ASIS CTF 2021 writeup beanstalk 먼저, license key 를 입력받고, 그 key 를 기반으로 어떤 값들을 생성하고, 그 값들중 어느 값만 추출해서 license key 를 비교한다. 맞으면, FLAG 를 입력받고, 어떤값들을 이용해 암호화한 뒤, 비교한다. first step license_to_key() license 키 형식이 BEAN-XXXX-XXXXXXXXXX-XXXXXX 인지 검사하고 std::hex 를 이용해 하위 바이트부터 first_enc 에 1바이트씩 채운다. ex : 1234-1234567890-123456 → 0x56341290785634123412 (메모리에는 0x12부터 차례대로 저장) second step Beanstalk::Beanstalk() void __fastcall Beansta.. 2021. 11. 29.
[CTF] Hacking Championship Junior 본선 후기 보호되어 있는 글 입니다. 2021. 11. 12.
[CTF] Hacking Championship Junior 예선 후기 보호되어 있는 글 입니다. 2021. 10. 22.