Trainer6
※ 패스워드 파일 분석 방법
root : x : 0 : 0 : Admin : /root : /bin/bash
1 2 3 4 5 6 7
1. 로그인할 때 사용되는 아이디
2. 패스워드 - 사용자들의 패스워드만 모아 새로운 파일을 만듦 (/etc/shadow)
3. 컴퓨터에 입력되는 사용자 아이디 (컴퓨터 입장에서의 root라는 의미)
4. 해당 사용자가 속해있는 그룹
5. 사용자의 이름
6. 로그인에 성공 했을 때 기본으로 위치하게 되는 디렉터리
7. 처음 로그인 했을 때 실행되게 할 프로그램 (로그인 했을 때 쉘이 실행되는 것)
Trainer7
※ 리눅스 환경에서 압축하고, 해제하는 방법 (tar, gzip)
- tar는 사실 압축 프로그램이 아님 압축을 하면 용량이 줄어야 하는데 늘기 때문이다.
일단 파일을 압축하지 않고 그냥 합쳐버리기만 하니 기존 파일을 복구할 때 속도가 엄청 빠르다.
즉, tar는 속도면에서 볼 때 백업용 프로그램으로 따라올 자가 없음.
$ tar cvf [합칠파일] [합칠파일들]
$ tar xvf [해제할파일]
c - Create : 새로운 파일을 만드는 옵션
x - eXtract : 압축을 해제시키는 옵션
v - View : 압축이 되거나 풀리는 과정을 출력하는 옵션
f - File : 파일로서 백업을 하겠다는 옵션
- 리눅스 gzip 프로그램은 한번에 한개의 파일만 압축할 수 있음.
그렇기 때문에 tar를 사용하여 여러 파일을 1개로 뭉쳐버리고, gzip 프로그램을 사용하여 압축해 버리면 됨!
$ gzip [파일이름] : 압축
$ gzip -d [파일이름] : 압축 해제
※ 리눅스 압축 확장자 형태
- tar : tar 프로그램을 사용하여 압축된 파일 (여러 파일들이 하나로 뭉쳐져 있는 파일)
- gz : gzip 프로그램을 사용하여 압축된 파일
- tar.gz : tar 프로그램을 사용하여 파일을 합친 후, gzip을 사용하여 압축한 파일
- tgz : 위의 tar.gz과 동일
Trainer8
※ 텍스트 파일 생성법
1. 쉘 프롬프트 상태에서 $ cat > 파일이름.txt 라고 입력 ('>' 리다이렉션)
2. 원하는 내용 입력
3. Ctrl + D
4. 내용을 추가할 경우 리다이렉션을 두번 입력한다. $ cat >> 내용추가할파일.txt
※ 소스 파일 생성법
1. 쉘 프롬프트 상태에서 $ cat > 파일이름.c 라고 입력
2. 컴퓨터 언어로 내용 입력
3. $ gcc -o [파일이름1] [파일이름2] : 파일이름2를 파일이름1로 컴파일한다.
※ 절대경로는 최상위 디렉터리부터 시작되는 경로
※ 상대경로는 자신이 위치한 디렉터리를 기준으로 따지는 경로
Trainer9
※ id 설명
유저 : 자신을 의미
그룹 : 자신이 속한 그룹
아더 : 유저와 그룹을 제외한 모든 다른 사람
루트 : 절대적인 권한을 가진 사람
uid=2009(trainer9) gid=2009(trainer9) groups=2009(trainer9)
- uid : User ID의 약자. 컴퓨터가 알아보기 쉽게 숫자를 부여한 것. (trainer9 = 2009)
- gid : Group ID의 약자. 특별한 일이 없는 한 gid는 항상 uid와 같음.
- groups : 현재 자신이 어떤 그룹에 속해 있는지를 보여줌. (default uid와 같음)
※ 파일 분석법
- rwxrwxrwx 1 trainer9 trainer10 5 10월 20 21:35 test1
1 2 3 4 5 6
r(읽기) w(쓰기) x(실행) s(SetUID로 x를 포함)
1. 유저의 권한
2. 그룹의 권한
3. 아더의 권한
4. 유저
5. 그룹
6. 파일 이름
Trainer 10
※ local 해킹시 핵심이 되는 SetUID 설명
Local 해킹 : 관리자 권한 (root)를 얻고자 시도
Remote 해킹 : 일반 아이디를 얻을 때
SetUID : 일시적으로 자신의 ID를 변경하는 것 (잠시동안 root 권한을 가질 수 있음)
- Set이란 말은 "변경하다"란 뜻을 가지고 있고, UID는 User ID의 약자이다.
따라서 SetUID는 "일시적으로 자신의 ID를 변경하는 것"을 의미한다.
-> root 권한으로 SetUID가 걸린 파일을 찾아서 그것을 이용해 권한을 상승시켜 쉘을 따는 등의 행위를 할 수 있을 것.
'Wargame > Hackerschool FTZ' 카테고리의 다른 글
[FTZ] 해커스쿨 FTZ level 3 (0) | 2021.03.23 |
---|---|
[FTZ] 해커스쿨 FTZ level 2 (0) | 2021.03.23 |
[FTZ] 해커스쿨 FTZ level 1 (1) | 2021.03.23 |
[FTZ] 해커스쿨 FTZ training 1~5 (0) | 2021.03.10 |
[FTZ] 해커스쿨 FTZ 로컬 서버 구축하기 (0) | 2021.03.10 |