|
http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=1414 [복사]
- 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 : 그룹과 일치하는 파일을 찾는다
|
Hit : 20920 Date : 2010/03/01 04:54
|