개념
부품이 좋아도 시스템은 뚫린다
레슨 5에서 PLC·스위치·워크스테이션 같은 부품 의 보안 역량을 시험했다. 모든 부품이 FR별 SL-C 3을 받았다고 하자. 그 시스템은 SL 3인가?
그렇지 않을 수 있다. 부품을 연결하는 방식이 역량을 무력화할 수 있기 때문이다.
- 보안 역량이 높은 PLC가 사무망과 같은 평면 네트워크 에 붙어 있다
- 원격 유지보수용 VPN이 제어망 전체로 직접 연결된다
- 부품마다 계정 관리 기능이 있는데 공용 계정 하나 로 운영된다
- 로그 기능이 있는데 아무도 수집하지 않는다
모듈 10에서 단위 테스트를 모두 통과한 모듈이 통합에서 실패하는 것을 봤다. 보안에서도 같다. IEC 62443-3-3은 시스템 수준의 보안 요구사항 을 정하고, 그 앞에 있는 62443-3-2가 시스템을 어떻게 나누고 각 부분에 어떤 목표를 줄지 를 정한다. 이 레슨은 두 문서를 순서대로 읽는다.
3-2가 먼저 — 존과 컨듀잇, 그리고 목표 수준
시스템 전체에 하나의 보안 수준을 매기는 것은 비현실적이다. 안전 계장 시스템과 사무용 보고서 서버가 같은 수준일 이유가 없다. 그래서 62443은 시스템을 두 가지 단위로 나눈다.
존(zone) — 물리적·기능적으로 묶이고 공통 보안 요구를 갖는 자산의 모임 이다. 모든 IACS 구성품은 어느 한 존에 속해야 한다.
컨듀잇(conduit) — 둘 이상의 존 사이 통신 채널의 논리적 묶음 이다. 존과 존은 컨듀잇을 통해서만 통신한다.
┌──────────────────────┐
│ 존 A — 기업 IT │ SL-T 낮음
└──────────┬───────────┘
컨듀잇 C1 (방화벽·DMZ)
┌──────────┴───────────┐
│ 존 B — 운영 관리 │ 히스토리안, 엔지니어링 워크스테이션
└──────────┬───────────┘
컨듀잇 C2 (산업용 방화벽, 허용 목록)
┌──────────────────────┴──────────────────────┐
┌─────────┴─────────┐ ┌──────────┴─────────┐
│ 존 C — 기본 제어 │ │ 존 D — 안전 계장 │ SL-T 높음
│ PLC, HMI │─── 컨듀잇 C3 (단방향) ──▶│ SIS │
└───────────────────┘ └────────────────────┘
│
컨듀잇 C4 (원격 유지보수 — 점프 서버 경유, 세션 승인)
│
외부 협력사62443-3-2의 위험 평가는 이런 존·컨듀잇 모델을 만들고, 각 존과 컨듀잇에 목표 보안 수준(SL-T) 을 FR별 벡터로 할당한다. 이 결과물이 3-3 시험의 입력이다. SL-T가 없으면 3-3 시험은 판정 기준이 없다. 모듈 31 레슨 3에서 판정 기준 없는 측정은 성적서가 될 수 없다고 했던 것과 같은 구조다.
위 그림에서 몇 가지 설계 판단이 보인다. 안전 계장 시스템(SIS)은 별도 존으로 분리하고, 기본 제어 존에서 단방향 으로만 받는다. 외부 협력사의 원격 유지보수는 제어 존에 직접 붙지 않고 점프 서버와 세션 승인 을 거친다. 이런 판단 하나하나가 레슨 5에서 본 CCSC 2(보완 대책)의 실체가 된다.
3-3의 구조 — FR 7개, SR 51개, RE
3-3의 시스템 요구사항(System Requirement)은 레슨 5와 같은 FR 1~7 아래 51개 가
배치되어 있다. 번호는 SR FR번호.일련번호 이고, 4-2의 CR 번호와 대부분 대응한다.
| FR | SR 범위 | 대표 SR |
|---|---|---|
| FR 1 IAC | SR 1.1 ~ 1.13 | 1.1 사람 사용자 식별·인증, 1.3 계정 관리, 1.7 패스워드 강도, 1.13 신뢰할 수 없는 네트워크 경유 접근 |
| FR 2 UC | SR 2.1 ~ 2.12 | 2.1 권한 집행, 2.8 감사 대상 이벤트, 2.11 타임스탬프 |
| FR 3 SI | SR 3.1 ~ 3.9 | 3.1 통신 무결성, 3.2 악성코드 방어, 3.3 보안 기능 검증, 3.4 소프트웨어·정보 무결성 |
| FR 4 DC | SR 4.1 ~ 4.3 | 4.1 정보 기밀성, 4.3 암호 사용 |
| FR 5 RDF | SR 5.1 ~ 5.4 | 5.1 네트워크 분할, 5.2 존 경계 보호, 5.3 사람 대 사람 통신 제한, 5.4 애플리케이션 분할 |
| FR 6 TRE | SR 6.1 ~ 6.2 | 6.1 감사 로그 접근성, 6.2 지속적 모니터링 |
| FR 7 RA | SR 7.1 ~ 7.8 | 7.1 서비스 거부 방어, 7.3 백업, 7.4 복구·재구성, 7.6 네트워크·보안 설정, 7.8 구성품 목록 |
SR마다 요구사항 강화(RE) 가 붙어 수준을 만든다. 가장 자주 인용되는 SR 1.1로 보면 구조가 명확하다.
SR 1.1 사람 사용자의 식별과 인증
기본 모든 인터페이스에서 사람 사용자를 식별·인증 → SL 1 부터
RE 1 고유한 식별과 인증 (공용 계정 불가) → SL 2 부터
RE 2 신뢰할 수 없는 네트워크에서 다중 인증 → SL 3 부터
RE 3 모든 네트워크에서 다중 인증 → SL 4이 한 줄이 SL의 의미를 보여준다. SL 2로 올라가는 순간 공용 계정이 금지 되고, SL 3이면 원격 접근에 다중 인증, SL 4면 제어망 내부에서도 다중 인증이다. 앞 절에서 "부품마다 계정 기능이 있는데 공용 계정 하나로 운영"하는 시스템은 부품 역량과 무관하게 FR 1에서 SL 1 에 머문다. 부속서 B가 모든 SR과 RE를 SL 1~4에 이렇게 대응시켜 둔다. 목표 수준이 올라갈수록 구현해야 할 통제 수가 늘어나서, SL 2에서 SL 4로 가면 적용 통제가 크게 증가한다는 해설이 많다.
SL-T와 SL-C의 격차 — 보완 대책으로 메우는 판단
시스템 시험의 판정은 결국 존·컨듀잇별, FR별로 SL-T와 SL-C를 대조 하는 일이다.
존 C — 기본 제어
FR1 FR2 FR3 FR4 FR5 FR6 FR7
SL-T 2 2 2 1 3 2 2 ← 3-2 위험 평가 결과
SL-C 2 2 1 1 2 1 2 ← 구성품 역량 + 시스템 구성 시험
격차 · -1 · -1 -1 ·격차가 있는 칸마다 선택지는 셋이다.
- 구성을 바꿔 SL-C를 올린다 — 예: FR 3 격차는 부품 교체 없이 소프트웨어 무결성 검증 설정을 켜서 해소될 수 있다
- 보완 대책으로 메운다 — 예: FR 5 격차는 존 경계에 산업용 방화벽을 추가해 해소
- 잔여 위험으로 수용한다 — 자산 소유자가 근거와 함께 승인하고 문서화
두 번째 선택지를 쓸 때는 보완 대책 자체가 시험 대상 이 된다. 방화벽을 추가했다고 적는 것으로 끝나지 않고, 그 방화벽 규칙이 컨듀잇에 필요한 통신만 허용하는지 시험한다. 세 번째 선택지는 시험소가 판정하는 것이 아니다. 시험소는 격차를 드러내는 역할이고, 수용은 자산 소유자의 결정이다. 이 역할 경계를 성적서 문구에서 흐리면 모듈 32 레슨 6의 판정과 의견의 구분 을 어기게 된다.
시험 설계 — 존 경계에서 시작한다
시스템 시험의 우선순위는 대부분 FR 5(제한된 데이터 흐름) 에서 시작한다. 경계가 무너지면 존 안쪽의 다른 모든 통제가 더 강한 공격자를 상대해야 하기 때문이다.
| 시험 | 대상 SR | 방법 | 기대 |
|---|---|---|---|
| 컨듀잇 허용 목록 검증 | 5.1, 5.2 | 존·컨듀잇 모델의 허용 통신 표와 방화벽 규칙 대조, 경계 양쪽에서 비허용 트래픽 시도 | 모델에 없는 통신 전부 차단 |
| 기본 거부 확인 | 5.2 | 규칙에 없는 포트·프로토콜로 경계 통과 시도 | 차단 + 로그 |
| 단방향 컨듀잇 검증 | 5.1 | 역방향 통신 시도(존 D → 존 C 세션 수립) | 수립 불가 |
| 원격 접근 경로 | 1.13, 1.1 RE 2 | 외부에서 점프 서버를 거치지 않는 직접 경로 탐색, 다중 인증 우회 시도 | 경로 없음, 우회 불가 |
| 경계 통과 이벤트 기록 | 2.8, 6.2 | 차단 이벤트가 수집·보존·검토 가능한 곳에 도달하는가 | 로그 도달, 타임스탬프 동기 |
| 경계 장비 장애 시 동작 | 7.1, 5.2 | 경계 장비 과부하·재부팅 중 통신 상태 | 열린 상태로 실패하지 않음 |
마지막 줄이 산업제어답다. 경계 장비가 장애 시 열린 상태로 실패(fail-open) 하면 보안이 무너지고, 닫힌 상태로 실패(fail-closed) 하면 제어 통신이 끊겨 공정이 멈출 수 있다. 어느 쪽이 맞는지는 레슨 5의 CCSC 1(필수 기능 지원)과 위험 평가가 정한다. 시험은 설계된 실패 방향대로 동작하는지 를 본다.
시험 환경 구성도 판정의 일부다. 시스템 시험은 실제 공장이 아니라 대표 구성을 재현한 시험대 에서 하는 경우가 많다. 그렇다면 성적서에는 재현 범위(어떤 존·컨듀잇을 실제 장비로, 어떤 부분을 시뮬레이터로 구성했는지)가 반드시 들어가야 한다. 모듈 31 레슨 2의 환경 기재 원칙이 여기서 판정의 유효 범위 를 정한다.
SL-A는 시험소 밖에 있다
레슨 5에서 SL-A(달성 수준)는 운영이 만든다고 했다. 시스템 시험대에서 SL-C 벡터가 SL-T를 충족해도, 현장에서 방화벽 규칙이 임시로 열린 채 방치되거나, 공용 계정이 다시 생기거나, 로그를 아무도 보지 않으면 SL-A는 떨어진다.
그래서 62443 시스템 보안은 세 층의 증거가 이어져야 완성된다.
부품 역량 (4-2 시험, SL-C) → 시스템 설계·구성 (3-3 시험, SL-C) → 운영 (2-x 프로그램, SL-A)
제조사 통합사 자산 소유자세 번째 층 — 변경 관리, 계정 검토, 로그 모니터링, 패치 적용 절차 — 은 모듈 37의 ITSM 프랙티스와 겹친다. 산업제어 현장에서 변경 관리가 허술하면 시험으로 증명한 보안 수준이 운영 중에 사라진다.
실무에서 왜 필요한가
산업제어 시스템 보안 프로젝트에서 QA가 가장 먼저 부딪히는 문제는 입력 문서의 부재 다. 존·컨듀잇 모델도 SL-T도 없이 "62443 시험을 해 달라"는 요청이 온다. 이때 시험을 시작하면 판정 기준이 없어 결과가 "발견 사항 목록"에 그친다. 시험 착수 전에 3-2 위험 평가 산출물을 요구하거나, 그것이 없으면 범위를 부품 시험(4-2)으로 좁히자고 제안 하는 것이 전문가의 첫 동작이다.
두 번째 문제는 책임 경계 다. 제조사는 부품의 SL-C를, 통합사는 시스템 구성을, 자산 소유자는 운영을 책임지는데, 격차가 발견되면 서로 상대의 영역이라고 말하기 쉽다. 존·컨듀잇 별 격차 표에 "해소 책임 주체" 칸을 넣는 것만으로 이 논쟁의 대부분이 정리된다.
세 번째는 변경 이후 다. 시스템 시험은 한 시점의 스냅숏이다. 컨듀잇 규칙 하나를 바꾸면 판정이 무효가 될 수 있다. 어떤 변경이 재시험을 요구하는지 기준을 미리 합의해 두는 것 — 모듈 33 레슨 6에서 GS 인증 변경을 주요·경미·재인증 불필요로 나눈 것과 같은 설계 — 이 시스템 보안 성적서를 살아 있게 만든다.