war game/LOB
LOB-level17(function calls)
후드빌런
2019. 7. 3. 03:57
일단 main문 길이보고 한번 놀라고 이것저것 존재하는 함수보고 한번 더 놀랐다. 느낌을 보니 맨처음 ret주소는 DO를 가르켜야 된다 했으니 그 뒤로 계속 함수를 호출해주면 될 것 같다.
nm명령어를 써주면 각 함수의 주소가 순차적으로 나온다. 이제 공격로드를 작성해보자.
[버퍼44]+[DO]+[GYE]+[GUL]+[YUT]+[MO]+[/bin/sh]
역시 저렇게 넣으면 안되는 듯 하다.
/bin/sh주소를 찾아주자. 코드를 보면 버퍼 48부터 100자리까지 지우지 않는 것을 볼 수 있다.
A로 ret를 덮고, 인자 받을 부분을 B로 채운 뒤 C를 잔뜩 넣으니 이런식으로 나온다.
/bin/sh의 주소는 0xbffffc38이겠다.
잉 아니네.
적게 채워주면 주소가 달라지나보다.
0xbffffc58로 다시 가면~
성공~