write-up/pwnable

[pwnable.kr] random

여니두 2019. 9. 29.

random = [rbp-0x4]

key = [rbp-0x8]

 

이 소스코드에선 rand() 함수의 사용법이 잘못되었다.

이렇게 쓰면 항상 같은 값이 생성된다.

따라서 이 값을 알아내면 된다. 즉, random 변수에 들어간 값을 찾으면 된다.

(라업보고 정리)

 

rand() 함수 호출 이후에 bp를 걸어주고, 실행시킨다.

 

rand() 함수 결과값이 eax에 들어갔으므로, info register로 확인한다.

 

>> 0x6b8b4567

 

key ^ random = 0xdeadbeef 이므로,

random ^ 0xdeadbeef하면 key가 나올 것이다.

(다시 생각하기)

 

 

'write-up > pwnable' 카테고리의 다른 글

[pwnable.kr] mistake  (0) 2019.09.29
[pwnable.kr] input  (0) 2019.09.29
[pwnable.kr] passcode  (0) 2019.09.29
[pwnable.kr] bof  (0) 2019.09.28
[pwnable.kr] collision  (0) 2019.09.26

댓글