워게임/CTFlearn

[CTFlearn] Character Encoding - 암호학 / ASCII

SecurityMan 2022. 7. 8. 11:00

 

CTFlearn의 세번째 문제

 

문제 풀이한 수가 앞의 문제보다 낮은건

 

너무 쉬워서 안풀고 그냥 넘어간 사람들이 많기때문이지 않을까.. 라는 생각이든다.

 

그정도로 쉬운 문제이다.

 

사실 풀이까지도 필요없을거 같지만.. 그래도 일단 적어본다.

 

반응형

 

문제 설명을 읽어보면

 

컴퓨터 산업이 발달하면서 미국의 coder 들이 정보 교환을 위해 표준을 만들었다고 한다.

 

그러면서 어떤 문자열이 주어지고, 무엇인지 알아낼 수 있겠냐고 물어본다.

 

41 42 43 54 46 7B 34 35 43 31 31 5F 31 35 5F 55 35 33 46 55 4C 7D

 

주어지는 문자열은 2자리로 된 16진수 숫자들이다.

 

분류를 암호학으로 하긴 했지만 

 

사실 이건 암호라기보단 인코딩이다.

 

암호는 key를 사용해서 다른사람들이 알아볼 수 없는 데이터로 바꾸는 것인데,

 

인코딩은 key 없이 그냥 표현 방식을 다르게 한것 뿐이다.

 

이 문제에서 사용된 인코딩 방식은 ASCII 이다.

 

CTF에서 뭔가 저렇게 16진수로 된 두자리 숫자가 보이면 일단 가장먼저 ASCII 코드라고 생각하고 접근하는게 좋다.

 

 

ASCII 코드표를 활용해서 쉽게 디코딩을 할 수 있다.

 

주어진 값 맨 앞에있는 41의 경우 

 

위의 표에서 보이는 0x41에 위치한 문자열(A)로 바꿔주면 된다.

 

 

 CyberChef(https://gchq.github.io/CyberChef) 사이트에서 더욱 쉽게 디코딩이 가능하다.

 

Fron Hex를 선택해주면 디코딩된 플래그를 찾을 수 있다.

반응형