CTF/MISC

[JISCTF] Unknow Ransomware - MISC / Base64

SecurityMan 2023. 1. 12. 11:00

 

어렵지 않은 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 파일을 보면

 

플래그가 거꾸로 적혀있는것을 볼 수 있다.

반응형