보안정보

전문화된 보안 관련 자료, 보안 트렌드를 엿볼 수 있는
차세대 통합보안관리 기업 이글루코퍼레이션 보안정보입니다.

공격 시나리오를 통한 OT/ICS 환경의 보안이슈 분석 및 강화 방안

2023.03.08

12,573

01. OT/ICS 개요 및 환경 분석

1) OT/ICS 환경 개요

18세기 영국에서 수작업으로 제작되던 제품들은 기계화를 통한 ‘산업혁명(Industrial revolution)’으로 대량화가 시작되었다. 인간이 직접 하기 어렵거나 위험한 작업이나 마이크로 단위로 세밀화된 작업들이 기계를 통해 가능해지면서 산업 자동화를 촉발하여 생산성 향상으로 이어지면서, 산업 전반에서 인간을 대체하였다. 3번의 산업혁명을 거쳐 인공지능, 블록체인, 클라우드 등 4차 산업혁명의 차세대 기술들은 새로운 산업혁명을 이끌고 있다. 기술의 고도화는 물리적인 제어 환경을 원거리에서 운영하고 관리할 수 있게 하면서 ‘산업 제어 시스템(ICS, Industrial Control System)’을 변화하였다.

산업 제어 시스템(ICS)는 ‘OT(Operation Technology)’환경의 세부 요소 중 하나를 의미한다. 산업 제어 시스템 내부에는 [그림 1]과 같이 ‘SCADA(Supervisory Control And Data Acquisition)’, ‘DCS(‘Distributed Control System)’등의 하위 세부항목들이 존재한다.

[그림 1] OT/ICS 구성요소 및 설명

2) OT/ICS 보안위협 증가 환경 분석

OT/ICS 환경에서 발생하는 보안 사고 사례를 분석해 보면 [표 1]과 같이 △ 국가간 이해관계 충돌(정치적 이슈), △ 불법자금 획득 및 경제적 피해 유발, △ 취약점 및 관리 소홀 미흡의 3가지로 분류할 수 있다.

[표 1] 공격목적에 따른 OT/ICS환경의 보안사고 사례 분석

OT/ICS 환경에서 발생하는 사이버 공격 중 자주 발견되는 공격 형태는 국가간 이해관계 충돌(정치적 이슈)의 공격 형태다. 에너지, 통신, 수도, 석유, 가스 등 국가 주요 인프라에 쓰이는 ICS 환경을 대상으로 공격하는 방식이다. 국가 주요 인프라는 사회기반시설(SOC) 환경이기 때문에 국가 전산마비와 같은 사이버 보안 이슈를 넘어 국민의 안전과 생명을 위협하는 안보의 영역으로 확대될 수 있기 때문에 공격의 파급력이 훨씬 더 크다고 할 수 있다.

실제 최근에 발생한 러시아-우크라이나 사태에서도 물리적 충돌 과정에서 사이버 공격을 사용했다는 사실이 발견되었다. 주요 핵심시설의 중요 정보를 탈취하거나 사회기반시설인 OT/ICS 환경에 악성코드를 유포 및 설치하여 시스템 가용성을 저해하는 공격을 지속적으로 수행하였다. 공격이 성공하게 되면 시스템 파괴나 시스템 중단이라는 극단적인 결과가 초래된다. 이는 해당 국가에 직접적인 피해를 유발하고자 하는 경우 사용되기 때문에 공격 대상과 공격 시스템 등이 명확하게 정해져 있고 장기간 사이버 공격 및 캠페인이 진행되게 된다.

다음으로 OT/ICS 환경에서 자주 보이는 공격 형태는 불법자금 획득 및 경제적 피해 유발하는 공격이다. 북한, 러시아, 이란 등 국가 기반의 사이버 공격 그룹이나 금전적 목적의 공격을 수행하는 MaaS 해킹 그룹 등에서 주로 사용하는 공격 방식으로 랜섬웨어와 같이 직접적으로 금전적 이익을 득할 수 있는 공격 방식을 주로 사용한다. 특히 OT/ICS 환경을 타깃으로 공격하는 경우에는 경제적·사회적 피해가 발생되기 때문에 협상금을 협의하는 과정에서 상대적으로 우위를 점할 수 있다.

취약점 및 관리 소홀 미흡은 IT 환경 이외에도 OT/ICS 환경에서 자주 발생하는 공격 방식이다. 일반적인 IT 환경과의 차이점이 있다면 서비스 가용성이 미치는 영향과 시스템의 생애 주기가 상이하기 때문에 보안 이슈 발생 시 미치는 영향도나 대응 방안을 수립할 때 에코 시스템에 대한 환경적인 이해가 수반돼야 한다. [표 2]는 IT 환경과 OT 환경의 보안 우선순위나 보안패치와 같은 환경적인 차이를 분석한 내용이니 향후 공격 시나리오를 분석하고 대응하는데 적용되기 때문에 선제적인 이해가 필요하다.

[표 2] IT 환경과 OT 환경 차이 (출처: 주간기술동향 1981호, 이글루코퍼레이션 재구성)

