플래시 메모리의 코드·데이터 보안 기능과 배경
상태바
플래시 메모리의 코드·데이터 보안 기능과 배경
  • 윈본드
  • 승인 2020.10.27 10:00
  • 댓글 0
이 기사를 공유합니다

[테크월드=선연수 기자] 임베디드 장치 제조업체는 커넥티드 장치가 보안 위협에 노출되는 이유로 현재 시장에서 사용할 수 있는 보안 구성 요소의 취약성을 탓하지 않는다. 정교한 형식의 암호화, 온칩 키 스토리지 보안, 전력 분석, 기타 보안 기능을 구현할 보안 요소나 하이엔드(High-end) SoC(System-on-chip)와 같은 전문적인 구성요소는 쉽게 찾을 수 있기 때문이다. 시스템 디자인에 적절하게 통합된 구성 요소들은 이를 호스팅하는 장치에 강력한 보안을 제공한다.

 

보안 구성 요소를 쉽게 사용하게 된다면, 내장된(Embedded) 커넥티드 장치에 대한 공격이 매번 일어나게 될까? 전자 시스템상의 사이버 공격에 대한 증거는 많다. 한 연구에 의하면, 미국 내 IoT 장치에 대한 사이버 공격 건수가 2019년에 전년 대비 300% 늘어났다. 같은 기간, 미국 내 IoT 장치의 57%가 중간 또는 높은 심각도의 공격에 취약하며, 이런 IoT 엔드포인트 침해 비용으로 평균 900만 달러가 드는 것으로 추정됐다.

사이버 공격으로 인한 피해 복구에 드는 비용은 서비스 중단으로 인한 수익 손실뿐만이 아니다. 기타 비용은 제품 제조업체의 브랜드 손상, 보안 규정 위반에 대한 정부 당국의 잠재적인 처벌, 생산적인 개발 작업부터 긴급 복구와 수리 조치까지 숙련되고 값비싼 엔지니어링 자원의 전환 등이 포함된다. 관련 규제 또한 계속 강화되고 있으며 IoT 장치 제조업체는 규정 준수에 신경을 써야 한다.

EU의 사이버 보안법과 중국의 사이버 보안법은 장비 취약성에 대한 독립적인 테스트를 통해, 광범위한 요구사항을 부여한다. 캘리포니아 소비자 개인정보보호법은 의도치 않은 위반에 대해서도 기업에 2500달러의 벌금을 부과한다.

이런 모든 비용과 규칙에도 불구하고, 손상된 엔드포인트는 여전히 취약성을 가지고 있다. 이는 보안 요소나 보안 SoC를 넘어 시스템의 일부분이 갖는 취약성 때문일 수 있다. 보통 이런 취약성은 중요한 코드나 데이터를 저장하는 표준 외부 플래시 메모리에 존재한다. 또 다른 경우, 보안 요소나 보안 SoC가 없어 정교한 보호를 제공할 수 없는 시스템이라 사이버 공격에 노출되기도 한다.

일반적으로 두 경우 모두 하드웨어 수준의 보안 구현 단계에서 비용과 기술적 어려움을 겪는다. 결제 단말기나 휴대폰와 같이 금융 상품을 겨냥한 하이엔드 결제등급의 보안 구성 요소는 기술적으로 복잡하고, 보안 전문가가 아닌 엔지니어가 구현하기가 어렵다.

그러나 차세대 보안 플래시 메모리 제품이 시장에 출시되면서 하이엔드 등급 보호를 필요로 하지 않는 임베디드 장치를 위한 보안 하드웨어 기반이 제공되고 있다.

보안 플래시 메모리들은 종종 표준 플래시 메모리 패키지 풋 프린트와 핀아웃을 특징으로 하며 표준 SPI NOR 플래시 명령어 세트를 통해 제어된다. 이를 일반적인 임베디드 장치 디자이너가 구현하기 쉬운 부분이긴 하지만, 시스템의 무결성이나 데이터 프라이버시에 대한 공격으로부터 커넥티드 장치를 보호하기 위한 포괄적인 보안 기능 세트가 제공된다.

 

