리눅스 파일 권한과 umask 정리, SUID·SGID·스티키 비트 8문제 풀이

리눅스 파일 권한은 서버 운영, 보안 점검, 자격증 시험에 모두 나오는 기본기다. 그런데 chmod 숫자는 외워도 umask 계산이나 특수 권한에서 자주 헷갈린다. 오늘은 umask와 SUID·SGID·스티키 비트를 8문제로 정리한다.

학습용 예상문제 안내: 아래 문제는 직접 만든 학습용 예상문제이며 실제 시험과 다를 수 있다. 최신 출제 범위는 KISA, 한국데이터산업진흥원 등 공식 공지를 반드시 확인하자.

이 글의 구성

  • 문제 1~2: umask 계산(파일은 666, 디렉터리는 777에서 뺀다)
  • 문제 3~4: SUID와 ls 출력 읽기
  • 문제 5~6: SGID, 스티키 비트의 쓰임
  • 문제 7~8: 심볼릭 모드와 find 점검 명령

각 문제 아래 파란 상자가 정답과 풀이다. 먼저 직접 풀고 확인하길 권한다. 명령은 모두 리눅스 셸에서 실행해 결과를 확인한 것들이다.

문제 1. umask 022가 만드는 기본 권한

umask가 022인 환경에서 touch a.txt와 mkdir dir1을 실행했다. 파일과 디렉터리에 부여되는 권한을 8진수로 쓰시오.

정답: 파일 644, 디렉터리 755
umask는 기본 권한에서 빼는 값이다. 새 파일의 기본값은 666, 디렉터리는 777이다. 파일은 666에서 022를 빼 644(rw-r–r–)가 되고, 디렉터리는 777에서 022를 빼 755(rwxr-xr-x)가 된다. 파일에 실행 권한이 처음부터 붙지 않는 점이 핵심이다.

문제 2. umask 027 환경의 결과

umask 027일 때 새로 만든 파일과 디렉터리의 권한을 각각 쓰고, 그룹 외 사용자(other)가 할 수 있는 일을 설명하시오.

정답: 파일 640, 디렉터리 750, other는 접근 불가
666-027=640(rw-r—–), 777-027=750(rwxr-x—)이다. other 자리가 0이므로 소유자·그룹 외 사용자는 읽기, 쓰기, 디렉터리 진입 모두 할 수 없다. 서버 계정의 기본 umask를 027로 두는 것은 흔한 보안 설정이다.

문제 3. SUID가 설정된 파일 읽기

-rwsr-xr-x 1 root root ... /usr/bin/passwd 에서 s의 의미와 숫자 표기를 쓰시오. 이 설정이 보안상 점검 대상인 이유도 설명하시오.

정답: SUID(Set User ID), 4755
실행 시 실행한 사용자가 아니라 파일 소유자(여기서는 root)의 권한으로 프로세스가 돌아간다. 일반 사용자가 /etc/shadow를 직접 수정할 수 없어도 passwd 명령으로 자기 비밀번호를 바꿀 수 있는 이유다. 반대로 취약한 SUID 프로그램은 권한 상승 경로가 되므로, 불필요한 SUID 파일은 주기적으로 찾아 제거해야 한다.

문제 4. 대문자 S가 나오는 경우

chmod 4644 test.sh 후 ls -l 결과의 소유자 권한 부분이 rwS로 표시되었다. 소문자 s가 아닌 이유는 무엇인가?

정답: 소유자 실행(x) 권한이 없기 때문
특수 권한 비트는 해당 자리의 x 위치에 겹쳐 표시된다. x가 있으면 소문자(s, t), 없으면 대문자(S, T)다. 644에는 소유자 실행 권한이 없으므로 S가 되고, 이 상태의 SUID는 사실상 효과가 없다. 직접 실행해 보면 바로 확인된다.

문제 5. 공유 디렉터리와 SGID

개발팀이 함께 쓰는 디렉터리에서 누가 파일을 만들든 그룹 소유가 디렉터리의 그룹으로 유지되게 하려 한다. 필요한 특수 권한과 명령을 쓰시오(권한은 rwxrwxr-x).

정답: SGID, chmod 2775 디렉터리
디렉터리에 SGID를 걸면 그 안에서 새로 만든 파일과 하위 디렉터리가 만든 사람의 기본 그룹이 아니라 디렉터리의 그룹을 상속한다. ls 결과는 drwxrwsr-x로 나타난다.

문제 6. /tmp의 스티키 비트

