반응형

작성일: 2024년 5월 27일

 

 

참고:  Zero Trust 관련 문서 추천

Zero Trust Architecture 자료를 찾는 시작점을 NIST NCCoE(National Cybersecurity Centrer of Excellence) 웹 사이트로 하는 것이 좋다.

   NIST NCCoE / Implementing a Zero Trust Architecture: 웹 사이트 링크

 

아래 글이 Zero Trust 전반적인 내용에 대해 스토리를 쉽게 풀어내고 있다.  (가볍게 읽을 수 있는 글)

https://www.boannews.com/media/view.asp?idx=126189

 

참고: 3GPP의 Zero Trust 관련 표준화 작업

3GPP 문서 목록

  3GPP TR 33.794 (2024-04) Study on enablers for zero trust security

  3GPP TR 33.894 (2023-09) Study on applicability of the zero trust security principles in mobile networks

 

2024년 4월의 3GPP 문서에서 Use Case를 정리하는 수준으로 진행되고 있음.

예를 들어,

  - NF간 연동 메시지에서 Malformed message가 있는지 검사

  - NF간 Massive number of SBI message가 있는지 검사

       * 500 에러가 다량으로 발생하는지 검사

       * 평소보다 많은 API request 통계가 발견되는지 확인

3GPP 문서에 위와 같은 Use Case가 열거되어 있다.

단, 아직도 Use Case에 대해서 논의 중인지 Sub title만 있고 내용이 없는 것이 많다.

 

참고:  SDP, SPA 관련 문서

- 소프트웨어 정의 경계의 단일 패킷 인증 및 네트워크 접근통제 보안관리 개선 (정진교 이상구 김용민):  PDF 문서 링크

- Software-Defined Perimeter (SDP) 규격서 v2:  PDF 문서 링크



 

 


Core Principles (핵심 원칙)

  • Verify explicity
  • Implement least privilege
  • Limit the "blast radius" (Assume breach)
  • Automate context collection and response

 

관련 사업 동향

Date Description
2023년 7월 과기정통부, KISA -> Zero Trust Guide Line 1.0 & 하반기 실증 시범 사업 추진
---
Architecture는 제어 영역과 데이터 영역으로 구분.
  - 접속 요구 제어를 위한 정책결정지점(PDP)과 정책시행지점(PEP)이 있다.
  - PDP는 정책엔진(PE)과 정책관리자(PA)로 나뉘며,
     PE는 신뢰도를 판단해 접속 허가를 최종 결정하고 PA는 PEP에 명령해 정책을 실행한다.
  - PDP는 PEP와 다양한 보안 솔루션(PIPs, 예를 들면 SIEM, C-TAS, IAM, LMS 등)에서
     생성한 보안 정보를 바탕으로 한 ‘신뢰도 평가’를 통해 자원 접근 여부를 결정하고,
     접근 허가 후에는 양방향 보안 통신경로를 생성한다
2024년 상반기 과기정통부, KISA -> Zero Trust Guide Line 2.0 

 

 

표준 동향

Date Document Name Title
2020. 08. 11. NIST Special Publication 800-207 Zero Trust Architecture
2023. 07. 19. NIST Special Publication 1800-35B, C Implementing a Zero Trust Architecture
2023. 08. 22 NIST Special Publication 1800-35D Implementing a Zero Trust Architecture
 (Functional Demonstrations)
2023. 09. 12. NIST Special Publication 1800-35E Implementing a Zero Trust Architecture
 (Risk and Compliance Management)

 

 

 

Zero Trust 도입에 대한 걸림돌, 이슈 등

  • 복잡한 개념으로 소비자(실제 보안 솔루션 사용자)가 어려워한다.
  • Zero Trust를 도입하려면 높은 비용을 지불해야 한다.
  • Network traffic이 많은 사무 환경이라면, Zero Trust 도입으로 인해 Network traffic 처리 성능이 떨어지게 된다.
    (아마 보안 제품을 파는 회사는 성능 저하가 발생하지 않는다고 주장할듯.)
  • 구형 보안 제품과 연동 문제(기능의 충돌, 정책의 충돌 등)