메모리 장치가 보안 기능을 갖춰야 하는 이유

보통 비휘발성 메모리는 단순한 장치로 생각한다. 여기엔 비트가 기록되고 다시 그 비트가 읽히는 역할을 하며, 일반적으로 프로세서가 아닌 저장장치(Store)로 여겨진다.

실제로 코드나 애플리케이션 데이터에 사용되는 모든 NOR 플래시 메모리는 로직을 포함하고 있다. 이 로직은 SPI(Serial Peripheral Interface, 직렬 주변 장치 인터페이스)를 통해 호스트와 통신하고 메모리 작동을 제어한다. 보안 플래시 장치는 이 논리 블록을 구축·확장해 메모리 제어 기능과 보안 기능을 제공한다.

윈본드(Winbond)와 같은 플래시 메모리 제조업체는 마이크로컨트롤러(MCU)와 SoC에 내장된 플래시 메모리의 한계를 극복하고자 차세대 보안 플래시 제품을 개발한다. 고급 MCU와 SoC는 20nm 미만의 노드에서 웨이퍼 제조공정으로 마이그레이션됐으나, 임베디드 NOR 플래시의 스케일링(Scaling)은 적합하지 않다. 이는 최근 MCU와 SoC에서는 임베디드 플로팅 게이트 플래시 프로세스를 사용할 수 없고, 종종 정교한 소프트웨어 코드를 저장할 만큼 캐패시티(Capacity, 용량)가 충분히 크지 않음을 의미한다.

따라서 오늘날 임베디드 장치 설계에서 응용 프로그램 코드는 보통 외부 플래시 메모리 장치에 저장된다. 특히, 인터넷에 연결된 IoT 장치와 같이 커넥티드 장치인 경우 메모리 장치가 포괄적인 보안 기능으로 보호되지 못하는 한, 외부 플래시의 부트 코드(Boot Code)는 공격에 취약하고, 데이터는 도난이나 침입에 취약하다. 이는 보안 플래시 장치가 SoC와 MCU 보안을 강화해야 하는 이유이기도 하다.

 

보안 플래시의 주요 기능

IoT 엔드 포인트에서 표준 외부 NOR 플래시를 보안 플래시로 바꾸는 것은 부트 코드와 애플리케이션 데이터의 무결성을 보호하기 위함이다. 시중에 출시된 다양한 보안 플래시 장치는 일종의 보안 스토리지를 제공한다. 가장 기본적인 보안 기능은 안전하고 암호화된 인증을 제공한다. 이는 플래시 장치가 권한이 있는 호스트만이 읽기·쓰기 작업을 수행하도록 허용함으로써, 호스트 SoC가 아닌 다른 장치에서 데이터에 액세스(Access, 접근)할 수 없도록 보호한다.

 

 

[그림 1] W77Q는 호스트 SoC가 손상되더라도, OTA(Over-the-air) 소프트웨어 업데이트를 위해 클라우드의 신뢰 센터에 보안 채널을 설정할 수 있다

그러나 이는 제한된 형태의 보안 보호만을 제공한다. 다양한 유형의 사이버 공격으로부터 보호하고 EU 사이버 보안법의 기본 사항과 실질적인 수준의 보안 기능 등의 규정을 준수하기 위해, 윈본드는 보안 플래시 제품군인 TrustME의 일부인 다기능 보안 NOR 플래시 메모리 ‘W77Q’을 개발했다[그림 1]. 이는 보안 인증 외에도 다음과 같은 것들을 제공한다.

- 복원력(Resilience): 사이버 공격이 비활성화를 시도한 후, 알려진 안전 코드로 자동 재부팅할 수 있도록 보호, 감지, 복구를 지원

- 호스트 SoC와 클라우드 컴퓨팅 서비스와 같은 외부 시스템과 함께 인증된 통신을 지원하는 RoT(Root-of-trust)

- 안전한 데이터 스토리지

- OTA 펌웨어 업데이트를 위한 플래시로부터 클라우드의 신뢰 기관으로의 보안 채널. 이 채널은 메모리가 SoC와 독립적으로 새로운 버전의 부트 코드로 업데이트될 수 있고, 심지어 SoC가 손상됐을 경우에도 가능

