시스템 및 네트워크 보안
시스템 및 네트워크 보안은 암호화 및 엔지니어링 기술을 적용하여 컴퓨터, 네트워크, 그리고 그 사이를 흐르는 데이터를 도청, 변조, 사칭 및 무단 접근으로부터 보호합니다.
Definition
시스템 및 네트워크 보안은 암호화, 접근 제어, 그리고 보안 엔지니어링 관행을 결합하여 컴퓨터 시스템과 이를 연결하는 네트워크의 기밀성, 무결성, 가용성을 보호하는 학문입니다.
Scope
이 분야는 배포된 인프라의 실제 방어를 다룹니다: 네트워크 통신 보안, 사용자 및 기기 인증, 접근 제어, 공개 키 인프라를 통한 신뢰 분배, 그리고 TLS와 같은 보안 채널 구축. 이는 암호화 기본 요소가 실제 프로토콜로 어떻게 조립되는지, 그리고 보안 원칙(최소 권한, 다층 방어)이 시스템 설계를 어떻게 안내하는지를 다룹니다. 이 분야는 기본 암호화 기본 요소의 설계와 소프트웨어 수준 취약점 분석은 제외하며, 이는 관련 분야에서 다루어집니다.
Sub-topics
Core questions
- 신뢰할 수 없는 네트워크를 통과하는 데이터는 어떻게 보호됩니까?
- 사용자와 기기는 어떻게 신뢰성 있게 인증되며, 이들의 접근은 어떻게 제어됩니까?
- 공개 키의 신뢰는 대규모로 어떻게 확립되고 관리됩니까?
- 어떤 보안 원칙이 신뢰할 수 있는 시스템 설계를 안내합니까?
- 기밀성, 무결성, 가용성은 사용성 및 성능과 어떻게 균형을 이룹니까?
Key concepts
- 기밀성, 무결성, 가용성
- 최소 권한
- 다층 방어
- 인증 및 권한 부여
- 접근 제어
- 공개 키 인프라
- 보안 채널 (TLS)
- 위협 모델링
- 네트워크 경계 및 분할
Key theories
- Saltzer와 Schroeder의 설계 원칙
- 보안 시스템 설계를 위한 고전적인 원칙들 — 최소 권한, 안전 실패 기본값, 메커니즘의 경제성, 완전한 중재, 개방형 설계, 권한 분리 —은 여전히 보안 엔지니어링의 기초로 남아 있습니다.
- CIA 삼원칙과 다층 방어
- 보안 목표는 기밀성, 무결성, 가용성으로 구성됩니다. 견고한 시스템은 여러 독립적인 제어(다층 방어)를 계층화하여 하나의 메커니즘 실패가 전체를 손상시키지 않도록 합니다.
Clinical relevance
시스템 및 네트워크 보안은 인터넷을 사용할 수 있게 유지하는 핵심 요소입니다. TLS는 웹 및 API 트래픽을 보호하고, VPN 및 IPsec은 원격 접근을 안전하게 하며, 인증 기관과 PKI는 낯선 기기들이 서로를 신뢰할 수 있도록 합니다. 또한 접근 제어 시스템은 클라우드 콘솔부터 병원 기록에 이르기까지 모든 것을 보호합니다. 이 분야의 실패는 보안 뉴스에서 흔히 볼 수 있는 데이터 유출, 랜섬웨어 사건, 공급망 침해를 야기합니다.
Evidence & guidelines
실무는 프레임워크와 표준에 의해 형성됩니다: NIST 사이버 보안 프레임워크 및 SP 800-시리즈, ISO/IEC 27001, OWASP 및 MITRE ATT&CK 지식 기반, 그리고 프로토콜 RFC. 제로 트러스트 아키텍처(NIST SP 800-207)는 경계선 기반 모델을 점차 대체하고 있으며, 규제 체제(GDPR, HIPAA, PCI-DSS)는 특정 부문에 보안 요구 사항을 부과합니다.
History
네트워크 보안은 인터넷 자체와 함께 성장했습니다. 모리스 웜(1988)은 시스템적 취약점을 보여주었고, 방화벽과 침입 탐지는 1990년대에 등장했으며, SSL/TLS(1995년부터)는 웹을 안전하게 만들었습니다. Saltzer와 Schroeder의 1975년 원칙은 여전히 이 분야의 기반이 됩니다. 클라우드 및 모바일 컴퓨팅으로 경계선이 사라지면서, 이 분야는 신원 중심의 제로 트러스트 모델로 전환되었습니다.
Key figures
- Roger Needham
- Ross Anderson
- Jerome Saltzer
- Michael Schroeder
- Whitfield Diffie
Related topics
Seminal works
- anderson2020
- saltzer1975
- stallings2017
Frequently asked questions
- 인증(authentication)과 권한 부여(authorization)의 차이점은 무엇입니까?
- 인증은 당사자가 누구인지 확인하는 과정입니다(예: 비밀번호 또는 키를 통해 신원 확인). 권한 부여는 인증된 당사자가 무엇을 할 수 있는지 결정하는 과정입니다(즉, 권한). 시스템은 신원을 확인한 다음 접근 권한을 강제하는 두 가지를 모두 수행해야 합니다.
- 강력한 암호화만으로 시스템을 안전하게 만들 수 있습니까?
- 아닙니다. 암호화는 필수적이지만 충분하지 않습니다. 대부분의 실제 침해는 암호화 자체를 깨뜨리기보다는 약한 비밀번호, 잘못된 구성, 패치되지 않은 소프트웨어, 피싱 또는 부실한 키 관리를 악용합니다. 이것이 바로 보안 엔지니어링 및 운영이 알고리즘만큼 중요한 이유입니다.