OT 환경을 구성하는 인프라나 시스템의 생명주기는 보통 15년에서 20년 이상이다. OT 환경을 구성하는데 단일 시스템이나 플랫폼, 디바이스가 소요되는 것이 아니고 일반적으로 비즈니스 목적에 따라서 다수의 시스템이 단일 에코 시스템으로 구성되기 때문에 구축에 소요되는 시간이나 운영하고자 하는 목표 생명주기가 IT 환경에 비해서 상대적으로 긴 편이다. 따라서 보안 이슈가 발생하게 되면 장기간에 걸쳐 생명주기 전반에 영향을 미칠 수 있게 된다고 볼 수 있으며, 한번 구축된 시스템은 교체나 변경, 수정 등의 대응이 쉽지 않기 때문에 보안 업데이트가 종료된 EOS, EOL 등의 운영체제나 소프트웨어 등이 사용되고 있음을 의미하게 된다.

실제로 2022년 인도의 전력 공급망에서 발생한 사이버 공격 사례에서는, 2005년에 관리 서비스가 중단된 ‘Boa’ 웹 서버가 공격의 트리거로 작용되었다. 장기간의 생명주기는 잠재적인 보안 위험들이 연쇄적으로 보안 위험을 유발할 수 있으며, 연쇄적인 구조로 인해 단일 시스템이나 디바이스의 보안패치가 시스템 전반에 미치는 영향도를 파악하는 것도 어려워지게 된다. IT 환경에 비해 가용성이 최우선 과제인 OT 환경에서는 보안 취약점을 보완하기 위해 업데이트하는 일반적인 보안조치도 상대적으로 어려울 수밖에 없는 것이 현실이다.

02. OT/ICS 환경의 보안이슈 분석

1) OT/ICS 환경 보안이슈 분석 개요

IT 환경을 구성하는 기술 스택을 이해하기 위해서는 OSI 7 Layer나 TCP/IP 모델 등을 이용해서 설명하게 되는데, OT/ICS 환경에서는 Purdue 모델을 통해 기술 스택을 분류할 수 있게 된다. Purdue 모델은 1990년대 기업 구조에 대한 참조 모델로 제시된 ‘Purdue Reference Architecture(PERA)’기반의 모델로, IT 환경을 의미하는 Level 4와 Level 5의 인터넷망과 OT 환경을 의미하는 Level 0에서 Level 3의 폐쇄망으로 구성되어 있다. (조직의 기술 스택 구성 방법에 따라서 해당 구성은 상이할 수 있음)

OT 환경에서 발생하는 보안 이슈를 설명하기 위해서 가상의 공격 시나리오를 통해서 설명해 보고자 한다. 일반적으로 OT 환경에서 자주 발견되는 △ 시스템 구성 요소 긴 수명주기, △ 사용자 인증 절차 미흡, △ 기본 계정 정보 사용, △ 미흡한 망 분리 등의 시나리오로 분류할 수 있다. 공격 시나리오를 통해 확인된 보안 위험들에 대해서는 △ ISA/IEC 62443 표준 내 보안 요구사항과 △ KISA 주요 정보통신 기반 시설 취약점 가이드(이하 KISA 취약점 가이드) 내 항목들, 그리고 △ NIST에서 제공하는 800-series를 통하여 적절한 대응 방안 및 강화 방안을 제시하려 한다.

[그림 2] Purdue 모델 기반의 OT 환경 가상 구축

2) OT/ICS 환경 보안이슈 시나리오 및 대응 방안

CASE 01 공격 시나리오 : 히스토리안 서버, SMB 서비스를 이용한 OT 망 접근 공격 시나리오

먼저 공격자는 히스토리안(Historian) 서버를 장악한 상태다. 본격적인 공격 시나리오를 설명하기에 앞서 히스토리안 서버에 대해서 간략하게 설명하고자 한다. 히스토리안 서버는 산업 시스템에서 발생하는 정보 분석 및 모니터링을 위한 서버로 IT나 OT 환경에서 모두 접근이 가능한 DMZ 환경에 구성하는 것이 일반적이다. 폐쇄 망으로 구성되는 OT 환경에 접근하기 위한 초기 접점으로 히스토리안 서버를 공격하게 되면 이후 추가적인 피해 시스템의 측면 이동(Lateral Movement, 동일 네트워크 및 기술 스택을 기준으로 추가적인 공격 시스템을 확보하기 위해 이동하는 공격 방식)을 통해 공격할 수 있게 된다.

장악된 히스토리안 서버를 이용하여 OT 환경으로 공격하기 위해서 OT 망에 존재하는 서버와 해당 서버에서 구동 중인 서비스를 확인하고자 스캐닝을 진행하였다. 이후 SMB 서비스를 사용해서 제어 시스템을 찾아 주요 정보를 탈취하게 된다. 공격자는 OT 환경에서 제어 장비 도입 시에 장비 운용이나 가용성을 목적으로 초기 도입 환경을 그대로 유지한다는 점에서 공격자들이 주로 이용하는 공격 방식이다.

[그림 3] CASE 01 시나리오
[그림 4] CASE 01 시나리오 1 – Historian 서버 접근
[표 3] Historian 서버 환경

STEP 1. 히스토리안 서버 접근

공격자는 히스토리안 서버의 웹 어플리케이션 구동을 위한 목적으로 [그림 5]와 같이 톰캣 (Tomcat) 9.0.30이 구동되는 것을 확인하였다. 이후 톰캣 관리자 페이지(/manager/html)의 접근제어 미흡을 통해 해당 페이지에 접근을 하고, 임의의 히스토리안 서버 제조사가 변경하지 않은 계정을 통해 관리자 페이지에 접근하였다(계정과 패스워드가 ‘igloo’로 설정된 상태). 톰캣 관리자 페이지에는 [그림 6]과 같이 WAR 파일을 할 수 있는 기능이 존재하는데, [그림 7]와 같이 웹쉘 기능이 포함된 WAR 파일을 통해 웹쉘기능을 배치(Deploy) 사용할 수 있게 된다.

