본문으로 바로가기

해커스쿨.Section 12

category Study/system 2017. 11. 2. 22:04


Section 12


트레이닝 코스 : 메모리 값 변조하기




위의 코드를 보고 메모리 값을 변조해보자


우선 "abc" 인자와 함께 실행해보면 아래와 같은 결과가 나온다


타겟을 DOG에서 CAT으로 바꾸어보자



위의 모습처럼 어렵지 않게 바꿀 수 있다.




이번에는 숫자를 바꾸어보자


코드는 아래와 같다



실행결과는 아래와 같다.


이번에도 "abc"를 인자로 넘겨주니 아래와 같이 나왔다



이번에는 아까처럼 오버플로우를 일으키면 아래와 같이 잘 되지 않는다.




입력한 5678은 문자로 받아들이기 때문에 이의 아스키코드인 35 36 37 38이 들어가게 된다.


이러한 경우에는 숫자로 인식할 수 있도록 파이썬이나 perl을 이용해주어야 한다.



위를 참고하여 사용하면 된다.



프로그램을 perl문법에 맞춘 인자와 함께 넘겨주면 위와같이 오버플로우가 제대로 일어난 것을 볼 수 있다.




'Study > system' 카테고리의 다른 글

해커스쿨.Section 15  (0) 2017.11.07
해커스쿨.Section 14  (0) 2017.11.05
해커스쿨.Section 11  (0) 2017.11.02
해커스쿨.Section 9  (0) 2017.11.02
해커스쿨.Section 8  (0) 2017.11.02