stack1
-
Stack1 풀이System hacking training/Protostar 2018. 2. 3. 21:00
[문제] [풀이] 역시 stack0와 같이 modified 의 값을 변경해야 하는 문제인데 다른점은 if 문 참 조건이 modified 의 값이 0x61626364 이다. 또 다른점은 이 문제의 취약점은 strcpy()에 의해 bof가 발생한다는 점이다. strcpy()는 문자열의 길이를 검사하지 않는다. 정확한 계산을 위해 gdb로 열어본다. 소스 코드가 주어졌기 때문에 분석은 어렵지가 않다. 역시 esp+0x5c 가 modified esp+0x1c 가 buffer 시작 위치다. [Stack] [low address] | char buffer[64] | int modified | SFP | RET | [high address] 이전 문제와 동일하다. 따라서 페이로드를 (python -c 'print "..