[그림 5] Historian 서버 내 에러 및 관리자 페이지 접근
[그림 6] 톰캣 관리자 페이지 내 WAR 파일을 배포할 수 있는 Deploy 기능
[그림 7] Deploy 기능을 사용하여 업로드된 웹 쉘 내 ‘ls –al’ 명령 실행 결과
[그림 8] CASE 01 시나리오 1 – OT 망 내 취약 환경 접근 시나리오
[표 4] OT 망 내 제어 서버 환경

STEP 2. OT 망 내 제어 서버 접근

STEP 1을 통해 공격자는 DMZ 영역에 존재하는 히스토리안 서버를 장악하여 OT 망 접근이 가능해졌다. 이후 [그림 9]와 같이 공격자는 히스토리안 서버를 사용하여 OT 망에 스캔 공격을 진행하여 존재하는 서버와 구동 중인 서비스 목록을 파악하고 OT 망 내 제어 서버에서 SMB 서비스가 구동 중인 점을 이용하여 제어 서버에 접근하였다. 접근 시 사용한 계정 정보는 장비 제조사 명을 통하여 추측한 ID:control, PW:control을 사용하였다. [그림 10]에서는 서버 내 공유 폴더 목록을 확인할 수 있고, 해당 폴더 내에서 중요 정보로 추측되는 파일 목록을 획득할 수 있게 된다.

[그림 9] 네트워크 스캔 도구 사용, 공유 폴더 목록 확인
[그림 10] 주요 정보로 추측되는 정보 내용

CASE 01 대응 방안 : 히스토리안 서버, SMB 서비스를 이용한 OT 망 접근 공격 시나리오

앞서 설명한 공격 시나리오를 대응하기 위해서는 크게 관리적, 물리적, 기술적인 측면에서 보안 위배 사항들을 도출해야 한다. 먼저 기술적인 보안 위험은 크게 △ 히스토리안 서버 보안 취약, △ SMB 서비스 사용, △ 유추하기 쉬운 계정 사용으로 확인할 수 있다. 다음으로 관리적·물리적인 보안 위험은 △ 정보 보안 관리체계 수립 여부와 △ 정보 보안 내규 정책 수립 여부로 분류할 수 있다.

[표 5] CASE 01 시나리오 내 취약사항 항목 별 매칭 사항

△ 히스토리안 서버 보안
공격 시나리오에서 처음 공격의 시작점으로 활용된 히스토리안 서버는 DMZ에 존재하기 때문에 OT 환경으로 접근할 수 있는 공격 지점으로 사용될 수 있다. 현재까지 히스토리안 서버를 이용해 직접적인 사이버 공격 사례나 피해 사례가 보고된 바는 없지만, 히스토리안 서버는 OT 환경의 진입점이 될 수 있기 때문에 보안 강화가 필요하다.

ISA/IEC 62443 표준에서 히스토리안 서버 보안에 대한 대책 가이드로 ‘SR 3.5, CR 3.5 Input validation’를 제시한다. 사용자가 입력하는 입력값을 검증 미흡으로 인해 발생하는 보안 위험에 대한 대안의 필요성에 대해 언급하는 항목이다. 공격 시나리오에서는 사용자가 입력한 입력값(파라미터)가 아닌 부적절한 설정(Misconfiguration)에 의한 관리자 페이지 접근 및 유추 가능한 접속 계정을 사용한 취약점이었으나 일반적으로 OWASP 등과 같은 보안 가이드라인을 통해 보안성 강화를 요구하고 있다.

△ SMB 서비스 사용
SMB 서비스는 서버 간 자원을 쉽게 공유할 수 있게 해주는 서비스다. SMB 서비스에 대한 알려진 취약점으로는 권한 상승, 인증 우회, 원격 코드 실행 등이 있으며 지금도 SMB 서비스에 대한 취약점이 꾸준히 발견되고 있다. OT 환경의 경우 SMB 서비스에 대한 알려진 취약점 패치가 적절하게 진행되고 있지 않을 가능성이 존재하여 공격자가 SMB 서비스를 이용한 침투 행위가 이뤄질 수 있으므로 SMB 서비스에 대한 관리가 필요하다.

KISA 취약점 가이드에서 SMB 서비스를 사용하는 것에 대한 내용을 ‘C-05. 제어 시스템에 불필요한 서비스 및 취약한 서비스 제거 또는 보완대책 수행‘ 항목에서 확인할 수 있다. 제어 시스템 구성요소 중 불필요한 서비스나 취약한 서비스가 구동하는지를 확인하는 항목으로, SMB 서비스가 불필요할 경우 해당 항목에서 ‘취약‘ 판정을 받게 되지만, 필요에 의해 사용되는 경우 알려진 취약점이 존재하지 않는 버전의 SMB 서비스를 사용하는 방법과 유추하기 어려운 정보를 이용한 계정 정보 설정을 권고한다. 또한 자체 설정 파일 내 값을 통하여 접근 제어가 가능할 경우 인가된 사용자만 접근할 수 있도록 설정하는 것을 권고하며, 설정 파일이 존재하지 않을 경우 보안 장비를 통하여 접근 제어를 설정하여 인가된 사용자만 접근될 수 있도록 조치해야 한다.

