티스토리 뷰


 해커스쿨에서 제공하는 trainner service 입니다. FTZ를 접하기전에 먼저 접하고 익히면 FTZ를 풀기 수월할 것 같습니다.




- trainer1

ls : 디렉토리/파일 리스트 출력
ls -l : 디렉토리와 파일 구분 ex)
-rw-rw-r--        1 trainer1 trainer1        779 9월 24 18:37 start.txt
drwxr-xr-x        2 trainer1 trainer1        1024 9월 24 11:52 tmp
   파일 성격        Permission                용량   생성 날짜    이름
파일/디렉토리 구분 : 앞부분이 -이면 파일, d이면 디렉토리(directory)
ls -a : 숨겨진 파일 출력 (숨겨진 파일은 앞자리에 "."이 들어감)
ls -al : 숨겨진 파일/디렉토리

- trainer2 (linuxer)
pwd : 현재 경로 출력
cd .. : 경로를 한단계 위로
cd 디렉토리 : 경로를 한단계 내림
cd / : 최상위 디렉토리로 이동
mkdir 디렉토리명 : 디렉토리 생성
rmdir 디렉토리명 : 디렉토리 삭제
cp 파일 이름(1) 파일 이름(2) : 파일(1)을 복사하여 파일(2)로 붙여넣기
rm 파일 이름 : 파일 삭제
mv 파일 이름(1) 파일 이름(2) : 파일(1)을 복사하여 파일(2)로 오려넣기

- trainer3 (computer)

w : 서버에 접속한 유저 목록 출력 ex)
USER        TTY        FROM                LOGIN@   IDLE  JCPU  PCPU  WHAT
root          tty1            -                    12:51pm  0.00s 0.20s 0.03s w
guest        pts/0        210.95.24.129        03:21am  3.10m 0.12s 0.01s -bash
1              2                 3                  4            5      6      7      8
1. 어떤 아이디로 로그인 하였는지 출력
2. 콘솔or터미널 접속 여부 | tty는 콘솔, pts는 터미널
3. 접속한 사람의 IP를 출력
4. 어느 시간에 로그인 했는지 출력
5. 지연시간 (얼마나 아무것도 입력을 않고 쉬고 있는지)
6. 각 사용자가 CPU를 사용한 지연 시간
7. WHAT 필드에 있는 명령이 지연된 시간
8. 접속된 사용자들이 현재 어떤 명령을 사용하는지 출력
finger -l : 서버에 접속한 유저 목록 자세히 출력
tty : 자신의 터미널 확인
inconfig : 접속한 서버의 ip 확인
write ID /dev/pts/번호 : 쪽지 보내기
wall "내용" : 모든 사용자에게 쪽지 보내기

- trainer4 (mungguta)

※ 최상위 디렉토리 모음
bin : 가장 필수적인 리눅스 실행 파일 (기본적인 실행 파일)
boot : 리눅스 부팅 관련 파일과 커널
dev : 하드웨어에 관한 정보
etc : 패스워드 파일, 쉐도우 파일, 리눅스 설정 파일 등 (리눅스의 설정 파일)
/etc/passwd : 사용자들에 대한 간단한 정보
/etc/shadow : 사용자들의 패스워드 (아무나 보지 못함)
/etc/services : 어떤 서비스를 하는중인지 보여줌
/etc/issue.net : 처음 접속될 때 나오는 화면
/etc/motd : 로그인 후에 나오는 메세지
~/public_html : 각 사용자들의 홈페이지 파일
home : 일반 사용자들의 디렉토리가 들어가는 곳 (일반 사용자들의 아이디와 작업공간)
lib : 라이브러리 파일
mnt : mount 명령을 사용하여 마운트 시킨 시디롬, 플로피 디스켓 등이 들어가는 디렉토리
proc : 프로세스들이 저장
root : 루트의 홈 디렉토리
sbin : 기본 명령을 제외한 시스템 관리용 실행파일
tmp : 임시로 파일을 저장하는 디렉토리 (누구나 이 디렉토리에 파일 생성 가능)
usr : 다양한 응용 프로그램들이 설치되어 있는 곳
var : 시스템 운영 중 생성 되는 각종 임시 파일과 외부 접속에 대한 로그 파일

- trainer5 (goodluck)

