운영체제 보안과 계정 관리
2장 1절부터는 필기 1과목: 시스템보안을 본격적으로 다룹니다.
2장 1절부터는 필기 1과목: 시스템보안을 본격적으로 다룹니다.
시스템보안은 정보보안기사에서 가장 기본이 되는 과목입니다.
핵심 의미는 다음을 다룹니다.
운영체제
계정
비밀번호
권한
로그
프로세스
서비스
악성코드
서버 보안 설정이번 절에서는 그중 첫 번째로 운영체제 보안과 계정 관리를 공부합니다.
학습 목표
이번 절의 학습 후 다음 질문에 답할 수 있어야 한다.
| 질문 | 목표 |
|---|---|
| 운영체제 보안이란 무엇인가? | OS가 자원과 사용자를 안전하게 관리하는 것이라고 설명 가능 |
| 계정 관리는 왜 중요한가? | 사용자를 식별하고 권한을 통제하기 위해 필요하다고 이해 |
| 관리자 계정은 왜 위험한가? | 탈취 시 시스템 전체 장악이 가능하기 때문이라고 설명 가능 |
| 패스워드 정책에는 무엇이 있는가? | 길이, 복잡도, 변경주기, 실패횟수 제한 등 설명 가능 |
| 최소권한 원칙이란? | 필요한 권한만 부여하는 원칙이라고 설명 가능 |
| 계정 잠금 정책은 왜 필요한가? | 무차별 대입 공격을 막기 위해 필요하다고 설명 가능 |
| 휴면 계정은 왜 위험한가? | 관리되지 않아 공격 통로가 될 수 있음을 이해 |
시스템보안이란?
시스템보안은 서버나 PC 같은 시스템을 안전하게 운영하기 위한 보안 활동입니다.
시스템 안에는 여러 중요한 요소가 있습니다.
사용자 계정
관리자 권한
파일과 디렉터리
프로세스
네트워크 서비스
로그
보안 설정
중요 데이터공격자는 보통 이런 것을 노립니다.
| 공격자가 노리는 것 | 이유 |
|---|---|
| 계정 | 시스템에 로그인하기 위해 |
| 비밀번호 | 인증을 우회하거나 계정을 탈취하기 위해 |
| 관리자 권한 | 시스템 전체를 장악하기 위해 |
| 취약한 서비스 | 원격 공격 통로로 사용하기 위해 |
| 로그 | 침입 흔적을 숨기기 위해 |
| 중요 파일 | 정보 유출 또는 변조를 위해 |
따라서 시스템보안의 기본은 다음입니다.
누가 접속하는가?
어떤 권한을 갖는가?
무엇을 실행하는가?
어떤 기록이 남는가?
불필요한 기능은 열려 있지 않은가?이번 절에서는 이 중 누가 접속하는가, 어떤 권한을 갖는가를 중심으로 봅니다.
운영체제 보안의 기본 개념
운영체제는 컴퓨터의 자원을 관리하는 핵심 소프트웨어입니다.
예를 들어 Windows, Linux, Unix 같은 것이 운영체제입니다.
운영체제는 다음을 관리합니다.
| 관리 대상 | 설명 |
|---|---|
| 사용자 | 누가 시스템을 사용하는지 관리 |
| 파일 | 어떤 파일을 읽고 쓸 수 있는지 관리 |
| 프로세스 | 어떤 프로그램이 실행되는지 관리 |
| 메모리 | 실행 중인 프로그램의 메모리 관리 |
| 장치 | 디스크, 네트워크, 주변장치 관리 |
| 권한 | 사용자별 접근 범위 통제 |
| 로그 | 시스템 활동 기록 |
보안 관점에서 운영체제의 역할은 다음입니다.
운영체제는 사용자 인증, 접근통제, 권한 관리, 자원 보호, 감사 로그 기록 등을 통해 시스템 자원을 보호한다.시험에서는 운영체제 보안을 다음과 연결해서 많이 묻습니다.
계정 관리
패스워드 관리
접근권한 관리
로그 관리
서비스 관리
패치 관리
백업 관리계정이란?
계정은 시스템 사용자를 식별하기 위한 정보입니다.
예를 들어 리눅스에는 이런 계정이 있을 수 있습니다.
root
user01
admin
webuser
dbuser
guestWindows에는 이런 계정이 있을 수 있습니다.
Administrator
Guest
user01
backupadmin계정은 단순한 이름이 아닙니다.
시스템은 계정을 기준으로 다음을 판단합니다.
| 판단 항목 | 설명 |
|---|---|
| 신원 | 이 사용자가 누구인가? |
| 권한 | 무엇을 할 수 있는가? |
| 소유권 | 어떤 파일의 소유자인가? |
| 책임추적성 | 누가 어떤 행위를 했는가? |
| 접근통제 | 어떤 자원에 접근 가능한가? |
즉, 계정은 보안의 출발점입니다.
계정 관리가 중요한 이유
계정 관리가 부실하면 공격자가 시스템에 쉽게 들어올 수 있습니다.
대표적인 위험은 다음과 같습니다.
| 문제 | 위험 |
|---|---|
| 약한 비밀번호 | 무차별 대입 공격에 취약 |
| 기본 계정 방치 | 공격자가 기본 계정을 이용해 침입 시도 |
| 퇴사자 계정 미삭제 | 내부자 또는 외부 공격자가 악용 가능 |
| 공유 계정 사용 | 누가 어떤 행위를 했는지 추적 어려움 |
| 관리자 권한 남용 | 작은 실수나 침해가 큰 피해로 확대 |
| 휴면 계정 방치 | 장기간 관리되지 않아 공격 통로가 됨 |
시험식으로 쓰면 다음과 같습니다.
계정 관리는 사용자 식별, 인증, 권한 통제, 책임추적성을 확보하기 위해 중요하며, 불필요한 계정 제거와 최소권한 부여가 필요하다.계정의 종류
일반 사용자 계정
일반 사용자 계정은 일상적인 업무를 수행하는 계정입니다.
예시는 다음과 같습니다.
user01
kim
park
employee01일반 사용자 계정에는 필요한 권한만 부여해야 합니다.
일반 사용자에게 관리자 권한을 주면 위험하다.관리자 계정
관리자 계정은 시스템 전체를 제어할 수 있는 강력한 계정입니다.
| 운영체제 | 대표 관리자 계정 |
|---|---|
| Linux/Unix | root |
| Windows | Administrator |
관리자 계정으로 할 수 있는 일은 다음과 같습니다.
계정 생성
계정 삭제
권한 변경
보안 설정 변경
서비스 시작과 중지
프로그램 설치
중요 파일 수정
로그 삭제따라서 관리자 계정이 탈취되면 시스템 전체가 위험해집니다.
관리자 계정 탈취 = 시스템 전체 장악 가능성시스템 계정
시스템 계정은 운영체제나 서비스가 동작하기 위해 사용하는 계정입니다.
예시는 다음과 같습니다.
daemon
bin
sys
www-data
mysql
nobody이런 계정은 보통 사람이 로그인해서 쓰는 계정이 아닙니다.
따라서 불필요한 로그인 권한이 있으면 위험합니다.
시험 포인트는 다음입니다.
서비스 계정에는 필요한 최소 권한만 부여하고, 대화형 로그인을 제한해야 한다.게스트 계정
Guest 계정은 임시 사용자나 제한된 사용자를 위한 계정입니다.
하지만 보안상 위험하기 때문에 보통 비활성화해야 합니다.
Guest 계정은 불필요한 접근 경로가 될 수 있으므로 비활성화하는 것이 바람직하다.공유 계정
공유 계정은 여러 사람이 함께 사용하는 계정입니다.
예를 들어 다음과 같은 계정입니다.
teamadmin
publicuser
shared01공유 계정은 보안상 좋지 않습니다.
왜냐하면 누가 어떤 행위를 했는지 추적하기 어렵기 때문입니다.
| 문제 | 설명 |
|---|---|
| 책임추적성 저하 | 실제 행위자를 특정하기 어려움 |
| 비밀번호 공유 | 유출 가능성 증가 |
| 권한 회수 어려움 | 특정 사용자만 접근 차단하기 어려움 |
| 감사 어려움 | 로그 분석 시 사용자 구분 어려움 |
시험식 표현은 다음입니다.
공유 계정은 사용자별 책임추적성을 저하시켜 보안 감사와 사고 원인 분석을 어렵게 하므로 사용을 제한해야 한다.계정 생명주기 관리
계정은 생성부터 삭제까지 관리되어야 합니다.
이것을 계정 생명주기 관리라고 볼 수 있습니다.
신청
→ 승인
→ 생성
→ 권한 부여
→ 사용
→ 권한 변경
→ 휴면 관리
→ 삭제 또는 비활성화각 단계에서 중요한 보안 포인트는 다음입니다.
| 단계 | 보안 포인트 |
|---|---|
| 신청 | 업무상 필요성 확인 |
| 승인 | 책임자 승인 |
| 생성 | 사용자별 개별 계정 생성 |
| 권한 부여 | 최소권한 원칙 적용 |
| 사용 | 로그인 기록과 사용 이력 관리 |
| 변경 | 부서 이동, 직무 변경 시 권한 조정 |
| 휴면 | 장기 미사용 계정 잠금 |
| 삭제 | 퇴사자, 계약 종료자 계정 제거 |
시험에서는 특히 다음이 중요합니다.
퇴사자 계정은 즉시 삭제 또는 비활성화해야 한다.
직무 변경 시 기존 권한을 회수하고 필요한 권한만 재부여해야 한다.
장기 미사용 계정은 잠금 또는 삭제해야 한다.패스워드 보안
패스워드는 가장 기본적인 인증 수단입니다.
하지만 관리가 부실하면 가장 흔한 침입 경로가 됩니다.
공격자는 다음 방식으로 비밀번호를 노릴 수 있습니다.
| 공격 방식 | 설명 |
|---|---|
| 무차별 대입 공격 | 가능한 비밀번호를 계속 시도 |
| 사전 공격 | 자주 쓰는 단어, 이름, 생일 등을 시도 |
| 크리덴셜 스터핑 | 다른 사이트에서 유출된 계정 정보를 재사용 |
| 피싱 | 사용자를 속여 비밀번호를 입력하게 함 |
| 키로깅 | 키 입력을 몰래 기록 |
이번 절에서는 공격 실습이 아니라, 방어 관점에서만 이해하면 됩니다.
좋은 패스워드 정책
패스워드 정책은 시험에 자주 나옵니다.
핵심 항목은 다음입니다.
| 항목 | 설명 |
|---|---|
| 최소 길이 | 너무 짧은 비밀번호 금지 |
| 복잡도 | 영문 대문자, 소문자, 숫자, 특수문자 조합 |
| 변경주기 | 일정 기간마다 변경 또는 위험 발생 시 변경 |
| 재사용 제한 | 이전에 사용한 비밀번호 재사용 금지 |
| 실패횟수 제한 | 여러 번 실패하면 계정 잠금 |
| 초기 비밀번호 변경 | 최초 로그인 시 비밀번호 변경 요구 |
| 사용자 정보 포함 금지 | 이름, 생일, 전화번호 등 금지 |
| 사전 단어 금지 | password, qwerty, admin 등 금지 |
시험식으로 쓰면 다음과 같습니다.
패스워드 정책은 최소 길이, 복잡도, 변경주기, 재사용 제한, 로그인 실패횟수 제한, 초기 비밀번호 변경 등을 포함해야 한다.계정 잠금 정책
계정 잠금 정책은 로그인 실패가 일정 횟수 이상 발생하면 계정을 잠그는 정책입니다.
예를 들어 다음과 같습니다.
로그인 5회 실패 시 10분간 계정 잠금이 정책의 목적은 다음입니다.
무차별 대입 공격과 사전 공격을 어렵게 만들기 위해서단, 운영 관점에서는 너무 엄격한 잠금 정책이 서비스 거부 문제를 만들 수도 있습니다.
공격자가 일부러 여러 계정에 로그인 실패를 발생시켜 계정을 잠기게 만들 수 있기 때문입니다.
따라서 적절한 균형이 필요합니다.
시험에서는 보통 이렇게 정리하면 됩니다.
계정 잠금 정책은 반복적인 로그인 실패를 제한하여 무차별 대입 공격을 방지하는 데 효과적이다.패스워드 저장 보안
비밀번호는 절대 평문으로 저장하면 안 됩니다.
나쁜 예시는 다음입니다.
user01 / password1234
admin / admin1234DB가 유출되면 비밀번호가 그대로 노출됩니다.
따라서 비밀번호는 보통 해시해서 저장합니다.
비밀번호 원문 → 해시 함수 → 해시값 저장더 안전하게는 솔트를 함께 사용합니다.
솔트란?
솔트는 비밀번호 해시 계산 시 함께 사용하는 임의의 값입니다.
비밀번호 + 솔트 → 해시값솔트를 사용하면 같은 비밀번호라도 사용자마다 다른 해시값이 만들어집니다.
| 구분 | 설명 |
|---|---|
| 해시 | 비밀번호를 일방향 값으로 변환 |
| 솔트 | 해시 계산에 추가하는 임의 값 |
| 효과 | 동일 비밀번호의 해시값을 다르게 만들고 사전 공격을 어렵게 함 |
시험식 표현은 다음입니다.
패스워드는 평문으로 저장하지 않고, 솔트를 적용한 해시값으로 저장하여 유출 시 원문 비밀번호 노출 위험을 줄여야 한다.관리자 계정 보안
관리자 계정은 특히 강하게 보호해야 합니다.
관리자 계정 보안 대책은 다음과 같습니다.
| 대책 | 설명 |
|---|---|
| 관리자 계정 이름 변경 | 기본 계정명 사용으로 인한 공격 위험 감소 |
| 원격 로그인 제한 | 외부에서 관리자 계정으로 직접 접속 제한 |
| MFA 적용 | 비밀번호 외 추가 인증 적용 |
| 사용 이력 기록 | 관리자 작업 로그 저장 |
| 권한 분리 | 일반 업무 계정과 관리자 계정 분리 |
| 최소권한 적용 | 필요한 관리자 권한만 부여 |
| 승인 절차 | 중요 작업은 사전 승인 |
| 정기 점검 | 관리자 계정 목록과 권한 점검 |
특히 중요한 문장입니다.
관리자 계정은 일반 업무 계정과 분리하고, 사용 이력을 기록하며, 원격 접속을 제한하고, 다중인증을 적용하는 것이 바람직하다.최소권한 원칙
최소권한 원칙은 시스템보안 전체에서 계속 나오는 핵심 원칙입니다.
정의는 다음입니다.
사용자나 프로세스에 업무 수행에 필요한 최소한의 권한만 부여하는 보안 원칙예시는 다음과 같다.
| 사용자 | 필요한 권한 | 불필요한 권한 |
|---|---|---|
| 일반 직원 | 본인 업무 파일 읽기/쓰기 | 관리자 권한 |
| 웹서버 계정 | 웹서비스 실행 권한 | 전체 시스템 수정 권한 |
| DB 조회 담당자 | 조회 권한 | 삭제 권한 |
| 백업 담당자 | 백업 수행 권한 | 사용자 계정 생성 권한 |
최소권한 원칙을 적용하면 다음 효과가 있습니다.
| 효과 | 설명 |
|---|---|
| 권한 오남용 방지 | 사용자가 불필요한 작업을 하지 못하게 함 |
| 피해 범위 축소 | 계정 탈취 시 공격 범위 제한 |
| 내부자 위협 감소 | 내부자의 과도한 접근 방지 |
| 감사 용이 | 권한 구조가 명확해짐 |
실기형 답안은 다음처럼 쓰면 됩니다.
최소권한 원칙은 사용자나 프로세스에 업무 수행에 필요한 최소한의 권한만 부여하는 원칙이다. 이를 통해 권한 오남용을 방지하고, 계정 탈취나 침해사고 발생 시 피해 범위를 줄일 수 있다.이 문장은 반드시 기억해야 합니다.
직무분리 원칙
직무분리 원칙은 한 사람이 모든 권한을 갖지 않도록 업무와 권한을 나누는 원칙입니다.
예를 들어 이런 구조는 위험합니다.
한 사람이 계정 생성, 권한 승인, 로그 삭제, 감사까지 모두 수행왜 위험할까요?
그 사람이 악의적으로 행동하면 탐지가 어렵습니다.
따라서 역할을 분리해야 합니다.
| 업무 | 담당자 분리 예시 |
|---|---|
| 권한 신청 | 사용자 |
| 권한 승인 | 부서 책임자 |
| 계정 생성 | 시스템 관리자 |
| 로그 감사 | 보안 담당자 |
| 정기 점검 | 감사 담당자 |
시험식 표현은 다음입니다.
직무분리는 권한 남용과 부정행위를 방지하기 위해 승인, 실행, 감사 기능을 서로 다른 담당자에게 분리하는 통제 원칙이다.최소권한과 직무분리는 같이 기억해야 합니다.
| 원칙 | 핵심 |
|---|---|
| 최소권한 | 필요한 권한만 준다 |
| 직무분리 | 한 사람이 모든 권한을 갖지 않게 한다 |
책임추적성
책임추적성은 시스템에서 발생한 행위의 주체를 추적할 수 있는 성질입니다.
핵심 의미는 다음 질문에 답할 수 있어야 합니다.
누가?
언제?
어디서?
무엇을?
왜?예를 들어 로그에 다음 정보가 남아야 합니다.
사용자 ID
접속 시간
접속 IP
수행 명령
접근한 파일
권한 변경 내역책임추적성을 확보하려면 다음이 필요합니다.
| 방법 | 설명 |
|---|---|
| 개별 계정 사용 | 공유 계정 금지 |
| 로그 기록 | 사용자 행위 기록 |
| 관리자 작업 기록 | 중요 작업 추적 |
| 시간 동기화 | 로그 시간의 정확성 확보 |
| 접근권한 관리 | 누가 접근 가능한지 명확히 함 |
시험식 답안은 다음입니다.
책임추적성은 시스템 행위의 주체를 식별하고 추적할 수 있는 성질이다. 이를 확보하기 위해 사용자별 개별 계정을 부여하고, 공유 계정을 제한하며, 접속 및 작업 로그를 기록해야 한다.Windows 계정 보안 기본
Windows 시스템에서 계정 보안과 관련해 자주 나오는 항목은 다음입니다.
| 항목 | 설명 |
|---|---|
| Administrator | 기본 관리자 계정 |
| Guest | 게스트 계정, 보통 비활성화 권장 |
| 계정 잠금 정책 | 로그인 실패 횟수 제한 |
| 암호 정책 | 길이, 복잡도, 변경주기 설정 |
| 사용자 권한 할당 | 로그온 권한, 종료 권한 등 관리 |
| 감사 정책 | 로그인, 권한 사용, 객체 접근 기록 |
Windows에서 보안상 중요한 기본 조치는 다음입니다.
Guest 계정 비활성화
Administrator 계정 이름 변경 또는 접근 제한
강력한 암호 정책 적용
계정 잠금 정책 적용
불필요한 사용자 계정 제거
감사 정책 활성화필기에서는 다음 식으로 묻는 경우가 많습니다.
Windows에서 기본적으로 제공되며, 시스템 전체 관리 권한을 갖는 계정은?
Administrator보안상 비활성화가 권장되는 임시 사용자 계정은?
GuestLinux/Unix 계정 보안 기본
Linux/Unix 시스템에서 가장 중요한 관리자 계정은 root입니다.
root = 최고 관리자 계정root는 시스템 전체 권한을 갖습니다.
따라서 root 계정의 직접 로그인은 제한해야 합니다.
| 항목 | 설명 |
|---|---|
| root | 최고 관리자 계정 |
| /etc/passwd | 사용자 계정 정보 저장 |
| /etc/shadow | 패스워드 해시 정보 저장 |
| UID | 사용자 식별 번호 |
| GID | 그룹 식별 번호 |
| sudo | 일반 사용자가 제한적으로 관리자 명령 실행 |
/etc/passwd
리눅스에서 사용자 계정 정보는 보통 /etc/passwd 파일에 저장됩니다.
여기에는 계정명, UID, GID, 홈 디렉터리, 로그인 셸 등이 들어갑니다.
/etc/shadow
패스워드 해시 정보는 보통 /etc/shadow 파일에 저장됩니다.
중요한 점은 다음입니다.
패스워드 해시는 /etc/shadow에 저장하며, 일반 사용자가 읽을 수 없도록 보호해야 한다.UID 0
리눅스에서 UID가 0인 계정은 root 권한을 갖습니다.
시험에서 중요합니다.
UID 0 = root 권한따라서 root 외에 UID 0을 가진 계정이 있으면 매우 위험합니다.
root 이외의 UID 0 계정 존재 여부를 점검해야 한다.sudo의 의미
sudo는 일반 사용자가 필요한 경우에만 관리자 권한으로 명령을 실행하게 해주는 기능입니다.
무조건 root로 로그인해서 작업하는 것보다, 일반 계정으로 로그인한 뒤 필요한 명령만 sudo로 실행하는 방식이 더 안전합니다.
이유는 다음입니다.
| 이유 | 설명 |
|---|---|
| 직접 root 로그인 제한 | 최고 권한 계정 노출 감소 |
| 작업 기록 가능 | 누가 어떤 관리자 명령을 실행했는지 추적 가능 |
| 권한 제한 가능 | 특정 명령만 허용 가능 |
| 책임추적성 향상 | 사용자별 작업 이력 확인 가능 |
시험식 답안은 다음입니다.
sudo는 일반 사용자가 필요한 명령에 한해 관리자 권한을 사용할 수 있도록 하는 기능이다. root 직접 로그인을 제한하고 사용자별 관리자 명령 수행 이력을 남길 수 있어 책임추적성 확보에 도움이 된다.계정 점검 항목
시스템보안 실무형 문제에서는 “계정 보안 점검 항목을 쓰시오” 같은 문제가 나올 수 있다.
이때는 다음을 쓰면 됩니다.
불필요한 계정 존재 여부 점검
퇴사자 및 장기 미사용 계정 삭제 또는 비활성화
기본 계정과 Guest 계정 비활성화
관리자 계정 사용 제한
패스워드 정책 적용 여부 확인
계정 잠금 정책 적용 여부 확인
공유 계정 사용 여부 점검
root 외 UID 0 계정 존재 여부 점검
관리자 권한 보유 계정 정기 점검실기에서는 전부 쓰지 않아도 됩니다.
문제에 맞게 4~6개 정도를 정확히 쓰면 됩니다.
학습 내용 연결 정리
시스템보안에서 계정 관리는 다음 흐름으로 이해하면 됩니다.
사용자가 시스템에 접근한다.
→ 계정으로 사용자를 식별한다.
→ 비밀번호나 MFA로 인증한다.
→ 권한에 따라 접근을 허용하거나 거부한다.
→ 사용자의 행위를 로그로 남긴다.
→ 불필요하거나 위험한 계정은 제거한다.이 흐름에서 보안 원칙은 다음입니다.
| 단계 | 보안 원칙 |
|---|---|
| 계정 생성 | 개별 계정 부여 |
| 인증 | 강력한 패스워드와 MFA |
| 권한 부여 | 최소권한 원칙 |
| 관리자 작업 | 직무분리와 승인 절차 |
| 사용 기록 | 로그와 책임추적성 |
| 계정 종료 | 즉시 삭제 또는 비활성화 |
시험에 나오는 포인트
이번 절 내용 중 시험에 자주 나오는 포인트입니다.
| 주제 | 시험 포인트 |
|---|---|
| 계정 관리 | 사용자 식별, 인증, 권한 통제, 책임추적성 확보 |
| 관리자 계정 | 탈취 시 시스템 전체 장악 가능 |
| root | Linux/Unix 최고 관리자 계정 |
| Administrator | Windows 기본 관리자 계정 |
| Guest | 비활성화 권장 |
| UID 0 | root 권한을 의미 |
| /etc/passwd | 사용자 계정 정보 |
| /etc/shadow | 패스워드 해시 정보 |
| 패스워드 정책 | 길이, 복잡도, 변경주기, 재사용 제한 |
| 계정 잠금 | 반복 로그인 실패 제한 |
| 최소권한 | 필요한 최소 권한만 부여 |
| 직무분리 | 승인·실행·감사 기능 분리 |
| 공유 계정 | 책임추적성 저하로 제한 필요 |
| 휴면 계정 | 삭제 또는 비활성화 필요 |
| sudo | 제한적 관리자 권한 사용과 기록 가능 |
필기형 문제풀이
문제 1
계정 관리의 목적으로 가장 적절한 것은?
A. 암호 알고리즘 자체를 새로 설계
B. 사용자 식별, 인증, 권한 통제, 책임추적성 확보
C. 모든 사용자에게 동일한 관리자 권한 부여
D. 시스템 계정을 공유 계정으로 통합 관리
계정 관리는 사용자를 식별하고, 인증과 권한 관리를 통해 접근을 통제하며, 로그를 통해 책임추적성을 확보하기 위한 활동입니다.
문제 2
Linux/Unix 시스템에서 최고 관리자 권한을 갖는 계정은?
A. nobody
B. daemon
C. guest
D. root
Linux/Unix에서 최고 관리자 계정은 root입니다.
문제 3
Windows 시스템에서 기본 관리자 계정으로 볼 수 있는 것은?
A. Administrator
B. Guest
C. LocalService
D. NetworkService
Windows의 기본 관리자 계정은 Administrator입니다.
문제 4
보안상 일반적으로 비활성화가 권장되는 Windows 계정은?
A. Administrator
B. LocalService
C. Guest
D. NetworkService
Guest 계정은 불필요한 접근 경로가 될 수 있어 비활성화가 권장됩니다.
문제 5
다음 중 좋은 패스워드 정책에 해당하지 않는 것은?
A. 최소 길이 설정
B. 복잡도 요구
C. 로그인 실패횟수 제한
D. 모든 사용자가 동일한 비밀번호 사용
모든 사용자가 동일한 비밀번호를 사용하는 것은 매우 위험합니다.
문제 6
계정 잠금 정책의 주된 목적은?
A. 모든 사용자가 동일한 패스워드를 쓰게 하기 위해
B. 반복적인 로그인 실패를 제한하여 무차별 대입 공격을 방지하기 위해
C. 로그인 실패 기록을 남기지 않기 위해
D. 장기 미사용 계정을 자동으로 관리자 계정으로 전환하기 위해
계정 잠금 정책은 반복 로그인 실패를 제한하여 무차별 대입 공격을 어렵게 만듭니다.
문제 7
최소권한 원칙의 설명으로 가장 적절한 것은?
A. 모든 사용자가 동일한 권한 집합을 갖도록 한다
B. 관리자 권한을 공유 계정에 집중한다
C. 사용자가 업무 수행에 필요한 최소한의 권한만 갖도록 한다
D. 기본 계정의 원격 로그인을 항상 허용한다
최소권한 원칙은 필요한 최소한의 권한만 부여하는 보안 원칙입니다.
문제 8
공유 계정 사용의 문제점으로 가장 적절한 것은?
A. 사용자별 책임추적성이 개별 계정보다 향상된다
B. 퇴사자 권한 회수가 항상 자동으로 처리된다
C. 비밀번호 공유 없이도 여러 사용자가 같은 계정을 사용한다
D. 책임추적성이 저하된다
공유 계정은 누가 어떤 행위를 했는지 추적하기 어렵게 만들어 책임추적성을 저하시킵니다.
문제 9
Linux에서 패스워드 해시 정보가 저장되는 파일로 가장 적절한 것은?
A. /etc/shadow
B. /etc/passwd
C. /etc/sudoers
D. /etc/group
패스워드 해시 정보는 일반적으로 /etc/shadow에 저장됩니다.
문제 10
Linux에서 UID가 0인 계정에 대한 설명으로 적절한 것은?
A. 패스워드가 없는 게스트 계정이다
B. 시스템 계정이지만 관리자 권한은 없다
C. root 권한을 가진다
D. 특정 그룹에만 적용되는 파일 소유권이다
UID 0은 root 권한을 의미합니다. root 외에 UID 0 계정이 존재하면 보안상 위험합니다.
실기형 답안 훈련
실기 예제 1
문제: 계정 관리가 보안상 중요한 이유를 설명하시오.
좋은 답안
계정 관리는 사용자를 식별하고 인증하며, 사용자별 권한을 통제하기 위해 필요하다. 또한 사용자 행위를 로그와 연결하여 책임추적성을 확보하고, 불필요한 계정이나 과도한 권한으로 인한 침해사고 위험을 줄일 수 있다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 사용자 식별 | 필요 |
| 인증 | 필요 |
| 권한 통제 | 필요 |
| 책임추적성 | 중요 |
| 불필요한 계정 제거 | 좋음 |
실기 예제 2
문제: 최소권한 원칙의 의미와 보안 효과를 설명하시오.
좋은 답안
최소권한 원칙은 사용자나 프로세스에 업무 수행에 필요한 최소한의 권한만 부여하는 원칙이다. 이를 통해 권한 오남용을 방지하고, 계정 탈취나 침해사고 발생 시 피해 범위를 줄일 수 있다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 필요한 최소 권한 | 필수 |
| 사용자 또는 프로세스 | 좋음 |
| 권한 오남용 방지 | 중요 |
| 피해 범위 축소 | 중요 |
실기 예제 3
문제: 공유 계정 사용을 제한해야 하는 이유를 설명하시오.
좋은 답안
공유 계정은 여러 사용자가 동일한 계정을 사용하므로 실제 행위자를 식별하기 어렵다. 이로 인해 책임추적성이 저하되고, 사고 발생 시 원인 분석과 감사가 어려워지므로 사용자별 개별 계정을 부여해야 한다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 여러 사용자가 같은 계정 사용 | 필요 |
| 실제 행위자 식별 어려움 | 중요 |
| 책임추적성 저하 | 매우 중요 |
| 개별 계정 부여 | 대응책 |
실기 예제 4
문제: 패스워드 보안 정책에 포함되어야 할 항목을 설명하시오.
좋은 답안
패스워드 보안 정책에는 최소 길이, 복잡도, 변경주기, 이전 패스워드 재사용 제한, 로그인 실패횟수 제한, 초기 패스워드 변경 등이 포함되어야 한다. 이를 통해 무차별 대입 공격, 사전 공격, 계정 탈취 위험을 줄일 수 있다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 길이 | 필요 |
| 복잡도 | 필요 |
| 변경주기 | 필요 |
| 재사용 제한 | 좋음 |
| 실패횟수 제한 | 중요 |
| 계정 탈취 위험 감소 | 좋음 |
실기 예제 5
문제: Linux 시스템에서 root 계정 보안 강화 방안을 설명하시오.
좋은 답안
root 계정은 시스템 전체 권한을 가지므로 직접 로그인을 제한하고, 일반 계정으로 로그인한 뒤 sudo를 통해 필요한 명령만 수행하도록 한다. 또한 강력한 패스워드 정책과 MFA를 적용하고, root 권한 사용 이력을 로그로 기록하여 책임추적성을 확보해야 한다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| root는 최고 권한 | 필요 |
| 직접 로그인 제한 | 중요 |
| sudo 사용 | 중요 |
| 강력한 인증 | 좋음 |
| 로그 기록 | 중요 |
핵심 요약
| 개념 | 한 줄 요약 |
|---|---|
| 시스템보안 | 서버와 운영체제 자원을 안전하게 보호하는 활동 |
| 계정 | 사용자를 식별하기 위한 정보 |
| 계정 관리 | 식별, 인증, 권한 통제, 책임추적성 확보 |
| 관리자 계정 | 시스템 전체 권한을 가진 고위험 계정 |
| root | Linux/Unix 최고 관리자 계정 |
| Administrator | Windows 기본 관리자 계정 |
| Guest | 보안상 비활성화 권장 |
| 패스워드 정책 | 길이, 복잡도, 변경주기, 실패횟수 제한 등 |
| 계정 잠금 | 반복 로그인 실패를 제한하는 정책 |
| 최소권한 | 필요한 최소 권한만 부여 |
| 직무분리 | 승인, 실행, 감사 권한을 분리 |
| 공유 계정 | 책임추적성이 낮아 사용 제한 필요 |
| /etc/passwd | Linux 계정 정보 파일 |
| /etc/shadow | Linux 패스워드 해시 파일 |
| UID 0 | root 권한 |
| sudo | 제한적 관리자 권한 실행 기능 |
필수 암기 문장
아래 문장들은 필기와 실기 모두에 중요합니다.
계정 관리는 사용자 식별, 인증, 권한 통제, 책임추적성을 확보하기 위해 필요하다.
관리자 계정은 시스템 전체 권한을 가지므로 탈취 시 피해가 크다.
최소권한 원칙은 사용자나 프로세스에 업무 수행에 필요한 최소한의 권한만 부여하는 원칙이다.
공유 계정은 실제 행위자를 식별하기 어려워 책임추적성을 저하시킨다.
패스워드 정책에는 길이, 복잡도, 변경주기, 재사용 제한, 로그인 실패횟수 제한 등이 포함된다.
패스워드는 평문으로 저장하지 않고 솔트를 적용한 해시값으로 저장해야 한다.
Linux에서 root는 최고 관리자 계정이며, UID 0은 root 권한을 의미한다.
Linux에서 /etc/passwd는 계정 정보, /etc/shadow는 패스워드 해시 정보를 저장한다.
sudo는 일반 사용자가 필요한 명령에 한해 관리자 권한을 사용할 수 있도록 하는 기능이다.연습 과제
다음 문제에 답한다.
시스템보안의 기초를 확인하기 위해 가능하면 직접 문장으로 작성한다.
A. 단답형
1. 시스템보안이란 무엇인가?
2. 계정 관리가 중요한 이유는 무엇인가?
3. Linux/Unix의 최고 관리자 계정은 무엇인가?
4. Windows의 기본 관리자 계정은 무엇인가?
5. Guest 계정을 비활성화해야 하는 이유는 무엇인가?
6. 패스워드 정책에 포함되어야 할 항목 4가지를 쓰시오.
7. 계정 잠금 정책의 목적은 무엇인가?
8. 최소권한 원칙이란 무엇인가?
9. 공유 계정 사용이 위험한 이유는 무엇인가?
10. Linux에서 /etc/passwd와 /etc/shadow의 차이는 무엇인가?
11. UID 0의 의미는 무엇인가?
12. sudo를 사용하는 이유는 무엇인가?B. 실기형 답안 작성
다음 3문제는 2~3문장으로 작성한다.
13. 계정 관리가 보안상 중요한 이유를 설명하시오.
14. 최소권한 원칙의 의미와 보안 효과를 설명하시오.
15. 패스워드 보안 정책에 포함되어야 할 항목과 그 효과를 설명하시오.보강 사례: 퇴사자·휴면·과권한 계정 통제
| 위험 계정 유형 | 주요 위험 | 관리 방안 |
|---|---|---|
| 퇴사자 계정 | 퇴사 후에도 내부 시스템 접근이 가능해 정보 유출이나 악성 행위에 악용될 수 있다. | 인사 발령과 계정 회수 절차를 연동하고, 퇴사일 이전 권한 회수와 계정 비활성화를 완료한다. |
| 휴면 계정 | 장기간 사용되지 않아 비밀번호 관리와 이상 징후 탐지가 느슨해진다. | 일정 기간 미사용 계정은 잠금 또는 삭제하고, 재사용 시 승인 절차를 거친다. |
| 과도한 권한 계정 | 일반 업무 계정이 관리자 권한을 가져 침해 시 피해 범위가 커진다. | 직무별 권한 기준을 정의하고 정기 권한 검토와 최소권한 원칙을 적용한다. |
| 공용 계정 | 실제 사용자를 식별하기 어려워 책임추적성이 떨어진다. | 개인별 계정을 원칙으로 하고, 예외 사용 시 승인·사용자 기록·비밀번호 변경 이력을 남긴다. |
실기 답안에서는 계정 식별 → 권한 적정성 → 사용 여부 → 로그와 책임추적성 → 정기 검토 순서로 쓰면 안정적이다.
연습 과제 정답 및 해설
단답형 핵심 키워드: 운영체제 보안은 자원 보호, 계정은 사용자 식별자, root/Administrator는 최고 권한 계정, Guest는 비활성화 권장, 패스워드 정책은 길이·복잡도·재사용 제한·실패횟수 제한을 포함한다. /etc/passwd는 계정 정보, /etc/shadow는 패스워드 해시 정보를 저장하며 UID 0은 root 권한을 의미한다.
실기형 채점 기준: 계정 관리 답안은 식별, 인증, 권한 통제, 책임추적성, 불필요 계정 제거를 포함해야 한다. 최소권한 답안은 업무상 필요한 권한만 부여한다는 정의와 권한 오남용·피해 확산 방지 효과를 써야 한다. 패스워드 정책 답안은 길이, 복잡도, 주기, 재사용 제한, 실패 잠금, 해시 저장 중 4개 이상을 포함하면 충분하다.
감점 포인트: 퇴사자 계정 삭제, 휴면 계정 잠금, 과권한 회수, 공용 계정 제한을 구체 조치 없이 “관리한다”로만 쓰면 감점한다.