코딩하는 개굴이

NEBULA_level04 본문

~2019/NEBULA

NEBULA_level04

개굴이모자 2017. 7. 25. 16:02
반응형

level04

우선 이 문제를 들어가기 전에 살짝 예습도 복습도 아닌 무언가를 알고 가보자!

리눅스에서 링크의 종류는 심볼릭 링크, 하드 링크가 있는데, 심볼릭 링크는 어떤 파일을 가리키고 있는 파일을 뜻해서, 예를 들어, ln -s first.txt second.txt 라는 명령을 이용하게 된다면, second.txt라는 파일을 만드는데, 이 파일은 내용은 아무것도 없고, first.txt 파일을 가리키는 역할을 할 뿐으로, second.txt파일을 호출하면, first.txt 파일로 연결해 주는 역할을 해!

하드 링크는 하드에 저장되어 있는 자료에 다양한 이름을 부여하는 거야. ln first.txt second.txt 라는 명령어를 이용하게 된다면, second.txt 파일이 생성되는데, 심볼릭 링크와는 달리, second.txtfirst.txt의 또다른 이름이 되어, 원본을 지우더라도, second.txt는 파일의 내용을 간직하고 있게 되는 거지! , 하드 링크는 하드에 내용을 저장한 위치 정보를 가지고 있는 이름을 여러 개 생성해서, 하나를 지우더라도, 내용을 찾아 갈 수 있게 되는 것이지이!

About을 봅시다! 검은 것은 배경이오, 흰 것은 글씨이외다 라는 분들을 위해 친절히 해석을 해 드리자면!

이 레벨은 토큰 파일을 읽는 것을 필요로 합니다. 그러나, 코드는 그 파일들을 제한 할 것입니다. 우회할 수 있는 방법을 찾으세요 :)

뭔가 친절한 것 같으면서 얄미운 웃음 표시를 뒤로하고 밑에 나와있는 코드를 살펴봅시다!

무슨 말인지 모르겠는 코드들을 아는 것만이라도 열심히 읽어보면,

 13-16이 파일을 읽는 것을 실패하였고, 한 개의 인자를 가지는 경우 인 것 같고, 18-21을 보면, 파일명에 token 이라는 것이 들어갈 경우에도, 파일을 읽는 것을 실패하게 만드는 것을 알 수 있지!

그런데 위의 About 설명에서 우리는 토큰 파일을 읽어야 하는데, token이 파일명에 있을 경우, 파일을 읽을 수 없는데?? 응...? Aㅏ....그래서 우회를 하라는 것이구나이제 넘어가 봅시다아

우선 flag04 디렉토리에 뭐가 있는지 확인 해 보았는데, token 파일이 있구만 음음 열어보려고 했는….명령어가 헷갈려….…..아하하하…..

일단 넘어가 주세여…88 쨋든, ln -s , 심볼릭 링크를 이용해서, flag04_pwn이라는 파일을 만들어서 token파일을 가리키도록 만들어 주었다는!

그리고, tmp에 잘 만들어졌나 확인 해 보고~

flag04_pwn을 실행 해 보면 이상한 코드가 나옵니당!

그리고 아까 봤었던, 빨강빨강의 flag04 파일을 열면? 비밀번호를 입력하라는 게 나오는데, 아까 본 이상한 코드가 설마아…? 하면서 입력을 해 보면, 오옷? 떨리는 마음으로 id를 확인해 봅시다!

오오 맞게 했군! 대망의 get flag를 하면 레벨을 끝낼 수 있습니다!

반응형

'~2019 > NEBULA' 카테고리의 다른 글

NEBULA_level08  (0) 2017.09.02
NEBULA_level05  (0) 2017.07.25
NEBULA_ level02  (5) 2017.04.02
NEBULA_ level01  (1) 2017.04.02
NEBULA_ level00  (0) 2017.04.02
Comments