/tmp는 모든 사용자가 쓸 수 있는데도 남의 파일은 지우지 못한다. 이를 가능하게 하는 권한과 숫자 표기를 쓰시오.

정답: 스티키 비트(Sticky Bit), 1777
스티키 비트가 걸린 디렉터리에서는 파일 소유자, 디렉터리 소유자, root만 파일을 삭제하거나 이름을 바꿀 수 있다. 표시는 drwxrwxrwt다.

문제 7. 심볼릭 모드로 권한 지정

소유자는 읽기·쓰기·실행, 그룹은 읽기·실행, 기타 사용자는 권한 없음으로 만드는 chmod 명령을 심볼릭 모드로 쓰고 숫자로도 환산하시오.

정답: chmod u=rwx,g=rx,o= 파일 = 750
소유자 4+2+1=7, 그룹 4+0+1=5, 기타 0이다. o=처럼 등호 뒤를 비우면 해당 권한을 모두 제거한다.

문제 8. SUID 파일 점검 명령

시스템 전체에서 SUID가 설정된 일반 파일을 찾는 find 명령을 쓰고, 오류 메시지를 화면에 보이지 않게 하는 방법도 포함하시오.

정답: find / -perm -4000 -type f 2>/dev/null
-perm -4000은 해당 비트가 모두 설정된 파일을 찾는다. SUID와 SGID 중 하나라도 있는 파일은 -perm /6000으로 찾는다. 2>/dev/null은 접근 거부 같은 표준 오류를 버린다. 결과 목록을 기준 목록과 비교해 낯선 파일이 있는지 보는 것이 점검의 요점이다.

공부 팁 3가지

  1. umask는 암기보다 계산이다. 파일 666, 디렉터리 777에서 빼는 것만 기억하면 어떤 값이 나와도 풀 수 있다.
  2. 특수 권한은 문자 위치와 숫자 자리(4=SUID, 2=SGID, 1=스티키)를 한 쌍으로 묶어 외운다. 테스트용 디렉터리에서 직접 chmod를 바꿔 가며 ls -l 출력을 비교하면 대문자 S와 T의 차이도 금방 익는다.
  3. find로 SUID 파일을 찾는 명령은 실기와 실무 점검 양쪽에 쓰인다. 옵션 -perm의 – 와 / 차이를 꼭 구분해 두자.

면책: 이 글의 문제는 학습용으로 직접 만든 예상문제이며 실제 시험과 다를 수 있다. 시험 범위와 일정은 반드시 KISA, 한국데이터산업진흥원 등 공식 공지로 확인하자. 운영 서버에 명령을 적용할 때는 반드시 테스트 환경에서 먼저 확인한다.

zerg96

Recent Posts

회계·세무 자격증 로드맵 — 전산회계에서 재경관리사, 공인회계사까지 2026 일정

회계와 세무 분야 자격증은 입문용부터 국가전문자격까지 단계가 넓습니다. 일정표 자료로 확인된 시험을 중심으로, 어떤 시험이…

2일 ago

금융투자협회 자격증 한눈에 — 투자권유 자문·대행인과 투자자산운용사 2026 일정

금융투자협회가 시행하는 자격시험은 투자권유자문인력, 투자권유대행인, 투자자산운용사처럼 이름이 비슷한 종목이 많아 처음 보면 헷갈립니다. 일정표 자료를…

2일 ago

ITQ·GTQ·DIAT 차이 한눈에 — 사무·그래픽 자격증 선택법과 2026 일정

ITQ, GTQ, DIAT는 모두 PC 활용 능력을 보여 주는 민간 자격이지만 시행기관과 평가 방식이 다릅니다.…

2일 ago

컴퓨터활용능력 1급 2급 차이 — 시험 과목, 합격 기준, 상시시험 접수 요령

컴퓨터활용능력은 사무직 취업과 학점 인정 목적으로 가장 많이 응시하는 국가기술자격 중 하나입니다. 1급과 2급은 시험…

2일 ago

데이터 자격증 한눈에 비교 — ADsP·SQLD·빅데이터분석기사·ADP 차이와 2026 일정

데이터 분야 자격증은 이름이 비슷해서 헷갈리기 쉽습니다. 시행기관과 시험 구성, 응시 자격, 올해 일정을 한…

2일 ago

비전공자 IT 자격증 입문 순서 — 사무 활용부터 데이터·개발까지 단계별로 고르기

IT 자격증을 처음 준비하는 분들이 가장 많이 묻는 질문은 "무엇부터 따야 하느냐"입니다. 정답은 목표 직무에…

2일 ago