ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [HackerSchool] Level1
    오래된/HackerSchool 2011. 4. 26. 07:21

    HackerSchool F.T.Z 에 접속 하면 레벨업 문제와 관련된 Hint 파일을 User 홈 디렉토리에서 찾을 수 있는데, 이름이 hint 이다.

    [level1@ftz level1]$ cat hint


    level2 권한에 setuid가 걸린 파일을 찾는다.

     


    1. SETUID

    파일에 setuid 를 설정하고 group 이나 other 에 실행 권한을 부여하면 프로그램이 실행 되는 동안 파일의 소유자 권한을
    갖도록 한다. 이와 비슷하게 setgid가 존재한다.

    Man 페이지에서 확인하기.

    http://www.google.com/cse?cx=partner-pub-6915143203050178%3A3221174078&ie=UTF-8&q=setuid&sa=%EA%B2%80%EC%83%89

    Wiki & Terms 에서 확인하기.

    http://www.google.co.kr/cse?cx=partner-pub-6915143203050178%3Atla0tik52fl&ie=UTF-8&q=setuid&sa=%EA%B2%80%EC%83%89

    2. FIND

    리눅스 시스템에서 파일을 검색할 때 유용한 명령으로 여러가지 옵션을 이용하면 hint 에서 말하는 파일을 쉽게 찾아낼 수 있다.

     find / -user level1
    [ '/' 위치부터 level1 이 소유자로 설정된 파일을 검색 ]

    문제는 이렇게 검색 할 경우 권한이 없는 디렉토리 접근시 에러가 출력되어 우리가 원하는 결과를 쉽게 볼 수 없다는데에 있다.

     find / -user level1 2>/dev/null
    [ '/' 위치부터 level1 이 소유자로 설정된 파일을 검색. 단, 표준에러는 제거 ]

    2는 표준에러를 의미하고 /den/null 은 단순하게 쓰레기통 정도로 생각하고 있으면 되겠다.
    이제 setuid 가 설정된 파일을 추려내야 한다.

     find / -user level1 -perm -4000 2>/dev/null
    [ '/' 위치부터 level1 이 소유자로 설정되어 있으면서, setuid가 설정된 파일을 검색. 단, 표준에러는 제거 ]

    위와 같은 방법으로 파일을 찾아내면 되겠다.

    http://www.google.com/cse?cx=partner-pub-6915143203050178%3A3221174078&ie=UTF-8&q=find

    파일을 찾아 실행 하면 아래와 같은 화면이 출력된다.

    레벨2의 권한으로 당신이 원하는 명령어를
    한가지 실행시켜 드리겠습니다.
    (단, my-pass 와 chmod는 제외)

    어떤 명령을 실행시키겠습니까?

    [level2@ftz level2]$

    [ 프로그램 실행 후 ]

    여러가지 다양한 방법으로 우리가 원하는 my-pass 명령을 수행할 수 있다.

    3. SHELL

    리눅스 시스템에는 여러가지의 shell 이 존재하는데, shell 은 사용자가 입력한 명령을 번역하여 kernel 에 전달해 주는 역할을 하는 인터페이스 프로그램을 말한다. 현재 가장 많이 사용되는 shell 은 bash shell 이다.

    '오래된 > HackerSchool' 카테고리의 다른 글

    [HackerSchool] Level6  (0) 2011.04.27
    [HackerSchool] Level5  (0) 2011.04.27
    [HackerSchool] Level4  (0) 2011.04.27
    [HackerSchool] Level3  (0) 2011.04.26
    [HackerSchool] Level2  (0) 2011.04.26

    댓글

Designed by Tistory.