write-up/pwnable
[pwnable.kr] random
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 |
댓글