학사 나부랭이

Hacker School - level1 본문

Dot-Gabi/Hacker School Prob.

Hacker School - level1

태양왕 해킹 (14세) 2021. 3. 21. 18:13

 먼저 뭐가 있는지 확인해보자고요.

hint가 있네요. 이런 게 있으면 한 번 읽고 가는 게 인지상정이죠.

흠... trainer10에서 배운 find 명령어로 찾아봐야겠네요.

find / -perm -4000 -user level2

권한이 s+rwx에 user가 level2인 파일이나 디렉토리를 찾아라는 명령의 결과예요.

여기서 위의 find: ...: permission denied는 ...까지는 갔지만 권한이 없어서 더 이상 진전하지 못했다는 뜻이에요. 즉. 해답이 될 수 있는 파일이 저 디렉토리에 있을지도 모르나 일단 /bin/ExecuteMe라는 한눈에 보이고 이름도 그럴싸해 보이는 파일을 먼저 열어보죠.

이 파일이 맞는 듯하네요. 안의 my-pass와 chmod가 또 궁금해져서 찾아봤는데,

my-pass: FTZ 개발자가 따로 설정한 명령어인가 봐요.

chmod(CHange MODe):  파일과 디렉토리의 사용권한을 변경할 때 사용돼요. 세부항목은 다룰 일이 있으면 그때 가서 적을게요.

여기서 작성자가 trainer10에서 포로리~ 흘린 힌트를 주워와 볼까요?

"멍청한 파일"은 지금 실행하고 있는 ExecuteMe가 노골적으로 멍청하니까 넘어가고 다음 레벨의 을 얻어라는데...

여기서 셸은 명령어와 프로그램을 실행할 때 사용하는 인터페이스예요. 자세히 설명하자면 사용자의 명령을 받아 해석하고 프로그램을 실행하는 커널과 사용자 사이의 다리 역할을 하죠.

그러니까 우리가 지금 명령어를 타이핑하고 있는 이 창이 셸이란 거죠. 이 셸은 다양한 종류가 있고 현재 진행형으로 개발되고 있는데 중요한 것들만 꼽으면 아래와 같아요.

여기서 sh와 우리가 다룰 bash만 알아보자고요.

sh(Bourne Shell): 유닉스 셸의 오리지널이에요. 최초의 셸이죠. 그만큼 모든 유닉스 시스템에서 사용할 수 있지만 이를 기반으로 더 좋은 셸들이 개발된 탓에 미흡한 점이 많아요. 특히 상호 대화 방식이 아니라는 것이 가장 큰 단점이에요.

bash: 위의 sh를 기반으로 만들어진 현재 리눅스의 표준 셸이에요. 우분투, 페도라, 지금 우리가 쓰고 있는 레드햇 리눅스도 사용하고 있어요. 명령어 단축 기능인 Alias 기능, 위아래 화살표 키로 입력을 불러오는 History 기능, 연산 기능, Job control 기능, 자동 이름 완성 기능, 프롬프트($, #) 제어 기능, 명령 편집 기능 등이 특징이에요. user가 어떤 셸을 사용하고 있는지는 아래의 방법들로 알 수 있어요.

셸로 인해서 이야기가 옆으로 샜네요. 이제 본론으로 돌아가서 지금 level2의 권한이 있으니까 위의 셸이라는 프로그램을 실행하면 앞으로도 쭈욱 level2로 명령을 내릴 수 있다는거죠. 그리고 그 셸은 bash를 쓸거고요. 그러니까 /bin/bash를 level2의 권한으로 명령하면...

톳따리~ level2의 셸을 가로채기에 성공했죠.

이제 신경 쓰이던 my-pass라는 명령어가 뭔지 우리 셸에 가서 알아볼까~( ͡° ͜ʖ ͡°) 

예상대로 현재 사용자의 비밀번호를 알려주는군요. 이제 level2로 가볼까요?

'Dot-Gabi > Hacker School Prob.' 카테고리의 다른 글

Hacker School - level6  (0) 2021.03.25
Hacker School - level5  (0) 2021.03.25
Hacker School - level4  (0) 2021.03.25
Hacker School - level3  (0) 2021.03.23
Hacker School - level2  (0) 2021.03.21
Comments