문제 : Key를 구한 후 입력하게 되면 성공메시지를 볼 수 있다. 이때 성공메시지 대신 Key 값이 MessageBox에 출력 되도록 하려면 파일을 HexEdit로 오픈 한 다음 0x???? ~ 0x???? 영역에 Key 값을 overwrite 하면 된다.
Key값과 + 주소영역을 찾으시오
풀이 :
프로그램 실행 모습이다.
디버거를 켜서 확인해 보자.
바로 OEP로 진입한걸 보아 패킹되지 않았음을 알 수 있다.
문자열 검색을 해보자.
Key값을 맞췄을 때의 문자열을 예상할 수 있다. 해당 위치로 가보자.
key가 맞았을 때 뜨는 MessageBox로 가기 위한 분기문은 JNE 401098임을 알 수 있다.
이로인해 key값은 cmp eax, 0x7A2896BF에서 비교대상인 0x7A2896BF임을 예상할 수 있다.
10진수로 바꿔서 입력해보니 Congratulation문구가 떴다.
이제 Key값을 알아냈으니, 저 Messagebox에서 Congratulation 문구 대신 Key값이 뜨게 해보자.
40353B부분을 KEY값으로 덮어쓰면 될 것 이다.
HXD를 켜보자.
해당부분을 ASCII표를 참고하여 Key값으로 바꿔보겠다.
프로그램을 실행시켜보겠다.
[Write-up] CodeEngn Basic RCE 14 (0) | 2020.01.20 |
---|---|
[Write-up] CodeEngn Basic RCE 13 (0) | 2020.01.20 |
[Write-up] CodeEngn Basic RCE 11 (0) | 2020.01.19 |
[Write-up] CodeEngn Basic RCE 10 (0) | 2020.01.19 |
[Write-up] CodeEngn Basic RCE 9 (0) | 2020.01.17 |
댓글 영역