일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 자바
- GC
- 스프링
- redis
- 쿠버네티스
- Stack
- mysql
- 자바 ORM 표준 JPA 프로그래밍
- thread
- K8s
- list
- 토비의 스프링
- JPA
- Kotlin
- spring
- IntellJ
- Real MySQL
- Collection
- jvm
- 보조스트림
- SpringBoot
- Java
- MSA
- 이스티오
- OS
- 백준
- 스트림
- 토비의 스프링 정리
- Stream
- gradle
- Today
- Total
인생을 코딩하다.
[Network] 서비스의 보안을 위해 어떻게 CIA를 지킬 수 있을까? 본문
안녕하세요. 오늘은 정보 보안의 3요소인 CIA와 그에 따른 문제점에 관해 글을 작성해 보도록 하겠습니다.
CIA란 무엇일까요?
기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)의 첫 문자를 따서 조합한 용어로써 보안의 기본 항목이며 기밀 정보의보안 위험성을 측정하고 적절한 보안 정책을 수립하는 기준이 되는 보안의 기본 요소 입니다.
즉, 정보의 비밀을 유지하고(기밀성), 비인가된 변경으로 부터 정보를 보호하며(무결성), 필요할 때 언제든지 사용할 수 있도록(가용성) 하는 요건을 가지는 것을 공통적으로 제시하는 것 입니다.
언제 CIA가 위배 될까요?
1. A에서 B로 문서를 보낸다고 가정해보겠습니다. 이의 경우 중간에 있는 C가 문서를 탈취할 수도 있습니다. 이 경우에 문서의 기밀성은 깨지게 됩니다.
2. 기밀성이 깨짐과 동시에 C가 문서를 위조해서 B에게 전달하면 무결성도 깨지게 됩니다.
3. 문서가 위조됨에 따라 B는 원하는 문서에 제대로 접근하지 못했기 때문에 가용성마저 깨지게 됩니다.
위의 경우를 어떻게 해결할까요?
A가 문서를 금고에 넣고 열쇠로 잠궈버립니다. 이러면 문서의 기밀성은 유지가 되겠죠? 이러면 당연히 가용성도 확보할 수 있습니다.
그래서, 금고를 B로 보낸다고 가정해보겠습니다. 하지만 이때, 금고 자체를 C가 탈취하게 되면 또 문제가 생깁니다. 이 경우 금고를 운반하고 있는 어떤 물체(트럭이라던지 비행기라던지..)의 벽에 딱 달라붙어야만 CIA를 지킬 수 있습니다.
정말 해결이 될까요?
위처럼 딱 달라붙게해서 CIA를 모두 지켜 보낸다고 해보겠습니다. 그래서 B가 문서를 받았지만, 문서를 여는 열쇠가 없다면 어떻게 될까요?
그럼 A는 B에게 열쇠를 보내야 하는데, 보내는 경우 C에게 열쇠를 또 탈취당 할 수도 있습니다. 결국 해결한다고 한들, 열쇠 전달에 관해 큰 문제가 생기게 됩니다.
또한 한 가지의 문제가 더 있습니다. B도 열쇠를 들고 있었어서 금고를 전달받아 문서를 보았다고 해보겠습니다. 하지만 A가 보냈다는걸 어떻게 확신할 수 있을까요? 문서에 A의 이름과 날짜가 적혀있다고 한들, A가 보낼 수 있다고 확신할 수 있을까요?
이 경우 A는 B에게 잘 받았다는 응답을 받아야합니다. 하지만, 따라서 A가 B에게 응답을 받았다고 가정해보겠습니다. 이 경우도 사실, A입장에서는 B가 응답을 보낸건지 확신할 수가 없습니다. 열쇠로 인해 C는 금고를 열수 없어 문서를 위조할 수는 없지만, 새로운 금고와 문서를 만들어서 A에게 보낼 수도 있기 때문에 누구로부터 문서가 왔는지는 장담할 수가 없습니다.
결국, 어떤 방법을 적용하더라도 CIA를 제대로 지키가 어렵게 됩니다.
그럼 도대체 어떻게 해결해야 하나요?
위와 같은 문제점들을 해결하기 위해 RSA 암호화라는 것이 등장하였습니다. 그럼 다음 글에서는 RSA 암호화에 관해 알아볼까요?
'Network' 카테고리의 다른 글
[Network] 서비스의 보안을 위해 어떻게 CIA를 지킬 수 있을까?(2) - RSA로 해결 (0) | 2022.02.20 |
---|---|
[Network] Apache MPM vs Nginx (0) | 2021.02.17 |
[Spring] Proxy. Forward Proxy, Reverse Proxy, Load Balancer (0) | 2021.02.13 |
[Network] Web Server vs WAS (0) | 2021.02.09 |