
이 문제는 Easy Keygen.exe와 ReadMe.txt가 주어진다. ReadMe를 확인해보니 Serial이 5B134977135E7D13가 되는 Name 값을 찾아야 한다. 프로그램을 실행시켜서 Name에 임의의 값을 넣어보았다. correct/wrong 판별이 되기 전 비교하는 부분을 확인해보면 입력한 abcde의 Serial은 7142537445 임을 알 수 있다. 입력한 Name 값으로 Serial을 생성하는 로직을 찾아가 보았다. 입력한 Name의 첫번째 값 a의 hex와 10을 XOR 연산하는 것을 확인할 수 있다. 두번째 값 b는 20과 XOR 연산하는 것을 확인할 수 있다. 로직을 계속 확인해 나가면 Name 값을 10, 20, 30, 10, 20, 30 ... 반복하며 XOR 연산으로..
CODEGATE 2013 - Binary 100 주어진 exe 파일을 실행하면 doorlock이 뜨고, 임의의 수를 입력하면 "sorry, try again" 이라는 메시지 박스가 뜬다. 해당 exe를 .Net Reflector로 디컴파일하여 분석하다보면, 아래와 같은 코드를 볼 수 있다. data.length가 0x10 이면, AES 암호화를 한 후 XOR 연산하여 this.lowkey와 비교를 한다. data.length에 맞게 16(0x10)자리 숫자를 입력하면 조건문 두개를 만날 수 있는데 입력한 값이 조건에 만족한다면 this.c를 XOR 연산하고 AES Decrypt한 값을 메시지 박스에 띄워주는게 이것이 키값이 된다. 하지만, 조건에 만족하지 않으면 this.d를 XOR 연산하고 AES De..
- Total
- Today
- Yesterday