본문 바로가기

wargame/reversing.kr

Easy_ELF

먼저 실행시켜보자.

간단히 입력을 받고 틀렷다고 출력을 해주었다.


strace에 붙여본결과 딱히 anti리버싱은 되어있지 않은거 같다.



ida에 붙여보면, 처음 start에서 libc_start_main을 부른다. 이때 준 인자값으로 가면 main함수인것을 알 수 있다.


입력받는함수 에 바로 따라나오는 함수가 입력한 값을 비교해 정답과 오답을 가려주는 함수이며, 이 함수가 0을 리턴하면 오답, 1을 리턴하면 정답이다.




일단 처음 2번째글자가 1인지 비교하고,


그리고 바로 뒤에서 첫번째, 2번째, 3번째 글자를 xor한다음, 4 번째 글자가 'X'인지 확인한다.


그리고 그 아래에서 xor한후 값과 비교를 하는데, 이는 python으로 쉽게 원래 비교값을 찾아냇다.


그래서 나온글자를 조합해보면 L1NUX이다


'wargame > reversing.kr' 카테고리의 다른 글

Easy_KeygenMe  (0) 2014.06.10
Easy Crack  (0) 2014.06.03