Reversing.kr(2)
-
Reversing.kr - Easy Keygen
Easy Keygen 문제입니다. 문제 이름처럼 Keygen을 하는 문제 같습니다. 문제를 실행시켜보면 위와 같이 이름하고, 시리얼 번호를 받습니다. 그리고 함께 들어 있는 Readme.txt 를 확인해보면 시리얼이 5B134977135E7D13일때의 key값을 찾아보라고 합니다. IDA에서 똑같이 string 부분을 확인해보고, 이를 따라 들어가면 메인함수를 확인할 수 있습니다. 아래 메인함수를 분석해보면 sprintf부분에서 ^(xor)연산이 있는것을 봐서 해당 부분에서 연산이 일어나는 것을 확인할 수 있습니다. v6, v7, v8 이 각각 v6(0x10), v7(0x20), v8(0x30) 을 가지고 있습니다. 또한 [29번줄] scanf에서 이름을 입력 받고, 이를 9변수에 저장한 후 [35번줄]..
2021.06.24 -
Reversing.kr - Easy Crack
처음 풀이하는 Reversing.kr 문제이다. Reversing에 대한 이해가 부족하고 다시 기초를 다지면서 어셈블리어를 분석하기 위해서 풀이하기로 마음먹었다. 능력이 되는 문제까지 풀어봐야겠다. 해당 프로그램은 위와 같이 입력 창을 띄워주고, 입력을 받아서 맞는지, 틀리는지에 따라서 참 거짓을 출력해주는 프로그램이다. 문자열 부분을 확인해봐서 분기문을 찾아가는 쪽으로 방향을 정해봤다. Congratulation! 부분이 이제 correct부분이니 이 부분을 따라가보면 아래와 같은 메인 출력부분을 찾을 수 있습니다. 여기 코드를 분석해보면 15번째 분기문인 if문에 걸리지 않으면 출력이 되는 것을 확인할 수 있습니다. stack frame 을 확인해보면 String, v3, v4, v5 순서로 이어져 ..
2021.05.16