일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- pico
- Toddler's Bottle
- CTF
- PMA
- Rookiss
- string
- BOF
- Reverse
- CANARY
- FSB
- Bug
- rev
- shellcraft
- Read
- ASM
- shellcode
- practicalmalwareanalysis
- 2018
- format
- Bottle
- anti
- pwnable.kr
- writeup
- picoCTF
- Leak
- TUCTF
- pwn
- reversing
- pwnable
- toddler
- Today
- Total
목록cdll (2)
제리의 블로그
요약이 문제는 c 언어 라이브러리의 srand, rand 에 대한 문제로seed 값을 알아낼 수 있다면 풀 수 있습니다. 바이너리를 리버싱해보면현재 시간을 이용하여 seed 를 넣고 있다는 것을 알 수 있으므로같은 seed 값을 넣고 난수 생성을 100번 해주면 되는 문제입니다. writeup evenMoreLucky_exploit# nc 167.99.143.206 65032 Hello, there! What is your name? j3rrry I am glad to know you, j3rrry! Server time: 153761 If you guess the next 100 random numbers I shall give you the flag! What number am I thinking o..
요약이 문제는 c 라이브러리의 rand() 함수의 seed 값을 BOF 를 이용하여 덮어씌우고100개의 rand() 값을 맞추는 문제입니다. 입력받은 name 을 strcpy 로 스택영역에 복사하는데입력 길이 제한이 없기 때문에 overflow 하여 seed 값으로 이용되는 지역변수를 덮어씌워줍니다. 그 후부터는 seed 값을 알게된 셈이므로rand() 값을 100번 인증하면 됩니다. writeup lucky_exploit# nc 167.99.143.206 65031 Hello, there! What is your name? j3rrry I am glad to know you, j3rrry! If you guess the next 100 random numbers I shall give you the f..