ISA/IEC 62443 표준에서 SMB 서비스 사용에 대한 내용은 ‘SR 7.7, CR 7.7 Least functionality’ 영역을 통해 확인할 수 있다. 구체적으로 SMB 서비스에 대한 사용 제한이 명시되어 있지 않지만, 불필요한 기능, 포트, 프로토콜, 서비스 등에 대한 제한을 명시하고 있다. SMB 프로토콜이 제어 시스템 환경을 운영하는데 불필요하다면 이 영역을 참고하여 제한하는 것을 권장한다.

△ 유추하기 쉬운 계정 사용
제조사로부터 ICS 환경에서 사용되는 장비를 공급받을 때, 보통 기본 패스워드를 사용하는 계정이나 추측 가능한 단순 문자열 패스워드를 사용하는 계정을 발급받을 가능성이 존재한다. 또한 발급받은 계정을 사용하는 과정에서도 장비 사용자의 편의성과 장비의 가용성으로 인하여 패스워드 변경 정책이 존재하지 않을 가능성이 있다. 이러할 경우 공격자가 장비에 접근 가능하다고 할 때, 무작위 대입 공격이나 사전 공격, 사회공학적 공격을 통하여 계정 탈취가 이뤄질 수 있으므로 계정 관리에 대한 정책 수립 및 체계적인 관리 체계가 필요하다.

ISA/IEC 62443 표준에서 유추하기 쉬운 계정 사용에 관한 내용은 ‘SR 1.5, CR 1.5 Authenticator management’ 영역과 ‘SR 1.7, CR 1.7 Strength of password-based authentication’ 영역을 통해 확인할 수 있다. 1.5 영역에서는 장비 구성 설치 시 디폴트 인증에 대한 설정들을 바꾸라고 명시되어 있고, 1.7 영역에서는 패스워드 기반 인증을 진행할 경우 패스워드에 대한 여러 설정(패스워드 복잡도 설정, 패스워드 수명 제한, 패스워드 최소 수명 주기, 패스워드 재사용 제한 등)을 통하여 패스워드 관리에 대한 내용이 명시되어 있다. 이 영역들을 참고하여 패스워드 기본 값 변경 및 관리 체계 설립을 수행하여 제어 시스템 내에서 사용되는 계정들에 대해 체계적인 관리가 필요하다.

NIST 800-series 가이드에서 유추하기 쉬운 계정 사용에 관한 가이드 내용은 ‘6.2.7 Identification and Authentication’ 영역을 통해 확인 가능하다. 가이드 내 ‘ICS 별 권장 사항 및 가이드‘ 영역에서 제어 시스템 장비 도입 시, 기본 패스워드를 그대로 전달한다는 점이 명시되어 있다. ‘6.2.7.1 Password Authentication’ 영역에서는 보다 안전한 패스워드를 사용할 수 있도록 여러 방법들이 제시되어 있다. 해당 영역을 참고하여 제어 시스템 내 사용 계정들에 대한 관리를 권고한다.

△ 정보 보안 관리체계 수립 여부 , 정보 보안 내규 정책 수립 여부
관리적 측면에서 정보 보안 관리체계가 존재하는지를 확인하여야 한다. 수립되어 있지 않다면 관리체계를 수립하여 체계적으로 관리를 진행하여야 하고, 수립되어 있다면 OT 영역이나 DMZ 영역 내 자산들도 포함하여 관리하고 있는지를 확인할 필요가 있다.

KISA 취약점 가이드에서 관리적, 물리적 측면은 ‘C-47. 제어 시스템의 특성을 반영한 정보 보안 정책, 지침을 수립‘ 항목을 통하여 안내하고 있다. 실제 ICS 환경에 적합한 보안 정책 및 지침이 수립되어 수행되고 있는지를 확인하고 있다. 항목에서 보는 사항들이 이미 존재하고 있다면, 취약점 진단 및 보호대책 수립이 적절하게 이루어지고 있는지 검토하는 것을 권고한다.

ISA/IEC 62443 표준에서는 ‘2-1 Requirements for an IACS security management system’에 보안 구성, 보안 정책 및 절차, 물리적 및 환경적 보안 등의 영역을 통해 관리적 점검 사항 내용을 확인할 수 있다. NIST 800-series 가이드에서는 ‘3. ICS Risk Management and Assessment’ 영역을 통하여 가이드하고 있다. 이 영역에는 ICS 환경에 맞게 보안 프레임워크를 구성 및 위험 관리 절차에 대한 내용이 기입되어 있다.

CASE 02 공격 시나리오 : FTP Anonymous 계정을 이용하여 시스템 정보 획득 후 RDP 연결

공격자는 스캐닝을 통해 IT 망과 OT 망의 부적절한 망 분리를 확인하였다. IT 망에서 OT 망으로 직접접근이 가능하고, OT 망에서는 파일전송을 위해서 FTP 서비스가 구동 중이었다. 제어 시스템에서 구동 중인 FTP는 편의성을 목적으로 Anonymous 계정을 활성화하였으며, 시스템 디렉터리에서 접근이 가능하였다. 공격자는 이와 같은 환경을 통해 시스템 내에 존재하는 계정 정보를 확보하고 사전 대입 공격(Dictionary Attak)을 통해 단순한 패스워드 규칙이 적용된 패스워드를 확인하게 된다. 마지막으로 RDP 프로토콜을 통해 제어 시스템을 장악하게 된다.

