웹찢남

Reversing.kr - Easy Keygen 본문

WEB_HACKING/Reversing.kr

Reversing.kr - Easy Keygen

harry595 2020. 6. 13. 17:28

 

이번 문제는 터미널에서 name을 입력받고 특정 알고리즘을 통해 key를 만드는 keygen 문제다.

 

 

대충 사악 보면 Input Name 후 scanf가 있다.

 

 

그 후 ecx에 10,20,30, edx에 input한 값을 집어 넣고 xor을 한다.

 

abcdefgh를 넣었다고 가정할 때

그렇게 10 xor a, 20 xor b , 30 xor c, 10 xor d ~ 의 방식으로 xor를 열심히 한 후

아래와 같은 특정 주소에 xor한 값을 저장한다.

 

 

그 후에 input serial이 나올때 까지 f9를 통해 돌린 후 값을 입력하고 enter를 누르기 전에

위와 같은 알고리즘으로 만들어진 값에 hardware bp를 걸고 돌리면 아래와 같은 구문을 

확인할 수 있는데 dl에는 내가 만든 serial이 들어가고 [esi]에는 입력한 serial이 나와 비교한다.

 

 

이를 통해 name을 찾을 수 있는데 시리얼 값은 문제의 요구 조건인 5B134977135E7D13이므로

input name 길이가 8이 되야 한다는 것을 알 수 있다. 따라서 1020301020301020과 해당 시리얼 값을

xor하면 name의 hex값을 얻어낼 수 있다는 것을 알 수 있다. 

 

CLEAR!!!

'WEB_HACKING > Reversing.kr' 카테고리의 다른 글

Reversing.kr - Easy Unpack  (0) 2020.06.13
Reversing.kr - Easy Crack  (0) 2020.06.13
Comments