아래 설문 결과를 보더라도 Zero Trust 기술 자체에 대한 이슈보다는 "기술 도입 시 사용하게 될 비용"을 걱정한다.

Zero Trust 제품을 복잡하게 만들다보니 비용이 높아진 것이니까, 당분간은 비용 이슈가 해결될 여지는 없어 보인다.

(기술의 복잡성과 비용 이슈가 있는 SDN 시장과 비슷한 꼴...)

Zero Trust 설문 결과 (출처: 보안뉴스)

 

개인 생각:
  정부가 돈을 뿌려서 Zero Trust 도입을 장려하던지, 보안 제품 판매 업체가 가격을 대폭 낮추던지 해야 하는데  둘다 가능성은 낮을 듯.
  결국, 높은 비용을 치루더라도 꼭 지키고 싶은 데이터가 있는 소비자(회사)만 Zero Trust를 도입하지 않을까 싶다
  (예를 들어, 삼성전자, 제1금융권, NHN, Kakao 같은 회사들 ?)

 

 

Zero Trust 제품을 다루는 회사

  • 모니터랩 (DPI 기능을 이용하여 App 탐지 및 제어 -> URL 필터링, 악성 사이트 차단, 파일 다운로드 차단)
  • 소프트캠프 (Remote Browser Isolation)
  • Symantec (Cloud 관련 보안)
  • 엔키 (Zero Trust Total Servier, 공격자 관점에서 보안 수준을 측정)
  • 지니언스
  • 파이오링크
  • 프라이빗테크놀로지
  • 휴네시온

 

 


 

 

2024년 5월 13일, 새롭게 추가한 내용

 

Zero Trust 보안 정책의 어두운 면 (문제점, 단점, 등등)