[그림 11] CASE 02 시나리오
[그림 12] IT 망과 OT 망 내부 IP 사용 대역
[표 6] IT 망과 OT 망 사이 방화벽 외부 허용 정책

STEP 1, 2. FTP 서비스를 통해 OT 망으로 접근

공격자는 [표 6]과 같이 잘못 구성된 방화벽 정책을 이용하여 OT 망에 접근하게 된다. 그뿐만 아니라 OT 망의 제어 시스템들이 데이터를 주고받을 때 FTP를 사용하고 있으며, 구동 중인 FTP가 잘못된 보안 설정으로 인하여 Anonymous 계정을 사용하여 접근이 가능하다. 공격자는 이러한 사실들을 종합해서 [그림 14]와 같이 제어 시스템 내 FTP 서버를 Anonymous 계정으로 접근하고, 디렉터리 설정이 적절하게 이뤄지지 않아 시스템 정보까지 탈취하게 된다. 공격자는 계정 탈취를 위해 Users 폴더에 접근한 뒤 존재하는 계정 정보 목록 정보를 습득하게 된다.

[그림 13] 192.168.0.0/24 대역의 사무망 IP 주소
[그림 14] Anonymous 계정을 사용하여 접근 및 시스템 정보 획득

STEP 3. 유추 가능한 계정 정보를 이용하여 제어 시스템 접근

공격자는 잘못된 네트워크 구성과 취약한 FTP 설정으로 제어 시스템에 접근하고 제어 시스템 내에 존재하는 계정 명을 확보하였다. [그림 15]와 같이 공격자는 구동 중인 FTP에 사전 대입 공격을 통해 ‘igloo’라는 계정을 획득하게 된다. 이후 RDP 프로토콜을 이용해 시스템에 제어 시스템에 원격접속하여 시스템을 장악하게 된다.

[그림 15] FTP 사전 공격 패킷과 사전 공격 결과

CASE 02 대응 방안 : FTP Anonymous 계정을 이용하여 시스템 정보 획득 후 RDP 연결 대응 방안

‘CASE 02’의 공격 시나리오의 공격을 대응하기 위해서는 △ 네트워크 정책 점검, △ FTP 프로토콜 사용, △ RDP 프로토콜 사용, △ 유추하기 쉬운 계정 사용과 같은 기술적인 보안 이슈를 대응해야 한다. 이 외에도 △ 정보보안 관리체계 수립 여부, △ 정보보안 내규 정책 수립 여부, △ 보안 관제 등 보안 위험 모니터링 여부와 같은 관리적·물리적인 보안 이슈도 보안조치가 필요하다.

[표 7] CASE 02 시나리오 내 취약사항 항목 별 매칭 사항

△ 네트워크 정책 점검
OT 네트워크 망 영역은 기본적으로 폐쇄 망으로 구성하여 외부 통신이 불가능하도록 구성할 것을 권고하고 있다. 그러나 OT 망 내 특정 장비를 유지 보수할 경우 물리적으로 접근하여 작업을 하는 방법이 아닌 원격으로 작업하는 경우가 발생할 수 있다. 이러할 경우 작업 이후에 작업 진행을 위하여 IT 망과 OT 망 사이 통신을 허용한 정책이 그대로 유지되고 있는지 점검이 필요하다.

또한 규모가 크거나 오래된 OT 환경의 경우 제어 시스템 내 장비 관리 및 망 분리가 적절하게 이뤄지지 않을 수 있다. 이러한 경우 [그림 16]의 내용을 참고하여 네트워크 장비 정책을 점검하여 적절하고 안전한 네트워크 구성이 되어 있는지 확인이 필요하다.

[그림 16] 방화벽 정책 관리 문제 및 정책 관리 최적화 알고리즘
(출처: CISCO Korea Blog 내 ‘[칼럼] 방화벽의 효율적 통합관리를 위한 고려사항‘)

KISA 취약점 가이드에서 네트워크 정책 점검과 관련된 항목인 ‘C-11. 제어 네트워크에 무선인터넷, 테더링, 외부 유선망 등의 외부망 연결을 제한하고 주기적으로 점검‘, ‘C-35. 제어 네트워크를 용도에 따라 세분화하고, 접근제어를 수행하여 제어 시스템 운영에 필요한 네트워크, 시스템 간의 통신망 허용‘ 항목이 존재한다. 이 항목들을 통해서 네트워크 접근 제어가 적절하게 되어 있는지와, 제어 시스템 네트워크 영역에서 세분화된 망 분리와 접근통제 규칙을 요구하고 있다.

ISA/IEC 62443 표준에서 네트워크 정책 점검에 대한 대책 내용은 컴포넌트 영역 3-2 내 ‘NDR 5.2 Zone boundary protection’에서 확인 가능하다. 해당 항목에서는 영역이 나눠진 네트워크에서 모니터링 및 접근 제어에 대한 내용이 존재한다.

NIST 800-series 가이드에서는 ‘5. ICS Security Architecture’영역에 네트워크 관련 내용이 존재한다. 이 영역에서는 네트워크 구조를 설계하는데 도움되는 내용이 반영되어 있다. 네트워크 영역을 나누는 것과 네트워크 영역 간 보호, 방화벽에 대한 내용 등이 반영되어 있다.

