일반적인 하드웨어 보안 위협 및 이를 피하는 방법
하드웨어 공격은 일반적으로 뉴스에 오르지 않습니다. 하지만 헤드라인을 장식할 수는 있습니다. 하드웨어에 물리적으로 접근하는 것은 어렵지만 불가능한 것은 아닙니다. 결국, 이는 기업 스파이 활동, 금품 갈취, 중요 문서 훔치기 등의 수단이 될 수 있습니다. 이전 블로그 글을 읽어보셨다면, 하드웨어를 보호하는 것이 중요한 이유를 알고 싶다면, 일반적인 하드웨어 위협과 이를 피하는 방법을 알아보는 것이 좋습니다.
하위 시스템 취약점
데이터 센터와 서버를 물리적으로 통제하기 위해 필요한 모든 조치를 취하셨을 수 있습니다. 자격 증명과 보안 허가 없이는 사실상 서버에 접근할 수 없습니다. 또한, 소프트웨어와 네트워크를 보호하기 위해 필요한 예방 조치를 취하셨다는 점도 덧붙여 말씀드립니다. 즉, 주요 시스템이 안전하게 보호되고 있다는 의미입니다.
그러나 범죄자들은 보호 시스템 외부의 하위 시스템을 통해 사이드 채널을 공격할 수도 있습니다. 예를 들어, 대부분의 일반 하드 드라이브는 분리하여 다른 컴퓨터에 연결하여 모든 파일에 접근할 수 있습니다.
다음 전략은 하위 시스템의 보안을 강화하는 데 도움이 됩니다.
암호화 가속
암호화 가속은 소프트웨어가 아닌 하드웨어에서 암호화 기능을 수행하는 주변 장치입니다. 결과적으로 암호화는 하드웨어 수준에서 이루어지며 악용될 수 있는 소프트웨어 취약점을 제거합니다. 실제로 AES 소프트웨어에는 해커가 쉽게 해독할 수 있도록 악성 코드가 삽입될 수 있습니다. 반면 AES 하드웨어는 영향을 받지 않습니다.
순수 난수 생성기
Wi-Fi 네트워크에 연결하기 위해 인증 장치로 "무작위 코드 생성기"를 사용해 본 적이 있으신가요? 이러한 무작위 코드 생성기는 예상보다 훨씬 자주 쉽게 예측하거나 추측할 수 있는 패턴을 따릅니다. 대부분의 생성기는 시간을 기준으로 코드를 생성하며, 제품의 제조일이나 최초 작동일을 알 수 있는 방법이 있다면 해당 코드를 차감할 수도 있습니다. 시간은 진정한 무작위 요소가 아닙니다. 모든 단계에서 회사를 진정으로 보호하려면 무작위 코드 생성기가 진정한 무작위성을 보장해야 합니다. 그러기 위해서는 무작위적이지 않은 요소를 기반으로 하지 않도록 해야 합니다.
메모리 암호화
메모리와 메시지 암호화는 오랫동안 인류 역사의 일부였습니다. 각기 다른 문화권에서 비밀을 지키기 위해 암호화 장치를 발명하고 활용해 왔습니다. 암호(cypher)는 그 중 한 예일 뿐입니다. 최신 기술 발전으로 ROM과 RAM을 암호화하여 적절한 하드웨어 없이는 데이터에 대한 무단 접근을 방지할 수 있습니다. 또한 펌웨어 복제를 방지하는 읽기 보호 비트가 있는 마이크로컨트롤러도 많이 있습니다. 마지막으로, 암호화 기능이 있는 플래시 메모리와 외장 하드 드라이브도 시중에서 구입할 수 있습니다. 메인 시스템과 서버만큼 하위 시스템과 사이드 채널도 보호하는 것이 중요하다는 점을 기억하세요.
보안 부팅
시스템을 근본적으로 보호하려면 프로세서부터 시작해야 합니다. 프로세서는 정품 및 악성 코드를 실행할 수 있습니다. 따라서 프로세서가 정품 및 악성이 아닌 코드만 실행하도록 보장해야 합니다. 어떤 시스템의 핵심 부팅 코드든 그 진위 여부를 확인할 수 없지만, 후속 부팅 단계는 가능합니다. 바로 이 부분에서 범죄자들이 악성 코드를 삽입하려고 시도합니다.
부팅을 보호하는 한 가지 방법은 변경 불가능하고 코드 주입 공격에 면역이 있는 코드를 실행하는 것입니다. 이 코드는 로드될 애플리케이션을 검사하여 코드의 무결성을 확인합니다. 악성 코드가 주입되면 시스템은 제한된 상태로 실행되거나 운영 체제에 경고를 보내 부팅을 보호합니다.
신뢰 구역
이 전략은 보안 부팅과 관련이 있는데, 이 기술은 코드 프로세서가 제대로 실행되고 있는지 확인하는 데에도 도움이 되기 때문입니다. 대부분의 CPU 명령어는 문제가 없지만, 일부는 위험할 수 있으며 하드웨어, 스택 포인터 또는 중요 시스템에 대한 접근 권한을 제공할 수 있습니다. 오늘날 많은 SoC와 마이크로컨트롤러는 코드에 신뢰 영역을 활용하여 OS가 모든 명령어에 대해 가장 높은 접근 권한을 갖는 반면, 프로세스는 명령어 실행에 대한 낮은 접근 권한을 가지며 민감한 명령어에는 접근할 수 없습니다. 결과적으로 악성 코드가 삽입되더라도 프로세서의 중요 시스템에 손상을 입히거나 공격할 가능성이 줄어듭니다.
탬퍼 핀
일반적인 하드웨어 공격에는 디버그 포트나 메모리 채널과 같은 I/O에 접근하기 위해 부품을 물리적으로 제거하는 것이 포함됩니다. 이러한 공격을 피하는 방법은 무엇일까요? 바로 변조 핀을 구현하는 것입니다. 변조 핀은 인클로저 개방과 같은 외부 기계적 이벤트를 감지할 수 있습니다. 감지되면 변조 핀은 프로세서에 재부팅과 같은 특정 루틴을 수행하도록 지시하여 민감한 데이터가 읽히지 않도록 하거나 메모리를 완전히 삭제합니다. 변조 핀은 특정 기능이 없는 것처럼 위장하여 공격자의 탐지를 피할 수 있습니다.
버스 모니터
하드웨어 보호 분야의 최신 기술 발전은 바로 버스 모니터입니다. 이 버스는 일반적으로 마이크로컨트롤러의 SoC에 통합되어 시스템과 독립적으로 작동합니다. 또한, 버스 모니터는 I/O 핀, 레지스터, 내부 데이터 버스, 프로그래밍 포트 등 여러 항목과 버스에 상호 연결됩니다. 정상적인 작동 중에 버스는 다이의 내부 연결을 활용하여 정상 상태를 모니터링하고 학습합니다. 공격자가 악성 코드를 삽입하거나 정상 상태에 문제가 발생하면 버스 모니터가 해당 이상 징후를 감지합니다. 이로 인해 운영 체제에서 예외가 발생하거나 시스템이 재부팅되는 경우도 있습니다. 최첨단 버스 모니터는 잠재적인 악성 요청을 프로세서에서 다른 곳으로 돌리고, 공격 시도를 기록하는 동안 null 값을 반환할 수 있습니다.
하드웨어 보호를 강화하는 이 7가지 전략 또는 기법이 귀사의 운영에 도움이 되기를 바랍니다. 분산 인프라, IoT 애플리케이션, 엣지 컴퓨팅 장비의 경우, 제한 구역 외부에 장비를 설치했을 수 있으므로 하위 시스템과 사이드 채널을 보호하는 것이 특히 중요합니다. 따라서 공항, 병원, 자동화된 공장이나 창고, 은행, 소매점 등은 하드웨어 공격에 더 취약할 수 있습니다.
더 자세히 알고 싶으신가요? 저희 블로그를 읽어보세요. 시설에 하드웨어 강화를 적용하는 방법에 대한 5가지 팁 또는에 대해 알아보세요 하드웨어 OEM이 하드웨어 수준에서부터 비즈니스를 보호하는 데 어떻게 도움을 줄 수 있는지 알아보세요. 자세한 내용은 사이버보안 블로그 시리즈에서 읽어보세요 .