zj3t

email: euntaejang@gmail.com

Latest Posts

CodeEngn-RCE basic14

By 오후 11:31 ,




비교문 cmp에 BP를 걸고 F9로 디버깅을 시작하면 이름과 시리얼을 입력하는 창이 나오는데 이름을 CodeEngn, 시리얼 넘버를 1111로 했을 때 오른쪽에 레지스터 칸을 보면 EAX는 457이 나오고 ESP는 129A1이 나온다. 

그러면 이제 추측해 볼수 있다. 내가 입력한 값은 레지스터 EAX에 저장된다는 것은 안다. 그리고 CMP EAX, ESI를 비교한뒤 같으면 ZF=1, 다르면 ZF=0이 반환된다. 정답으로 가려면 EAX와 ESI의 값이 같아야 한다.

혹시 몰라서 한번더 CMP 구문에 BP를 걸고 실행 시켰을 때, 이름을 CodeEngn, 시리얼을 12345를 했을 때, 레지스터 EAX의 값은3039 ESI는 129A1이 나왔다. 
이제 확실히 추측할 수가 있다. 
우리가 입력한 값은 EAX에 16진수로 저장되는 것을 확인했고, 우리가 무엇을 입력하든 ESI의 값은 변함없이 우리가 입력한 값과 비교된다. 

즉 129A1을 10진수로 바꾸어 주면 시리얼 넘버를 알 수가있다.

You Might Also Like

0 개의 댓글