##
## 참고: 아래 글은 DATANET의 김선애 기자가 작성한 글의 일부를 발췌한 것이다.
## 구구절절 다 맞는 말이라서 인용해본다.
##
... 중간 생략 ...
제로 트러스트로 인해 보안위협이 높아진다는 주장도 있다.
제로 트러스트를 구현한다면서 사용자에게 불편한 강력인증을 반복해서 요구하거나,
비정상 행위 감지 알람을 반복해서 띄우면서 업무를 불편하게 할 경우,
직원은 불만을 갖고 보안을 우회할 방법을 찾는다.
혹은 퇴사를 고려하게 될 수 있으며
... 중간 생략 ...
모든 보안 문제를 완벽하게 해결하는 것은 아니며,
제로 트러스트 원칙이 적용되지 않는 분야가 있는 것도 인정해야 한다.
제로 트러스트는 턴키 방식으로 일시에 적용할 수 있는 것도 아니며,
모든 조직에 해당하는 단일 모델이 있는것도 아니다.
제로 트러스트를 도입하는 조직이 100곳이라면 100개의 제로 트러스트 모델이 생긴다.
또한 단일 기술로 구현할 수 없으므로 여러 기술을 자유롭게 통합할 수 있는
개방형 플랫폼과 에코 시스템을 만드는 것도 필수다.
... 중간 생략 ...
출처 : 데이터넷(https://www.datanet.co.kr)

 

 

 

 

 

 

 

 

 

 

 


 

반응형

  


 

공인된 CA가 아닌, 내가 CA가 되서 openssl 명령을 이용하여 Private Key를 Signing하고 Certificate을 생성하는 절차를 알아보자.

(2~3년에 한번씩 하는 작업이라서 메모하지 않으면 잊는다. 잘 메모해야지.. ㅠㅠ)

 

아래 예시 순서대로 따라서 실행하면 된다.

 

 

CA Certificate, Server Certificate 만들기

######################################################################
## 1) Generate a Certificate Authority Certificate (CA Certificate)
######################################################################
##
## 1-a) Generate a CA certificate private key
##
$ openssl genrsa -out ca.key 4096
##
## 1-b) Generate the CA certificate
##
$ openssl req -x509 -new -nodes -sha512 -days 3650 \
-subj "/C=CN/ST=Seoul/L=Seoul/O=AndrewInc/OU=Personal/CN=sejong.cluster" \
-key ca.key \
-out ca.crt
######################################################################
## 2) Generate a Server Certificate
######################################################################
##
## 2-a) Generate a private key
##
$ openssl genrsa -out sejong.cluster.key 4096
##
## 2-b) Generate a certificate signing request (CSR).
##
$ openssl req -sha512 -new \
-subj "/C=CN/ST=Seoul/L=Seoul/O=AndrewInc/OU=Personal/CN=sejong.cluster" \
-key sejong.cluster.key \
-out sejong.cluster.csr
##
## 2-c) Generate an x509 v3 extension file.
##
$ cat << EOF > v3.ext
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1=sejong.cluster
DNS.2=sejong
DNS.3=registry
DNS.4=registry.sejong.cluster
DNS.5=10.1.4.51
DNS.6=registry.andrewinc.co.kr
EOF
$
##
## 2-d) Use the v3.ext file to generate a certificate for your server host.
##
$ openssl x509 -req -sha512 -days 3650 \
-extfile v3.ext \
-CA ca.crt -CAkey ca.key -CAcreateserial \
-in sejong.cluster.csr \
-out sejong.cluster.crt
######################################################################
## 3) Merge the intermediate certificate with your own certificate
## to create a certificate bundle
######################################################################
## 참고로, 아래 명령은 Ubuntu에서만 가능한 명령이다.
$ cp sejong.cluster.crt /usr/local/share/ca-certificates/sejong.cluster.crt
$ update-ca-certificates
## CentOS, Red Hat(RHEL)을 사용한다면, 위 명령 대신 아래 명령을 수행해야 한다.
$ cp sejong.cluster.crt /etc/pki/ca-trust/source/anchors/sejong.cluster.crt
$ update-ca-trust

 

 

 

Server Certificate  내용 확인

$ openssl x509 -in /usr/local/share/ca-certificates/sejong.cluster.crt -noout -text
Certificate:
Data:
Version: 3 (0x2)
... 중간 생략 ...
Signature Algorithm: sha512WithRSAEncryption
Issuer: C = KR, ST = Seoul, L = Seoul, O = MyCompany OU = Personal, CN = sejong.cluster
Validity
Not Before: Dec 21 04:08:37 2022 GMT
Not After : Dec 18 04:08:37 2032 GMT
Subject: C = KR, ST = Seoul, L = Seoul, O = MyCompany, OU = Personal, CN = sejong.cluster
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (4096 bit)
Modulus:
00:bd:07:06:cb:ee:e9:0b:5a:51:bb:cc:a3:5c:a0:
... 중간 생략 ...
ad:18:05
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Authority Key Identifier:
... 중간 생략 ...
X509v3 Basic Constraints:
... 중간 생략 ...
X509v3 Key Usage:
Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Alternative Name:
DNS:sejong.cluster, DNS:sejong, DNS:registry, DNS:registry.sejong.cluster, DNS:10.1.4.51
X509v3 Subject Key Identifier:
... 중간 생략 ...
Signature Algorithm: sha512WithRSAEncryption
Signature Value:
82:b9:5d:81:e7:90:85:20:08:8a:da:bb:a7:fc:30:fb:62:bf:
... 중간 생략 ...
b4:64:b7:45:98:37:e8:f4
$

 


  

'Security' 카테고리의 다른 글

Zero Trust (개념, 관련 사업, 관련 표준 동향)  (0) 2024.05.27

+ Recent posts