본문 바로가기

[Wargame Write-up]/Reversing.kr

[Reversing.kr] Easy ELF

File Signature를 통해, 또는 문제를 통해 ELF 파일임을 알 수 있다.


IDA로 분석해보자.


main 함수의 루틴은 다음과 같다.


sub_8048434에는 입력받는 루틴, sub_8048451에는 키 생성 루틴, sub_80484F7에는 성공 메시지 출력 루틴이 존재한다.




키를 생성하는 sub_8048451 함수의 전체적인 모습은 이러하다.


분기문을 모두 통과해 가장 오른쪽으로 가야 성공한다.




분석 결과를 보자면, 비교 루틴은 다음과 같이 존재한다.




byte 배열을 순서대로 정리한 후, 아래처럼 코딩해 보자.


1
2
3
4
5
6
7
8
result = ""
result += chr(0x78 ^ 0x34)
result += "1"
result += chr(0x7c ^ 0x32)
result += chr(0x88 ^ 0xdd)
result += "X"
 
print "Key: " + result
cs



간단하게 Key를 뽑아낼 수 있다.




'[Wargame Write-up] > Reversing.kr' 카테고리의 다른 글

[Reversing.kr] Music Player  (0) 2017.10.20
[Reversing.kr] Easy Unpack  (0) 2017.04.04
[Reversing.kr] Easy Keygen  (0) 2016.12.21
[Reversing.kr] Easy Crack  (0) 2016.09.15