문제: Key를 구한 후 입력하게 되면 성공메시지를 볼 수 있다
이때 성공메시지 대신 Key 값이 MessageBox에 출력 되도록 하려면 파일을 HexEdit로 오픈 한 다음 0x???? ~ 0x???? 영역에 Key 값을 overwrite 하면 된다.
문제 : Key값과 + 주소영역을 찾으시오
Ex) 7777777????????
일단 Key를 구해야 한다.
Ollydbg를 열어보니 이러한 함수가 보임을 확인했다.
일단 문자열을 확인한다.(Search for- ~strings)
들어가보니 정말 긴 문자열과 밑에 축하한다는 것이 보인다.
일단 축하한다는 곳으로 가본다.
맞다는 부분이 00401084이다.
이 부분으로 이동하라는 명령어가 있는지 확인해보도록 한다.
그런 명령어는 딱히 없는 듯 하다.
그럼 위를 보아야 하는데, CMP EAX, 0x7A2896BF가 있음을 확인했다.
이 둘을 비교시켜 같아야 이렇게 나옴을 알 수 있다.
EAX는 KEY를 입력했을 때의 값이다.
일단 7A2896BF를 10진수로 바꾼다.
그러면 2049480383이 나옴을 확인할 수 있다.
키를 변환한 10진수로 입력하니 '축하한다'라는 부분으로 넘어감을 확인했다.
key는 변환한 10진수이다.
이제 HXD를 이용해서 Hex editor를 열어주었다.
표시한 부분의 뒷부분을 수정해보도록 한다.
이렇게 수정을 해보니 0D3B가 시작점이고 0D45가 마지막임을 확인할 수 있다.
물론 44가 마지막이지만 NULL이 포함되어야 하므로 0D45인 것이다.
0x???? ~ 0x???? 영역에 Key 값을 overwrite 하면 된다.
문제 : Key값과 + 0x~?? + 0x~~? 이므로 이대로 입력해주면 된다.
끝
'리버싱' 카테고리의 다른 글
[CodeEngn]코드엔진 basic RCE L09 (0) | 2020.07.27 |
---|---|
[CodeEngn]코드엔진 basic RCE L13 (0) | 2020.07.26 |
[CodeEngn]코드엔진 basic RCE L11 (0) | 2020.07.26 |
[CodeEngn]코드엔진 basic RCE L06 (0) | 2020.07.23 |
[CodeEngn]코드엔진 basic RCE L08 (0) | 2020.07.22 |