△ FTP 프로토콜 사용, △ RDP 프로토콜 사용
FTP 프로토콜은 제어 시스템 영역에서 파일을 전송하는데 많이 사용될 수 있다. 그러나 제어 시스템 영역에 접근 가능하다면 FTP 프로토콜은 알려진 취약점들이 많이 존재하고 평문 통신을 하므로 공격 대상이 될 수 있다. RDP 프로토콜 역시 유지 보수 용으로 사용 시 편리하게 장비를 제어할 수 있지만 다양한 알려진 취약점이 존재하여 공격 대상이 될 수 있다. 장비 운영에 필요한 프로토콜인지를 확인하고 불필요할 경우 제거하고, 필요할 경우 접근제어를 통해 인가된 사용자만 해당 프토로콜을 사용할 수 있도록 조치하여야 한다.

KISA 취약점 가이드에서 FTP 프로토콜 사용과 RDP 프로토콜 사용의 경우 [CASE 01]의 내용과 동일하다. 필요에 의해 사용하는지를 확인해야 하고, 필요에 의해 사용하는 경우 알려진 취약점이 존재하지 않는 버전의 서비스를 사용하는 방법과 유추하기 어려운 정보를 이용한 계정 정보 설정이 권고된다. 또한, 자체 설정값을 통하거나 보안 장비를 통하여 접근 제어를 설정하여 인가된 사용자만 접근될 수 있도록 조치하는 것이 권고된다.

ISA/IEC 62443 표준에서 FTP 프로토콜 사용과 RDP 프로토콜 사용은 [CASE 01] 내 SMB 프로토콜에 대한 내용과 동일하며 유추하기 쉬운 계정 사용에 대한 내용 역시 [CASE 01]과 동일하다.

△ 유추하기 쉬운 계정 사용
유추하기 쉬운 계정 사용 영역은 [CASE 01]과 동일하다.

△ 정보 보안 관리체계 수립 여부, △ 정보 보안 내규 정책 수립 여부, △ 보안 관제 등 보안 위험 모니터링 여부
정보 보안 관리체계 수립 여부 및 정보 보안 내규 정책 수립 여부의 경우 [CASE 01]과 동일하다. 보안 관제 등 보안 위험 모니터링 여부의 경우 OT 망 침입 공격이 단기성이 아닌 장기적으로 이뤄질 수 있고 언제 공격이 들어올지 모르기 때문에 IT 영역과 마찬가지로 이상 트래픽 발생 여부 및 위협 행위 탐지 모니터링이 필요하다.

KISA 취약점 가이드에서 정보 보안 정책 수립 여부, 정보 보안 내규 정책 수립 여부는 [CASE 01]와 동일하다. 보안 관제 등 보안 위험 모니터링 여부는 ‘C-37. 이상 트래픽 발생 탐지 등 제어 시스템 내의 보안 관리를 위해 적절한 침입탐지시스템 등을 구축 및 운용하고, 구축된 보안 솔루션 및 보안장비에서 탐지한 보안 이벤트에 대해 모니터링 수행‘ 항목을 통해 제어 시스템 네트워크 영역에서 이상 트래픽 발생 여부 및 보안 위험 행위 탐지 여부 점검이 가능하다.

ISA/IEC 62443 표준에서는 [CASE01]과 동일한 ‘2-1’ 영역에서 확인이 가능하다.

NIST 800-series 가이드 내 네트워크 정책 점검 항목은 ‘5. ICS Security Architecture’에 관련 내용이 존재한다. 이 영역에서는 네트워크 구조를 설계하는 데 도움 되는 내용이 반영되어 있다. 네트워크 영역을 나누는 것과 네트워크 영역 간 보호, 방화벽에 대한 내용 등이 반영되어 있다.

CASE 03 공격 시나리오 : 공급망 공격을 통해 악성코드가 감염된 패치 파일

공격자는 보안이 되어 있는 ICS 환경을 직접 공격하는 대신 ICS 환경에 장비 및 소프트웨어(펌웨어)를 제공하는 제조사를 공격하였다. APT 공격을 통하여 업데이트 및 배포에 사용되는 설치 파일을 개발하는 개발자의 PC 권한을 탈취하였고, 설치 파일 소스코드를 수정할 수 있는 권한을 획득한다. 공격자는 악성코드를 준비한 뒤 설치 파일 소스코드에 삽입한다. 그리고 제어 시스템 업데이트 시기를 기다린다. 제어 시스템 장비 담당자는 새로운 업데이트 파일을 패치 서버를 통해 다운로드한 후 업데이트를 진행한다. 악성코드는 실행되고 공격자는 제어 시스템 제어 권한을 얻게 된다.

[그림 17] CASE 03 시나리오

STEP 1. 패치 파일을 통한 공급망 공격

공격자는 제어 시스템에 공급하는 장비 및 소프트웨어 회사를 공격하여 소스코드 수정 권한을 획득했다. 이후 소스코드에 악성코드를 삽입하였고 해당 악성코드가 반영된 업데이트 파일이 실행되기를 기다렸다. 제어 시스템 내 업데이트 기간이 오고, 관리자는 업데이트 파일을 테스트 없이 바로 실행하게 된다. 악성코드가 실현되면서 제어 시스템은 망가지게 된다.

