random 이라는 문제이다!



(random 문제)



문제 화면은 아래와 같다.



(문제)



랜덤함수를 이용한 프로그래밍을 했다니 확인해보자

소스코드!


(소스코드)



음 내가 입력한 값과 랜덤값을 XOR하여 저 값이 되게하는 거니까
키 값은 deadbeef XOR 랜덤값을 한 값을 입력하면 되겠군

근데 랜덤값을 어떻게...
오버플로우 문제인가??

내 Centos에 옮겨서 gdb로 돌려보았다. 반복하면서 돌려보다가 엥?

랜덤값이 항상 0x6b8b4567 이 나오는 것이었다.



(같은값)



확인해보니 rand() 함수만 이용하면 항상 같은 값이 나온다는 거였다.

그래서 seed 주어 난수를 생성하는 것이었다. 여기서 조금 의아했던 것은 과연 이게 문제 사이트 시스템에서도 같은 값일까 였다.

내가 알아낸 값과 deadbeef를 XOR해주면 내가 입력해야할 key값이 나온다.



(key구하기)



그리고 결론은 성공!



(문제 해결)



'WarGame > 500 Project' 카테고리의 다른 글

(50/500) pwnable.kr - mistake  (0) 2017.07.10
(49/500) pwnable.kr - leg  (0) 2017.07.10
(47/500) - pwnable.kr - passcode  (0) 2017.07.06
(46/500) - pwnable.kr - flag  (0) 2017.07.05
(45/500) - pwnable.kr - bof  (0) 2017.07.05

+ Recent posts