The most awaited international CTF from Bangladesh!

KnightCTF 2023 is a jeopardy CTF competition for Cyber ​​Security professionals and students or those who are interested in security.

There will be challenges in various categories like PWN, Reversing, Web, Cryptography etc.

Tons as well as tons of thankfulness along with an appreciation for all of our sponsors who made this event possible.

문제 분석

비즈네르경이 꿈에서 패킷 캡쳐 내용을 보냈는데 거기에는 성공에 대한 Key 즉, 플래그가 담겨 있다 합니다.

패킷 파일을 들여다 보겠습니다.

ICMP 프로토콜이며 Request는 모두 Type 8 ping을 반복적으로 전송하고 있습니다.

Data를 포함하여 보내고 있는데 값을 보면 모두 1byte씩 보내고 있습니다.

ICMP 프로토콜에 대한 Data를 모두 조합하면 a25pZ2h0Cg==입니다.

이후에는 DNS를 이용하여 query를 보내고 있는데 URL의 첫 값을 계속 바꿔가면서 DNS Query를 보내는 것을 알 수 있습니다.

DNS Query에서 첫 값을 모두 조합하면 VVBCTHtvMV9tcjNhX2VuMF9oazNfaTBofQ==입니다.

일단 base64 인코딩된 값임을 알 수 있고 디코딩해봐야 알 것으로 보입니다.

첫 값은 knight로 나오는 것을 보니 맞는거 같은데 두번째 값은 형태는 맞는데 값이 다른 것으로 보여 카이사르(시저) 암호로 유추했습니다.(단순 치환 암호)

규칙을 찾아보며 확인해봤지만 알 수 없었다. 이후 문제의 힌트가 있을 것으로 예상되어 보낸 이의 이름을 찾아보면 아래와 같은 내용이 있다.

두번째 디코딩한 값은 비즈네르 암호화가 되어 있는 것으로 예상되어 해당 암호 값을 복호화 해보면 아래와 같다.

복호화를 위해서는 Key가 필요하는데 첫번째 base64 디코딩 값 knight를 넣으니 FLAG가 나오는 것을 알 수 있다.