W77Q는 외부의 공인된 연구실에서 평가된 제품이다. 이는 EU의 GDPR 개인정보보호법의 요구 사항을 준수하고, EU의 사이버 보안법에 지정된 대로 ‘실질적인’ 수준의 보호를 제공한다. 또한, 이는 CC EAL2(VAN.2), IEC62443, SESIP, Arm PSA(Platform Security Architecture) 인증을 포함한 보안 인증을 갖추고 있다.

IoT 장치에서 복원력은 특히 중요한 항목이며, 대부분의 보안 플래시 제품에서 누락되는 기능이다. 유틸리티 미터(Utility meter)와 같은 일부 장치에서의 물리적 침입(Tampering)은 일반적인 형태의 공격으로 보호가 필요하다. 발전소나 군 기지와 같이 크고 상당히 귀중한 자산은 근거리 통신망을 통해 물리적으로 침입받을 수 있다.

그러나, IoT 장치의 주 위협은 설치된 장치 전체에 대한 원격 연결을, 인터넷을 통해 악용할 수 있는 확장성을 가진 사이버 공격이다. 미국 NIST(National Institute of Standards and Technology)의 SP 800-193 표준은 이런 공격으로부터 펌웨어와 구성 데이터를 보호하고, 성공적인 공격을 감지하고, 이로부터 복구하는 메커니즘을 지정한다. W77Q은 이 표준을 준수하는데 필요한 복원 기능을 제공한다. 복원에는 공격에 대한 보호, 공격 탐지, 공격으로부터 복구라는 3가지 요소를 갖추고 있다[그림 2].

 

 

[그림 2] W77Q는 보호, 감지, 복구를 통해 플랫폼 상태를 유지함으로써 신뢰성을 보장한다

암호화된 인증은 허용되지 않은 장치가 데이터에 액세스하려는 시도를 방지하며, 이는 외부 공격으로부터 기기를 보호해준다. 공격은 호스트 SoC에서 성공적으로 수행될 수 있기에, W77Q는 공격 발생 시 이를 감지하는 기능을 계속 유지한다. 예를 들어, 코드가 업데이트되거나 액세스될 때마다 저장된 코드는 손상 여부를 자동으로 확인한다. 또한, 호스트 장치 명령에서 코드 스캔을 수행할 수 있다.

만약, W77Q가 손상된 정품 인증 SoC가 자체 부트 코드를 손상시키는 공격을 감지했다면, 플래시 장치는 적절한 인증을 통해 자동으로 플랫폼 펌웨어를 복구한다. 이는 부트 코드를 이미 잘 알고 있는 세이프(Safe) 버전으로 복원하는 ‘세이프 폴백(Safe Fallback)’ 기능을 통해 이뤄진다. 인증된 감시 타이머로 작동하는 세이프 폴백 기능은 알려진 안전(Safe) 코드를 이용해 호스트 SoC를 클린 부팅으로 강제적으로 실행할 수 있다.

 

 

[그림 3] 계층화된 보안 기능 집합을 통해 사이버 공격에 대한 포괄적인 보호를 구현할 수 있다

윈본드는 고객이 쉽게 배포할 수 있도록 제품(Off-the-shelf set)에 대한 계층화된 보안 능력을 제공해오고 있다[그림 3]. 이와 함께 W77Q는 다음과 같은 성능을 지원한다.

- 보안 전문 지식 없이도 엔드투엔드에서 즉시 사용할 수 있는 보안

- 빠른 배포

- 보안 소프트웨어 공급 업체의 호환 제품 지원

- 간단한 보안 인증

- 경제성

윈본드는 표준 풋프린트와 함께 SPI NOR 플래시 패키지에 포괄적인 기능 세트를 제공함으로써, 사이버 공격에 대한 적절한 보호를 갖춘 IoT 장치가 시장에 출시될 수 있도록 보장한다.

 

자료제공: 윈본드(Winbond)


관련기사

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.