Collision1 [Toddler's Bottle] pwnable.kr collision main 함수부터 차근차근 보면, 총 20길이의 입력값을 받으며, 4개씩 쪼개어 5번을 더하게 된다. 1111 2222 3333 4444 5555 각 칸을 더하게 된다. 궁금하면 GDB로 확인해보시길 바란다. 즉, 첫 번째 4개 + 그 다음 4개 + 4개 + 4개 .... = 0x21DD09EC가 성립되어야 한다. 0x21DD09EC를 5로 나누면 0x06C5CEC8 값이 나오며, 마지막 한 개의 값에는 4를 더하여 주어야 한다. 딱 나누어 떨어지지 않으니! (0x06C5CEC8 + 0x06C5CEC8 + 0x06C5CEC8 + 0x06C5CEC8 + 0x06C5CECC) 즉, 페이로드는 ./col `python -c 'print "\xc8\xce\xc5\x06"*4 + "\xcc\xce\xc5\x06".. 2017. 8. 16. 이전 1 다음