ELF x86 - Stack buffer overflow basic 3
Note : A JOURNEY TO GAIN KNOWLEDGE
Phân tích:
Dựa vào thứ tự khai báo biến, ta có thể phát thảo thứ tự trong stack như sau:
Như vậy khác với các chall 1 và 2, lúc này biến
check
được khai báo sau biếnbuffer
ta không thể nhập tràn để ghi đè giá trị lên checkLúc này review lại code để ý một hàm lạ lẫm
read(
fileno
(stdin),&i,1);
Như vậy hàm này giúp ta đọc từng kí tự của chuỗi nhập vào, nên nhớ buff được lưu dưới dạng chuỗi mình có thể truy xuất từng phần tử :
Để ý case sau:
Như vậy ý tưởng lúc này ta có thể đọc lại từng phần tử của check và thay đổi giá trị của chúng bằng việc giảm giá trị biến count và ghi đè vài từng bytes tương ứng với format little-endiant
flag: Sm4shM3ify0uC4n
Last updated