본문 바로가기

[Wargame Write-up]/HackThisSite

[HackThisSite] [Application missions] Application Challenge 4

버튼을 누르라는 문제이다. 물론 프로그램 실행 시 정상적인 방법으로는 눌리지 않으니 낸 문제일 것이다.


여태까지의 경험에 의하면, 아마 Visual Basic으로 짠 프로그램이 아닐까 추론해본다.




역시...




역시... 위 버튼에 마우스를 대면 아래쪽이 활성화, vice versa.




p32dasm으로 본 함수 주소들이다.


Command1_MouseMove() 즉, 윗 버튼에서 커서가 돌아다닐 때 Command1_Click() 함수를 호출하도록 패치해보자.




호출되는 함수의 JMP들이 한 곳에 모여 있다. 인자로 주는 것은 핸들러 같은 것으로 보인다.

Form: 0x33    /    Command1: 0x37    /    Command2: 0x3B


402750, 402810, 402AD0은 모두 Command1에서 벌어지는 이벤트들임을 발견했다면, 저렇게 추론 가능하다.




각설하고, 이렇게 주소만 바꿔서 SHORT JMP로 바꿔준다.




패치 후 실행해서 윗 버튼에 마우스만 갖다 대도 아래의 MessageBox가 뜬다.