어렵지 않은 Unknow Ransomware 문제
뭔가 카데고리 분류하기 애매해서 MISC 로 넣었다.
MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다.
문제 설명을 읽어보면 unknown ransomware에 감염되어서
파일이 암호화 되었다고 한다.
암호화된 파일이 주어지는 flag.enc 파일인데
이걸 decrypt 하는것이 문제의 목표이다.
Notepad++ 을 이용해 flag.enc 파일을 열어봤더니
위와 같은 내용으로 채워져 있었다.
파일의 맨 끝을 보니 == 로 끝나고 있었다.
= 은 Base64에서 사용하는 패딩으로
저렇게 알수없는 알파벳+숫자들이 있는 데이터의 맨 끝이 = 또는 == 이라면
Base64 로 인코딩 되었다고 생각하면 거의 맞다.
CyberChef(https://gchq.github.io/CyberChef)에서 Base64로 디코딩을 해봤더니
디코딩한 결과 역시도 Base64 인코딩 된 것 같았다.
Base64 디코딩을 열 세번 하고 나서야 뭔가 의미있는 데이터가 나오기 시작했다.
Output이 `B®DNEI 로 시작하는데
거꾸로 쓰면 IEND®B` 가 된다.
이것 PNG 파일에서 볼 수 있는 파일 시그니처 이다.
PNG 파일은 파일이 끝날 때 IEND®B`로 끝나게 된다.
이걸 통해서 PNG 파일의 데이터가 거꾸로 쓰여있다는 것을 알아냈다.
CyberChef에서 레세피에 Reverse 를 추가해주면 쉽게 바꿀수있다.
Reverse를 할 때는 by 부분을 Byte 로 설정해주어야 한다.
맨 앞에 PNG 라는 시그니처가 나오는것을 확인할 수 있다.
저장버튼을 누르면 파일이 생성된다.
생성된 PNG 파일을 보면
플래그가 거꾸로 적혀있는것을 볼 수 있다.
'CTF > MISC' 카테고리의 다른 글
[JISCTF] Indicate - MISC / Hybrid Analysis (68) | 2023.01.28 |
---|---|
[JISCTF] Common - MISC / Python (77) | 2023.01.19 |
[Layer7 CTF] zipzipzipzipzip - MISC / Shell script (63) | 2022.12.25 |
[SHELLCTF] Secret Document - MISC / XOR / HxD (49) | 2022.10.03 |
[SHELLCTF] Feel me - MISC / Forevid (70) | 2022.09.16 |