whoami : 자신의 기본 정보
id : 자신의 자세한 기본 정보
cat /etc/passwd : 서버에서 활동중인 사람들의 계정 정보
uname -a : 리눅스의 커널 버전
※ : root 권한이란 리눅스나 유닉스에서 모든 파일을 관리하는 절대적인 관리자 권한
cat /etc/*release : 설치된 OS의 버전
rpm -qa : 패키지의 정보
cat /proc/cpuinfo : cpu 정보

- trainer6 (coffee)

※ 패스워드 파일 : 한 서버를 사용하는 사용자들의 모든 정보를 기록해 놓은 파일
cat 파일이름 : 파일의 내용을 출력 ex)
root : x : 0 : 0 : Admin : /root : /bin/bash
  1    2   3   4     5         6         7
1. 로그인할 때 사용되는 아이디
2. 패스워드
3. 컴퓨터에 입력되는 사용자 아이디
4. 컴퓨터에 입력되는 그룹
5. 사용자의 이름
6. 로그인에 성공 햇을 때 기본으로 위치하게 되는 디렉토리
7. 처음 로그인 했을 때 실행되게 할 프로그램 (로그인 했을 때 쉘이 실행되는 것)

- trainer7 (to the top)

tar, gzip : 리눅스 압축 파일
tar : 여러 파일 합치기
tar cvf 합칠파일 합칠파일들 : 합치기
tar xvf 해제할파일 : 해제하기
c - Create : 새로운 파일을 만드는 옵션
x - eXtract : 압축을 해제시키는 옵션
v - View : 압축이 되거나 풀리는 과정을 출력하는 옵션
f - File : 파일로서 백업을 하겠다는 옵션
gzip : 한번에 한개의 파일 압축
gzip 파일이름 : 선택된 파일을 압축한다
gzip -d 파일이름 : 선택된 파일을 해제한다
※ 리눅스 압축 확장자
tar : tar 프로그램을 사용하여 압축된 파일
gz : gzip 프로그램을 사용하여 압축된 파일
tar.gz : tar 프로그램으로 합친 후 gzip으로 압축한 파일
tgz : tar.gz와 동일

- trainer8 (plyaer)

※ 파일의 종류
1. 일반 텍스트 파일 : 글자로만 이루어진 파일로써 확장자는 .txt고 cat으로 내용 출력
2. 프로그램 소스 파일 : 컴퓨터 언어로 입력한 파일로 컴파일 과정을 거쳐 실행
※ 텍스트 파일 생성법
1. 쉘 프롬프트 상태에서, cat > 파일이름.txt 라고 입력
( > 는 리다이렉션이라고 읽으며 방향을 전환함)
2. 원하는 내용 입력
3. Ctrl + D
4. 수정할 경우엔 cat >> 파일이름.txt 라고 입력후 수정
※ 소스 파일 생성법
1. 쉘 프롬프트 상태에서, cat > 파일이름.c 라고 입력
2. 컴퓨터 언어로 내용 입력
3. gcc -o 프로그램이름 소스파일이름 으로 컴파일
※ 절대경로는 최상위 디렉토리부터 시작되는 경로, 상대경로는 자신이 위치한 디렉토리르 기준으로 따지는 경로

- trainer9 (programming)

유저 : 자신을 의미
그룹 : 자신이 속한 그룹
아더 : 유저와 그룹을 제외한 모든 다른 사람
루트 : 절대적인 권한을 가진 사람
uid : User ID의 약자로 유저 이름
gid : Group ID의 약자로 그룹의 이름
groups : 현재 자신이 어떤 그룹에 속해있는지를 확인
※ 파일 분석법 ex)
-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. 파일 이름

- trainer10 (best!)

Local 해킹 : 관리자 권한(root)를 얻고자 시도
Remote 해킹 : 일반 아이디를 얻을때
SetUID : 일시적으로 자신의 ID를 변경하는 것 (잠시동안 root 권한을 가질 수 있음)
※ passwd 파일에는 SetUID가 걸려있음
find / -perm -4000 : 서버 전체에서 SetUID가 걸린 파일 찾기
- : 적어도
-perm : 권한을 찾는다
4 : SetUID
000 : rwx 모두
※ find 명령
-perm : 권한과 일치하는 파일을 찾는다
-name : 이름과 일치하는 파일을 찾는다
-user : 유저와 일치하는 파일을 찾는다
-group : 그룹과 일치하는 파일을 찾는다


'War Game > [ Hacker School ] FTZ' 카테고리의 다른 글

해커스쿨 FTZ level4  (0) 2017.03.02
해커스쿨 FTZ level3  (2) 2017.02.28
해커스쿨 FTZ level2  (4) 2017.02.23
해커스쿨 FTZ level1  (0) 2017.02.15
해커스쿨 FTZ 환경 구축하기  (0) 2017.02.14