본문 바로가기

ctf

[CodeGate 2013 CTF] binary 100

 

 

파일을 실행시키면 다음과 같이 Door_Lock 이 뜬다. 임의의 수를 입력하니 "Sorry, try again" 메시지 박스를 띄운다.

 

 

.NET 기반으로 제작된 프로그램이다. .NET 디컴파일러를 통해 분석해보도록 한다.

 

 

디컴파일러를 통해 소스 코드를 분석하다 보면 다음과 같은 코드가 나온다.

Data.Length 가 0x10(16) 이라면 AES 암호화를 한 후 xor 연산하여 this.lowkey 와 비교를 한다.

 

 

 

Data.Length 길이를 16 으로 입력했더니 "Do you know? Preliminary Math?" 라는 메시지 박스를 띄운다.

 

 

 

정답 루틴으로만 가도록 코드를 조작한다.

 

 

길이만 맞춰서 입력하니 flag 가 뜬다.

 

code9ate2013 Start

'ctf' 카테고리의 다른 글

[HolyShield 2016 CTF] Unreadable Table  (0) 2016.01.21
[HolyShield 2016 CTF] Memory  (2) 2016.01.21
[CSAW 2013 CTF] DotNetRevering.exe  (0) 2016.01.04
[CSAW 2013 CTF] csaw2013reversing1.exe  (0) 2015.12.31
[CSAW 2013 CTF] csaw2013reversing2.exe  (0) 2015.12.31