System
-
[Stack 1]System/Protostar 2018. 2. 1. 17:45
[Stack 1 Code] [Stack 1 실행] Stack 1에 AAAA값을 넘겨 실행하면Try again, you got 0x00000000 이라면서modified변수 안에 값을 16진수로 8자리 출력해준다.BOF를 일으켜 modified변수 값을 0x61626364(abcd)로 조작해주면you have correctly got the variable to the right value라는 Success 문자열이 출력될 것이다. ================================================================================================== BOF취약점이 있는 strcpy함수를 사용함을 알 수가 있다.따라서, 인자값을 넘겨줄 때 64바이트를..
-
[Stack 0]System/Protostar 2018. 2. 1. 17:20
[Stack 0 Code] [Stack 0 실행] 버퍼가 64바이트 공간을 갖고 있으며, BOF를 일으켜 modified의 변수값을 바꾸면 되는 문제다.modified의 변수값이 0이아닌 다른값으로 조작되면you have changed the 'modified' variable이라는 문자열을 출력한다. gets함수를 호출하는 주소에 BP를 걸고 실행시켜보자 그 후 A를 64개 입력하고 ESP를 보면 64개까지 A가 채워져있고 그뒤는 modified변수 공간이므로 0으로 초기화 되어있다. 따라서, 버퍼64개를 넘겨준 뒤 임의의 값을 하나 더 넘겨주면 BOF가 발생되어 modified변수의 값이 바뀔 것이다. 성공적으로 modified변수 값을 조작했다. 그 후, Success 문자열 you have cha..
-
HackerSchool Level1 문제풀이System/FTZ 2017. 10. 5. 00:05
Level 1 우선, Putty로 ftz.hackerschool.org에 접속 후level1/level1으로 로그인 한다. 현재 디렉토리에 어떤 것들이 있나 ls -al명령어를 쳐보니hint문서가 있다. 힌트에는'level2 권한에 setuid가 걸린 파일을 찾는다.' 여기서 setuid란?- 우선, set은 '변경하다' 라는 뜻을 가지고 있다.uid는 'User id'라는 의미이다.합쳐서 생각해보면 'User id를 변경하는 것' 이라고 생각해볼 수 있다. 그럼 왜 이런 기능이 있는 것일까? 우리가 패스워드를 변경할 때, /etc/shadow파일을 수정해야 하는데shadow파일은 root권한을 있어야만 접근 가능하다.이때, 일반 사용자도 편하게 패스워드를 변경할 수 있도록passwd명령어를 사용할 때만..