ComputerScience의 또하나의 분야.
보안에는 여러가지 카테고리가 있다. 기본적으로 사용자는 인증을 받아야 하며(authentication), 리소스에 접근하기 위해서는 권한설정이 되어 있어야 하고(access control), 컴퓨터 시스템은 리소스를 감시하고, 로그를 기록해야 한다. 그리고 저장된 정보는 언제나 무결성이 유지되어야 하며, 아무나 볼수 없도록 암호화(DataEncryption)되어 있어야 한다. 또한 프라이버시가 지켜져야 하며, 이를 위해 DigitalSignature등이 사용된다.
보안수준이 높아질수록 편리성은 줄어든다.
보안원칙
- 기밀성(confidentiality) : 컴퓨터시스템 자원은 단지 인가된 사용자들에 의해서만 접근된다.
- 무결성(integrity) : 시스템 자원은 오직 인가된 사용자들에 의해 인가된 방식으로만 변경될 수 있다.
- 가용성(availability) : 인가된 사용자들은 빠른 속도로 자산에 접근할 수 있다.
보안카테고리
- Authentication : 사용자와 컴퓨터 또는 어플리케이션이, 다른 사용자, 컴퓨터, 애플리케이션이 누구이고 무엇을 하려는지를 확인하는 프로세스.
- Access control : 사용자인증이 되면, 접근 레벨을 먼저 점검해서 해당 리소스에 접근권한이 있는 이에게만 접근을 허용한다.
- Logging and auditting : 리소스에 접근하려는 시도와 리소스에 수행한 오퍼레이션 정보를 모아 로그를 남기고 감사(auditing)할 수 있어야 한다.
- Nonrepudiation : 어떤 액션이 일어났다는 것을 증명하기 위한 메커니즘을 제공.
관련기술
알려진 보안 구멍들
최근 FireWall등으로 80포트이외의 접근이 차단되면서 WebApplication자체를 공격하는 사례가 많아지고 있다. --> See WebApplicationSecurity
관련자료