정보시스템과 운영체제
단말과 서버의 역할, 운영체제의 자원 관리·접근통제를 파일 접근 예시로 연결합니다.
1. 정보시스템은 ‘기기 한 대’보다 넓은 개념이다
정보시스템은 정보를 입력·처리·저장·전달하기 위해 함께 동작하는 하드웨어와 소프트웨어, 데이터, 계정과 운영 환경을 포함한다. 시스템 보안에서는 특히 단말 시스템과 서버 시스템이 실제로 어떤 역할을 하고, 그 역할을 수행하기 위해 어떤 자원과 권한을 사용하는지가 중요하다.
단말 시스템
단말은 사용자가 직접 조작하거나 현장의 기능을 수행하는 쪽에 가깝다.
| 유형 | 대표 역할 | 시스템 보안에서 먼저 보는 것 |
|---|---|---|
| PC | 문서 작성, 업무 프로그램 실행, 웹 사용 | 사용자 계정, 설치 프로그램, 파일 권한, 악성 코드 실행 여부 |
| 모바일 단말 | 앱 실행, 이동 중 데이터 처리, 인증 수단 사용 | 화면 잠금, 앱 권한, 저장 데이터, OS 업데이트 |
| 프린터·복합기 | 출력·스캔·저장·네트워크 서비스 | 관리자 계정, 저장된 문서, 불필요 서비스, 펌웨어 |
| IoT/IIoT 장치 | 센서·제어·자동화 | 기본 계정, 펌웨어, 관리 인터페이스, 장치가 가진 최소 권한 |
단말은 종류가 달라도 계정 또는 장치 신원, 실행되는 소프트웨어, 저장되는 정보, 접근 가능한 기능을 보호해야 한다는 점은 같다.
서버 시스템
서버는 다른 사용자나 시스템에 기능을 제공한다. 서버의 종류는 제품명이 아니라 제공하는 서비스의 역할로 먼저 구분한다.
| 서버·서비스 | 핵심 역할 | 보호가 깨졌을 때 대표적인 영향 |
|---|---|---|
| DB 서버 | 구조화된 데이터를 저장·조회·변경 | 데이터 유출·변조, 과도한 DB 권한 악용 |
| DNS 서버 | 이름과 주소의 대응 정보를 제공 | 잘못된 주소로 유도, 서비스 접근 장애 |
| E-mail 서버 | 메일 송수신·보관 | 계정 탈취, 메일 유출, 악성 메일 중계 |
| Web/WAS | 웹 요청을 받고 웹·애플리케이션 기능 제공 | 서비스 계정 악용, 파일 변조, 서버 권한 확대 |
| 파일 서버 | 여러 사용자의 파일 저장·공유 | 공유 범위 과다, 민감 파일 유출·삭제 |
| Cloud 기반 시스템 | 가상화·관리 계층을 통해 컴퓨팅 자원을 제공 | 계정·권한·설정 오류가 여러 자원으로 확산 |
| 보안 시스템 | 탐지·차단·정책 집행·기록 | 정책 우회, 탐지 공백, 관리 계정 악용 |
서버를 공부할 때는 “이 제품의 메뉴가 무엇인가”보다 무슨 서비스를 제공하는지 → 어떤 계정으로 실행되는지 → 어떤 파일과 데이터에 접근하는지 → 어떤 로그가 남는지의 순서로 보는 것이 유용하다.
2. 운영체제는 자원 관리자이면서 보안 통제 지점이다
운영체제(OS, Operating System)는 CPU, 메모리, 저장장치, 장치 같은 하드웨어 자원을 여러 프로그램이 사용할 수 있게 관리한다. 동시에 한 프로그램이나 사용자가 다른 대상의 자원을 마음대로 사용하지 못하도록 경계를 만들고 접근을 중재하는 역할도 한다.
일반 응용 프로그램이 정상적인 방식으로 파일을 열거나 메모리를 할당하고 장치를 사용하려면 운영체제가 제공하는 기능을 요청한다. 운영체제는 요청을 처리할 때 다음과 같은 정보를 함께 고려할 수 있다.
- 누가 요청했는가 - 사용자 계정, 서비스 계정, 프로세스가 가진 보안 주체 정보
- 무엇을 요청했는가 - 파일, 디렉터리, 프로세스, 메모리, 장치, 서비스 같은 객체
- 어떤 작업인가 - 읽기, 쓰기, 실행, 변경, 삭제, 관리 작업
- 허용된 권한인가 - 소유권, 그룹, ACL 같은 접근 규칙과 현재 유효 권한
- 결과를 기록해야 하는가 - 감사 정책이나 로깅 설정에 따라 성공·실패 흔적을 남길지 여부
이 구조가 중요한 이유는 공격이나 사고가 대부분 다음 중 하나와 연결되기 때문이다.
- 신원을 속이거나 탈취한다.
- 필요 이상으로 큰 권한을 가진 계정·프로세스를 악용한다.
- 접근 규칙이 잘못 설정된 파일이나 서비스를 이용한다.
- 메모리·프로세스 경계를 깨려고 한다.
- 패치되지 않은 취약점을 이용해 원래 허용되지 않은 동작을 만든다.
- 사건이 발생했지만 로그가 없거나 훼손되어 원인을 추적하기 어렵게 만든다.
즉 시스템 보안은 “백신을 설치하는 것”처럼 하나의 제품으로 끝나는 작업이 아니라, 운영체제가 관리하는 자원과 권한의 관계를 안전하게 유지하는 작업이다.
3. 하나의 파일 읽기 요청으로 보는 보안 판정
다음은 Linux 계열 서버를 가정한 학습용 예시다. 실제 배포판과 서비스 설정에 따라 계정명과 정책은 달라질 수 있다.
웹 서버 프로세스가 websvc라는 제한된 서비스 계정으로 실행되고 있다고 하자. 이 프로세스는 웹 콘텐츠가 있는 /srv/site/index.html은 읽어야 하지만, 시스템의 민감한 인증 정보 파일은 읽을 이유가 없다.
정상 흐름은 다음과 같다.
- 웹 서버 프로세스가 파일 읽기를 요청한다.
- 운영체제는 그 프로세스가 가진 유효한 사용자·그룹 정보를 확인한다.
- 대상 파일의 소유권과 접근 규칙을 확인한다.
- 읽기 권한이 있으면 요청을 허용하고, 없으면 거부한다.
- 감사 정책에 해당하면 성공 또는 실패 사실이 로그에 남을 수 있다.
이 예시에서 웹 서버 프로그램 자체가 정상 프로그램이라고 해도, websvc가 불필요하게 강한 권한을 가지고 있다면 결과는 달라진다. 반대로 서비스가 취약하더라도 운영체제 수준에서 권한이 제한되어 있으면 공격 이후의 피해 범위를 줄이는 데 도움이 된다.
이것이 최소 권한을 시스템 보안에서 반복해서 강조하는 이유다.
4. Windows와 Linux가 달라도 공통으로 보는 질문
운영체제마다 명칭과 구현은 다르다. 서로 다른 환경의 용어를 억지로 같은 것으로 취급하면 오히려 오류가 생긴다. 다만 시험에서 보안 상황을 판단할 때 던지는 질문은 비슷하다.
| 공통 질문 | Linux/Unix 계열의 대표 개념 | Windows의 대표 개념 |
|---|---|---|
| 사용자를 어떻게 식별하는가? | UID, GID, 계정 정보 | SID, 사용자·그룹, 액세스 토큰 |
| 파일 접근을 무엇으로 판단하는가? | 소유자·그룹·기타 권한, ACL | NTFS ACL 등 |
| 백그라운드 기능은 무엇으로 실행되는가? | daemon/service와 해당 프로세스 계정 | Windows Service와 서비스 계정 |
| 사건 흔적은 어디에 남는가? | syslog/journal/audit 계열 기록 등 | Windows Event Log와 감사 정책 |
이 표의 목적은 명령어를 암기하는 것이 아니다. 환경이 달라질 때도 신원 → 권한 → 객체 → 실행 → 기록이라는 보안 질문을 유지하는 데 있다. 각 운영체제의 실제 규칙은 이후 이론에서 따로 다룬다.
개념 확인 문제
문제를 누르면 바로 아래에서 정답과 해설을 확인할 수 있습니다.
01정상 웹 서버 프로그램이면 모든 시스템 파일을 읽어도 되는가?
아니다. 프로그램이 실행되는 서비스 계정의 권한과 대상 파일의 접근 규칙을 별도로 확인한다. 필요한 웹 파일만 읽도록 제한하면 침해 후 피해도 줄일 수 있다.
02로그인 성공과 파일 읽기 허용은 같은 판단인가?
로그인은 신원 확인인 인증이다. 파일 읽기는 해당 주체에게 그 객체의 읽기를 허용하는지 확인하는 인가다. 인증에 성공해도 인가에서 거부될 수 있다.