* CIA
- 보안의 중요하고 가장 기본적인 요구사항
ⓐ C(Confidentiality/기밀성)
- 허가되지 않은 사람은 정보를 읽지 못한다.
- 권한이 없는 사람은 정보를 읽지 못한다.
- Don't read information, if you are not authorized.
※ cf) Privacy : Privacy도 기밀성과 같은 이야기지만, 요즘은 개인정보보호의 개념에 Privacy용어를 사용한다.
Secrecy ≒ Confidentiality
ⓑ I(Integrity/무결성)
- 허가되지 않는 사람은 정보를 변경할 수 없다.
- 허가가 되어 정보를 읽을 수 있지만, 내용을 수정할 수는 없다.
ⓒ A(Availability/가용성)
- 필요할 때 언제든지 사용이 가능해야 한다.
- 언제든지 사용 가능한 상태로 대기 하고 있어야한다.
※ D-DoS공격은 가용성을 낮추기 위해 서버에 부하를 주는 공격 행위이다.
* 기타 보안 사항
- CIA는 보안에서 가장 중요한 사항이자 지켜야 할 사항이다.
- CIA 이 외에도 현대 보안에서 중요한 사항들은 많다.
- Authentication과 Authorization을 이용하여 Access control을 한다.
ⓐ Authentication/사용자 인증
- 현재 접속자가 내가 아는 접속자인지 알아야 한다.
- Standalone System에서는 쉽지만, Network를 사용하면 어렵다.
- Security protocol이 중요한 역할을 한다.
ⓑ Authorization/권한
- 인증된 사용자의 행동은 제한 되어있다.
ⓒ Software
- Software는 거대하며, 결함을 갖고 있다.
- 몇몇 software 결함은 보안의 결함과 직결되있다.
- 보안 Software또한, 결함으로 인해 보안이 깨질 위험이 있다.
- 몇몇 Software는 의도적으로 보안을 파괴하게 만들어져있다.(Malware)
(ex. viruses)
- Malware의 동작법을 파악한 후 해결책을 찾아야 한다.
- 소프트웨어의 다향성에 의해 정형화가 불가능하기 때문에 미리 예상하고, 방지 할 수 있는 방법이 거의 없다.
ⓓ OS
- OS에서의 보안은 강제성을 띈다.(반드시 해야한다)
- OS는 거대한 Software이기 때문에 많은 결함을 가지고 있다.
* 보안 생명 주기
- 보안 정책 : 어떤 것을 보호할 것인가?
- 보안 메커니즘 : 어떠한 방법으로 보호할 것인가?
- 보안 검증 : 현재 만들어진 보안은 확실한 것인가?
* 보안을 잘 공부하기 위해서는...
- 공격자의 입장으로 생각해보자.