[CodeEngn] Basic RCE L12
L12
문제
파일 실행
올리디버거
All referenced text string
성공 문구 이동
- GetDigItemInt
- 대화상자의 지정된 컨트롤의 텍스트를 정수 값으로 변환하는 함수
- User가 입력한 값을 가져와 키 값과 비교하는 방식임을 예측 가능
- BreakPoint를 걸어 User가 입력한 값이 어디에 저장되는지 확인하여 키 값 추출
- ESI에 특정 값 삽입
- EBX에 ESI값 넣고
- ESI에 4byte 씩 덧셈 연산
- 반복
- 결국 EAX값과 7A2896BF와 비교
- 사용자 입력값을 정수 값으로 변환한 EAX값과 비교
- 즉, 7A2896BF는 키 값임을 추론
- 7A2896BF는 10진수로 2049480383
HexEditor
- Messagebox에 출력되는 문자열 확인
- 이 주소에 10진수 키 값 OverWrite
OverWrite
- 주소 0D3B ~ 0D45 확인
결과
- Auth = 20494803830D3B0D45