해당 공격 시나리오를 대응하기 위해서는 △ 백신 프로그램 설치 여부, △ 업데이트 파일 확인 여부, △ 패치관리 정책 수립 여부와 같은 기술적인 보안조치가 필요하다.

CASE 03 대응 방안 : 공급망 공격을 통해 악성코드가 감염된 패치 파일 대응 방안

[표 8] CASE 03 시나리오 내 취약사항 항목 별 매칭 사항

△ 백신 프로그램 설치 여부
제어 시스템 내에 있는 장비에도 백신이 설치 가능한 장비가 존재한다면 설치하여 악성코드를 예방하는 것이 보안성 향상에 좋다. 그러나 제어 시스템의 특성상 부하에 예민하여 설치가 불가하거나, 노후화된 장비로 인하여 호환성 문제로 설치가 불가능할 경우 백신을 대신하여 악성코드 및 알려진 취약점에 대해 대응할 수 있는 대안 마련이 필요하다.

KISA 취약점 가이드 내 백신 프로그램 설치 여부는 ‘C-15. 백신 프로그램 설치가 가능한 제어 시스템 구성요소에 대해 악성코드 감염 및 차단을 위한 백신 프로그램 설치’ 항목을 통해 확인할 수 있다. 제어 시스템 내 백신 프로그램이 설치 가능한 장비에서는 백신 프로그램을 설치하여 알려진 악성코드로부터 피해를 줄이는 것을 권고하고 있다. 만약, 제어 시스템에 백신 프로그램 설치가 불가한 경우 이에 대한 보완대책 마련을 권고하고 있다.

ISA/IEC 62443 표준에서는 컴포넌트 영역인 ‘3-2’ 영역에서만 백신 설치와 관련된 내용을 확인하였다. 백신 프로그램 설치 여부의 경우, 백신이 설치 가능한 호스트 영역 내에서 ‘3.2 Protection from malicious code’가 존재한다. 이 항목에서 공급 업체는 제어 시스템의 기능이 유지되도록 악성코드로부터 보호하는 메커니즘 존재 여부를 확인한다.

NIST 800-series 가이드에서 백신 프로그램 설치 여부에 대해서는 ‘6.2.17.1 Virus and Malicious Code Detection’ 내에 관련 내용이 존재한다. 일반적인 IT 환경과 달리 제어 시스템에서는 백신 프로그램 도입 시 호환성 여부, 성능 영향 측정 지표 확인, 관리 변경 문제를 고려해야 하는 점도 명시되어 있다.

△ 업데이트 파일 확인 여부
공급 혹은 제조사로부터 제어 시스템 업데이트 파일을 받은 경우, 해당 파일 내 악성코드가 존재하는지 점검이 필요하다. 업데이트 파일 무결성 검사를 통해 파일 변조 여부를 확인하는 방법이 많이 알려져 있지만, 공급망 공격을 통해 공급 당시에도 악성코드가 존재할 수 있어 무결성 검사로는 탐지가 안될 가능성이 존재한다. 이러한 경우 테스트 환경에서 업데이트를 진행하고 악성 행위가 탐지되는지 확인하는 방법이 업데이트 파일 내 악성코드가 존재하는지를 확인하는 좋은 방안 중 하나이다.

KISA 취약점 가이드 내 업데이트 파일 확인 여부는 ‘C-07. 외부 업체, 인터넷을 통한 다운로드 등의 경로로 반입된 각종 패치, 업데이트 파일에 대한 무결성 검증 및 클린 PC를 통한 악성코드 존재 여부 검사 수행‘을 통해 확인할 수 있다. 이 항목을 통해서 패치, 업데이트 파일의 무결성 검사를 수행하는 데, 공급망 공격의 경우 무결성 검사를 우회할 수 있다. 그 경우 클린 PC를 구축하여 패치, 업데이트 파일 내 악성코드 존재 유무를 확인하는 방법을 제안하고 있다.

ISA/IEC 62443 표준에서 업데이트 파일 확인 여부 항목에서는 기존 하나의 영역이 아닌 소프트웨어 영역, 임베디드 영역, 호스트 영역, 네트워크 장치 영역 모두 존재한다. 이 항목의 경우 항목 명이 ‘Support for updates’로 되어 있으나 설치 전 업데이트 파일의 무결성 체크 내용이 존재하여 이 영역과 매칭했다.

NIST 800-series 가이드 내 업데이트 파일 확인 여부의 경우 ‘2.4 Comparing ICS and IT Systems Security’ 영역에서 ICS 환경 특별 고려 사항을 통해 안내하고 있다. ‘Change Management’ 영역에 업데이트는 공급자와 프로그램 사용자가 철저하게 검증한 후에 적용하라고 명시되어 있다. 또한, 재검증 및 패치 불가 시 복구 등을 고려하여 패치 계획을 수립한 후에 적용할 것을 권고하고 있다.

※ 공급망 공격에 대한 가이드는 2022년 5월 NIST에서 ‘NEW EO Guidance for Cybersecurity Supply Chain Risk Management’ 내용으로 NIST 800-161r1가 배포되었다.

