[RCity] RCity1 Write up
개요
Redraccoon에서 운영하는 RCity라는 워게임에 RCity1에 대한 Write up을 작성했습니다.
해당 공격 기법들을 허가되지 않은 실제 운영 서버에서 시도하는 것은 정보통신망법에 어긋나는 행위입니다.
문제분석
1
2
3
4
5
6
SSH를 이용하여 서버에 rcity1 유저로 접속한 후,
주어진 디렉토리들을 cd (Change Directory) 명령어를 사용하여 방문해 "flag.txt" 파일을 찾으세요.
flag.txt 파일 안에는 "rcity2"라는 유저의 비밀번호가 기록되어 있을 것입니다.
이 정보를 활용하여 rcity2 유저로 로그인하세요.
문제내용을 보면 cd(Change Directory)
명령어를 사용해 flag.txt
파일을 읽는것이 목표라는 것을 할 수 있다.
접속을 한 뒤 ls -alh
명령어를 사용해 파일들을 살펴보니 maybe here
라는 디렉토리가 존재하는 것을 확인했는데 이름이 뭔가 이 디렉토리 안에 있는 것같은 느낌을 주므로 cd
명령어로 들어가봐야 할것같다. 하지만 문제는 maybe뒤에 띄어쓰기가 되어있다는 것이다. cd
명령어는 현재 디렉토리위치를 변경하는 명령어이다. 명령어의 기본 사용 형태는 cd <디렉토리이름>
와 같다. 이때 디렉토리 이름은 붙어있어야 한다. 하지만 maybe here
이라는 파일은 띄어져있어 cd maybe here
을 입력하면 오류가난다.
이러한 경우에 해결하는 방법이 여러가지가 있다. 그중 하나는 ', "
따옴표를 사용하는 것이다. 우리가 평소에 프로그래밍을 할때 문자열을 변수에 저장할때도 a="Hello, World!"
이런식으로 문자열 양쪽에 따옴표를 사용해 따옴표 안에있는것들을 모두 하나의 객체로 묶어버린다. 이것도 마찬가지로 cd 'maybe here'
또는 cd "maybe here"
로 디렉토리를 변경하면 오류없이 잘 접근이 될것이다. 다른 방법으로는 역슬래시를 사용하는것이다. cd maybe\ here
이렇게 역슬래시를 공백이나 특수문자 앞에 사용하면 일반적인 문자로 인식이 된다. 사실 그냥 자동완성이 되는 쉘이라면 tab을 사용하면 간단하게 접근할 수 있다.
maybe here
에 들어간뒤 이 디렉토리의 파일들을 본 결과 fl ag.txt
파일이 있는 것을 확인했다. fl ag.txt
파일도 중간에 공백이 존재하는데 위 디렉토리 접근하는것과 똑같이 따옴표로 감싸거나 역슬래시를 사용하면 읽을 수 있다. cat fl\ ag.txt