소스가 좀 길어졌습니다


처음보는 함수도 있어서 당황스러웠는데


해석해가면서하니 이해가 됬습니다.


while문먼저보면 while은 무한루프를 돕니다.


그리고 조건문 if에서 check==deadbeef 가 되면


shellout 함수를 실행하게 됩니다.


FD_ZERO 같은것들은 잘몰랐는데 구글링해보니 입력값을 받아온다고 그런거같습니다.


switch에는 0x08일시 count가 -- 되는것을 볼 수 있습니다.


또 0x08인데 -1을 한다는것은 마이너스가되서 스택안에서 check값을


바꿀수 있다는 뜻입니다.


스택에서 check은 string[0]의 4바이트입니다.



스택의 구조가 이렇습니다.


그러면 바로 공격해봅시다.






쉘이따졋습니다!




'Wargame - 고등학교 시절 가독성 주의 부탁드립니다.) > PWNABLE' 카테고리의 다른 글

Protostar stack0  (0) 2017.04.16
ftz level19  (0) 2017.04.16
ftz level17  (0) 2017.04.15
[pwnable.kr]bof  (0) 2017.04.14
ftz level16  (0) 2017.04.14