△ 패치관리 정책 수립 여부
OT 환경에서 여러 보안 이슈 중 하나는 패치 관리이다. 가용성이 최우선시되는 환경을 갖추고 있다 보니 운영에 영향을 미칠 수 있는 패치, 업데이트에 예민하며 노후화된 장비들 사용으로 인해 업데이트 시 호환성 문제가 발생할 수 있다. 그로 인하여 알려진 취약점에 대해 취약한 환경을 갖추고 있을 가능성이 높다. 체계적인 패치 관리 정책을 수립하여 가용성과 시스템 내 호환성 여부를 체크하여 알려진 취약점을 없애는 패치 관리가 필요하다.

KISA 취약점 가이드에서는 ‘C-06. 제어 시스템에 대한 최신 업데이트, 보안패치를 안전하게 적용하기 위한 제조사 협력 방안, 테스트 방안 등의 절차 수립‘ 항목에 패치 관련 내용이 명시되어 있다. 제어 시스템 업데이트의 경우 영향도 파악을 확인하기 위하여 제조사와 협업을 하여야 하는데, 해당 항목에서 그 점을 명시하고 있으며 납품 계약 문서, 유지 보수 계약 문서 등 문서화된 서류 내 업데이트 및 보안패치 적용 방안이 수립되어 있는지를 확인하고 있다.

ISA/IEC 62443 표준에서 ‘2-1’ 영역 내 패치 정책 관련 내용이 존재한다. ‘4.3.4.3.7 사이버 보안 정책 및 절차 검토 및 업데이트’, ‘4.3.4.3.8 바이러스 백신/악성 프로그램 관리 절차 수립 및 문서화‘를 통해 안전한 환경에서 제어 시스템을 유지, 관리 여부를 확인하고 있다.

NIST 800-series 가이드에서는 ‘6.2.17.3 Patch Management’ 영역에 패치와 관련된 내용이 명시되어 있다. 해당 영역에선 패치가 알려진 취약점에 대해 조치할 순 있지만 부작용이 생겨 생산 및 주변 안전엔 오히려 악영향을 미칠 수 있음을 경고하고 있다. 또한 호환성 문제가 발생하여 일부 기능이 동작하지 않을 가능성도 존재한다는 것을 알려주고 있다. 이러한 점들을 고려하여 체계적으로 패치 관리를 수행할 것을 권고하고 있다.

0.3 OT/ICS 환경의 보안을 강화하기 위한 제언

컴퓨터와 기계의 발달로 인하여 인간이 수행하기에 위험하거나 섬세한 작업이 필요한 업무들을 기계들이 대체하고 있다. 또한, 4차 산업혁명으로 인하여 스마트 팩토리 등 산업 제어 시스템 환경이 증가하고 있다. 제어 시스템 환경은 IT 환경과 달리 물리적인 영향을 행사할 수 있고, 직접적인 인명 피해를 입힐 수 있어 더욱 꼼꼼한 보안 요구사항이 도출되어야 된다고 생각한다.

앞선 장 들을 통하여 ICS 환경에서 발생할 수 있는 보안 이슈들로 인한 공격 시나리오들과 이를 해결하기 위한 방안들을 ‘KISA 주요정보통신기반시설 기술적 취약점 분석, 평가 방법 상세가이드 제어 시스템’, ‘ISA/IEC 62443 2-1, 3-3, 3-2’, ‘NIST 800-Series’를 통해 기술적, 관리적, 물리적 측면으로 살펴보았다. 시나리오를 통해 확인한 보안 이슈 외에도 ‘이동식 저장 장치 관리‘, ‘제어 시스템 내 물리적 연결 포트 관리‘, ‘제어 시스템 네트워크 영역 무선 네트워크 망 관리‘ 등 존재 가능성이 높은 잠재적 위협들이 존재한다. 구성된 환경 및 운영 환경을 확인하여 잠재적인 위협들을 제거하고 안전한 환경에서 산업 제어 시스템 운영이 필요하다.

04. 참고자료

1) 정보통신기획평가원, 주간기술동향 1981호
https://www.itfind.or.kr/WZIN/jugidong/1981/file951785555153445161-1981(2021.01.27)-03.pdf
2) CISCO Korea Blog, [칼럼] 방화벽의 효율적인 통합 관리를 위한 고려사항
https://gblogs.cisco.com/kr/considerations-for-efficient-integrated-management-of-firewalls/amp/
3) KISA, 주요정보통신기반시설 기술적 취약점 분석, 평가 방법 상세 가이드
https://www.krcert.or.kr/filedownload.do?attach_file_seq=2736&attach_file_id=EpF2736.pdf
4) 산업통신네트워크 – 네트워크 및 시스템 보안 – 제 2-1부: 산업 자동화 및 제어 시스템 보안 프로그램 설정(KS X IEC62443-2-1)
https://e-ks.kr/streamdocs/view/sd;streamdocsId=72059197573807853
5) 산업통신네트워크 – 네트워크 및 시스템 보안 – 제 3-3부: 시스템 보안 요구사항 및 보안 등급(KS X IEC62443-3-3)
https://e-ks.kr/streamdocs/view/sd;streamdocsId=72059234793329412
6) 산업통신네트워크 – 네트워크 및 시스템 보안 – 제 3-2부: 산업제어 시스템 컴포넌트의 기술적 보안 요구사항(KS X IEC62443-3-2)
https://e-ks.kr/streamdocs/view/sd;streamdocsId=72059198514135222
7) KISA, NIST-800-82r2 산업제어 시스템 가이드 한글교차번역본
https://www.boho.or.kr/filedownload.do?attach_file_seq=2428&attach_file_id=EpF2428.pdf