SCW 아이콘
영웅 배경, 구분선 없음
블로그

우수한 마이크로파가 고장난 경우: 임베디드 시스템의 보안이 개발자에게 다음 보스전이 되는 이유

마티아스 마두 박사
게시됨 Aug 30, 2021
마지막 업데이트: 2026년 3월 10일

대중문화에는 악당 AI나 로봇, 그리고 인간의 주인을 공격하는 가전제품에 대한 언급이 많습니다. 공상과학의 재미와 환상이 깊게 스며들어 있지만,IoT 및 커넥티드 디바이스가 가정에서 보편화됨에 따라 사이버 보안과 안전에 관한 논의 역시 확산되어야 합니다. 소프트웨어는 우리 주변 어디에나 존재하며, 혁신과 편의성을 가져다주는 모든 정교한 작업을 수행하기 위해 얼마나 많은 코드 줄에 의존하는지 우리는 종종 잊곤 합니다. 웹 기반 소프트웨어, API, 모바일 기기와 마찬가지로 임베디드 시스템 내 취약한 코드는 공격자가 실제로 발견할 경우 악용될 수 있습니다.

마이크로파 군대가 인류를 노예로 만들 가능성은 낮지만(다만 테슬라봇은 조금 걱정스럽습니다), 사이버 공격의 결과로 악의적인 사이버 사건이 발생할 가능성은 여전히 존재합니다. 우리의 자동차, 비행기, 의료 기기 중에는 중요한 작업을 수행하기 위해 복잡한 임베디드 시스템 코드에 의존하는 것들도 있으며, 이러한 대상들이 침해당할 가능성은 우려할 만한 수준을 넘어 생명을 위협할 수 있습니다.

세상에 유통되는 다른 종류의 소프트웨어와 마찬가지로, 개발자는 제작 단계의 초기에 코드를 접합니다. 그리고 다른 모든 종류의 소프트웨어와 마찬가지로, 이 코드 역시 제품이 공개되기 전에 발견되지 않을 수 있는 교묘하고 흔한 취약점의 온상이 될 수 있습니다.

개발자는 보안 전문가가 아니므로, 어떤 기업도 그들에게 그러한 역할을 기대해서는 안 됩니다. 그러나 개발자는 자신과 관련된 유형의 위협에 대처하기 위한 훨씬 강력한 무기를 갖출 수 있습니다. 기술적 요구사항이 지속적으로 진화함에 따라, 임베디드 시스템(일반적으로 C나 C++로 작성됨)이 더 빈번하게 사용되고 있으며, 이러한 환경의 도구에 대한 개발자 대상의 전문적인 보안 교육이 필수적입니다.

폭발하는 에어프라이어, 악당 차량... 앉아 있는 건 오리인가?

그러나 모든 보안 개발 관련 표준과 규정이 우리의 안전을 지키기 위해서는 모든 종류의 소프트웨어 보안을 향한 보다 정확하고 의미 있는 진전이 필요합니다. 누군가가 에어플라이어를 해킹함으로써 발생하는 문제를 상상하는 것은 터무니없어 보일 수 있지만, 실제로 발생한 원격 코드 실행 공격(공격자가 온도를 위험한 수준까지 상승시킬 수 있게 하는) 형태의 차량 탈취로 이어지는 취약점 역시 마찬가지입니다.

특히 차량은 특히 복잡하며, 여러 내장 시스템이 탑재되어 각각 자동 와이퍼부터 엔진 및 브레이크 기능에 이르기까지 모든 미세한 기능을 처리합니다. Wi-Fi, Bluetooth, GPS 등 계속 증가하는 통신 기술 스택과 얽힌 커넥티드 비클은 여러 공격 경로에 노출된 복잡한 디지털 인프라가 되었습니다. 그리고 2023년까지 전 세계적으로 7,630만 대의 커넥티드 카가 도로를 달릴 것으로 예상되며, 이는 진정한 안전을 구축하기 위한 방어 기반의 단일한 토대입니다.

미슬라 (Misra )는 임베디드 시스템의 코드 안전성, 보안성, 이식성, 신뢰성을 촉진하기 위한 가이드라인을 수립하고 임베디드 시스템 위협과의 싸움에 적극적으로 임하는 주요 기관입니다. 이러한 가이드라인은 모든 기업이 임베디드 시스템 프로젝트에서 지향해야 할 기준의 북극성입니다.

그러나 이 골드 스탠다드에 부합하는 코드를 작성하고 실행하기 위해서는 보안에 대한 인식은 물론, 도구에 대한 확신을 가진 임베디드 시스템 엔지니어가 필요합니다.

임베디드 시스템 보안 기술 향상은 왜 그렇게 구체적인가요?

C 및 C++ 프로그래밍 언어는 오늘날의 기준으로 노년층을 위한 언어이지만, 여전히 널리 사용되고 있습니다. 임베디드 C/C++는 임베디드 시스템 코드베이스 기능의 핵심을 형성하며, 임베디드 C/C++는 커넥티드 디바이스 세계의 일부로서 현대적이고 빛나는 삶을 살고 있습니다.

이 언어들은 상당히 오래된 뿌리를 가지고 있으며, 인젝션 결함이나 버퍼 오버플로와 같은 일반적인 문제에 대해서는 유사한 취약성 행동을 보이지만, 개발자가 임베디드 시스템의 보안 버그를 진정으로 완화하려면 개발자가 작업 환경을 모방하는 코드를 실제로 사용해야 합니다.일반적인 보안 관행에서 흔히 볼 수 있는 C 언어 교육은 임베디드 C 환경에서 작업할 때 추가적인 시간과 노력을 들이는 만큼 강력하고 기억에 남는 것은 아닙니다.

현대 차량에는 수십 개에서 100개가 넘는 임베디드 시스템이 탑재되어 있기 때문에, 개발자가 IDE에서 무엇을 찾아야 하고 어떻게 수정해야 하는지에 대한 정확한 교육을 받는 것이 필수적입니다.

임베디드 C/C++ 비즈니스 로직의 결함은 어떤 것들이 있을까요? 전문가처럼 문제를 정확히 파악하고 수정할 수 있는지 살펴보겠습니다.

임베디드 시스템을 1층부터 보호하는 것은 모두의 책임입니다

많은 조직에서는 적어도 개발자의 책임에 관해서는 개발 속도가 보안보다 우선시되는 것이 현실입니다. 안전한 코드를 작성하는 능력이 평가받는 경우는 거의 없지만, 우수한 기능을 신속하게 개발하는 것이 최고의 기준으로 여겨집니다. 소프트웨어에 대한 수요는 계속 증가하고 있지만, 이러한 문화가 우리가 취약점과 그에 따른 사이버 공격과의 싸움에서 패배하는 원인이 되고 있습니다.

개발자가 교육을 받지 못했다고 해서 그 책임을 개발자에게 돌릴 수는 없습니다. AppSec 팀의 누군가가 개발자 커뮤니티 전체에 적합하고 접근하기 쉬운(평가 가능하다는 것은 물론) 기술 향상 프로그램을 권장함으로써 이를 보완하는 데 도움을 주어야 합니다. 소프트웨어 개발 프로젝트의 초기 단계에서 보안은 최우선 고려 사항이며, 모든 사람, 특히 개발자가 자신의 역할을 수행하는 데 필요한 것을 제공받아야 합니다.

임베디드 시스템의 보안 문제를 직접 체험해 보세요

버퍼 오버플로, 인젝션 결함, 비즈니스 로직 버그는 모두 임베디드 시스템 개발에서 흔히 발생하는 함정입니다. 차량이나 장치에 탑재된 마이크로컨트롤러의 복잡한 구조 깊숙이 숨겨진 결함은 보안 관점에서 치명적인 결과를 초래할 수 있습니다.

버퍼 오버플로는 특히 빈번하게 발생합니다. 앞서 설명한 에어프라이어가 어떻게 위험에 노출되었는지(원격 코드 실행을 가능하게 하는) 자세히 알고 싶다면, 이 보고서 CVE-2020-28592를 확인하세요.


버퍼 오버플로 기록을 생성합니다.



어땠나요? 방문 www.securecodewarrior.com 임베디드 시스템 보안에 관한 정확하고 효과적인 교육을 실시합니다.

리소스 표시
리소스 표시

웹 기반 소프트웨어, API, 모바일 기기와 마찬가지로 임베디드 시스템 내 취약한 코드는 공격자에 의해 실제로 발견될 경우 악용될 가능성이 있습니다.

더 관심이 있으신가요?

마티아스 마두 박사는 보안 전문가, 연구원, CTO, 그리고 Secure Code Warrior의 공동 창립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션을 중심으로 애플리케이션 보안 분야 박사 학위를 취득했습니다.이후 미국의 Fortify에 합류하여 개발자가 안전한 코드를 작성하도록 지원하지 않고 단순히 코드 문제를 탐지하는 것만으로는 불충분하다는 점을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안 부담을 줄이며 고객 기대를 뛰어넘는 제품을 개발하게 되었습니다. Team Awesome의 일원으로 책상에 있지 않을 때는 RSA 컨퍼런스, BlackHat, DefCon 등의 컨퍼런스에서 발표하는 무대 발표를 즐깁니다.

더 알아보세요

Secure Code Warrior는 소프트웨어 개발 라이프사이클 전반에 걸쳐 코드를 보호하고 사이버보안을 최우선으로 하는 문화를 구축하는 데 도움을 드립니다. 애플리케이션 보안 관리자, 개발자, CISO 또는 보안 담당자이든, 안전하지 않은 코드와 관련된 위험을 줄이는 데 도움을 드립니다.

데모 예약
공유:
링크드인 브랜드사회적x 로고
저자
마티아스 마두 박사
게시됨 Aug 30, 2021

마티아스 마두 박사는 보안 전문가, 연구원, CTO, 그리고 Secure Code Warrior의 공동 창립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션을 중심으로 애플리케이션 보안 분야 박사 학위를 취득했습니다.이후 미국의 Fortify에 합류하여 개발자가 안전한 코드를 작성하도록 지원하지 않고 단순히 코드 문제를 탐지하는 것만으로는 불충분하다는 점을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안 부담을 줄이며 고객 기대를 뛰어넘는 제품을 개발하게 되었습니다. Team Awesome의 일원으로 책상에 있지 않을 때는 RSA 컨퍼런스, BlackHat, DefCon 등의 컨퍼런스에서 발표하는 무대 발표를 즐깁니다.

마티아스는 15년 이상의 소프트웨어 보안 실무 경험을 가진 연구자이자 개발자입니다. 포티파이 소프트웨어(Fortify Software)와 자신의 회사인 센세이 시큐리티(Sensei Security) 등 기업을 대상으로 솔루션을 개발해 왔습니다. 마티아스는 경력 전반에 걸쳐 여러 애플리케이션 보안 연구 프로젝트를 주도했으며, 이는 상용 제품으로 이어져 10건 이상의 특허를 취득했습니다.업무 외 시간에는 마티아스는 고급 애플리케이션 보안 교육 과정의 강사로 활동하며, RSA 컨퍼런스, 블랙햇, 디프콘, BSIMM, OWASP 앱섹, 브루콘 등 글로벌 컨퍼런스에서 정기적으로 발표를 진행하고 있습니다.

마티아스는 겐트 대학교에서 컴퓨터 공학 박사 학위를 취득했으며, 그곳에서 애플리케이션의 내부 동작을 숨기기 위한 프로그램 난독화를 통한 애플리케이션 보안을 연구했습니다.

공유:
링크드인 브랜드사회적x 로고

대중문화에는 악당 AI나 로봇, 그리고 인간의 주인을 공격하는 가전제품에 대한 언급이 많습니다. 공상과학의 재미와 환상이 깊게 스며들어 있지만,IoT 및 커넥티드 디바이스가 가정에서 보편화됨에 따라 사이버 보안과 안전에 관한 논의 역시 확산되어야 합니다. 소프트웨어는 우리 주변 어디에나 존재하며, 혁신과 편의성을 가져다주는 모든 정교한 작업을 수행하기 위해 얼마나 많은 코드 줄에 의존하는지 우리는 종종 잊곤 합니다. 웹 기반 소프트웨어, API, 모바일 기기와 마찬가지로 임베디드 시스템 내 취약한 코드는 공격자가 실제로 발견할 경우 악용될 수 있습니다.

마이크로파 군대가 인류를 노예로 만들 가능성은 낮지만(다만 테슬라봇은 조금 걱정스럽습니다), 사이버 공격의 결과로 악의적인 사이버 사건이 발생할 가능성은 여전히 존재합니다. 우리의 자동차, 비행기, 의료 기기 중에는 중요한 작업을 수행하기 위해 복잡한 임베디드 시스템 코드에 의존하는 것들도 있으며, 이러한 대상들이 침해당할 가능성은 우려할 만한 수준을 넘어 생명을 위협할 수 있습니다.

세상에 유통되는 다른 종류의 소프트웨어와 마찬가지로, 개발자는 제작 단계의 초기에 코드를 접합니다. 그리고 다른 모든 종류의 소프트웨어와 마찬가지로, 이 코드 역시 제품이 공개되기 전에 발견되지 않을 수 있는 교묘하고 흔한 취약점의 온상이 될 수 있습니다.

개발자는 보안 전문가가 아니므로, 어떤 기업도 그들에게 그러한 역할을 기대해서는 안 됩니다. 그러나 개발자는 자신과 관련된 유형의 위협에 대처하기 위한 훨씬 강력한 무기를 갖출 수 있습니다. 기술적 요구사항이 지속적으로 진화함에 따라, 임베디드 시스템(일반적으로 C나 C++로 작성됨)이 더 빈번하게 사용되고 있으며, 이러한 환경의 도구에 대한 개발자 대상의 전문적인 보안 교육이 필수적입니다.

폭발하는 에어프라이어, 악당 차량... 앉아 있는 건 오리인가?

그러나 모든 보안 개발 관련 표준과 규정이 우리의 안전을 지키기 위해서는 모든 종류의 소프트웨어 보안을 향한 보다 정확하고 의미 있는 진전이 필요합니다. 누군가가 에어플라이어를 해킹함으로써 발생하는 문제를 상상하는 것은 터무니없어 보일 수 있지만, 실제로 발생한 원격 코드 실행 공격(공격자가 온도를 위험한 수준까지 상승시킬 수 있게 하는) 형태의 차량 탈취로 이어지는 취약점 역시 마찬가지입니다.

특히 차량은 특히 복잡하며, 여러 내장 시스템이 탑재되어 각각 자동 와이퍼부터 엔진 및 브레이크 기능에 이르기까지 모든 미세한 기능을 처리합니다. Wi-Fi, Bluetooth, GPS 등 계속 증가하는 통신 기술 스택과 얽힌 커넥티드 비클은 여러 공격 경로에 노출된 복잡한 디지털 인프라가 되었습니다. 그리고 2023년까지 전 세계적으로 7,630만 대의 커넥티드 카가 도로를 달릴 것으로 예상되며, 이는 진정한 안전을 구축하기 위한 방어 기반의 단일한 토대입니다.

미슬라 (Misra )는 임베디드 시스템의 코드 안전성, 보안성, 이식성, 신뢰성을 촉진하기 위한 가이드라인을 수립하고 임베디드 시스템 위협과의 싸움에 적극적으로 임하는 주요 기관입니다. 이러한 가이드라인은 모든 기업이 임베디드 시스템 프로젝트에서 지향해야 할 기준의 북극성입니다.

그러나 이 골드 스탠다드에 부합하는 코드를 작성하고 실행하기 위해서는 보안에 대한 인식은 물론, 도구에 대한 확신을 가진 임베디드 시스템 엔지니어가 필요합니다.

임베디드 시스템 보안 기술 향상은 왜 그렇게 구체적인가요?

C 및 C++ 프로그래밍 언어는 오늘날의 기준으로 노년층을 위한 언어이지만, 여전히 널리 사용되고 있습니다. 임베디드 C/C++는 임베디드 시스템 코드베이스 기능의 핵심을 형성하며, 임베디드 C/C++는 커넥티드 디바이스 세계의 일부로서 현대적이고 빛나는 삶을 살고 있습니다.

이 언어들은 상당히 오래된 뿌리를 가지고 있으며, 인젝션 결함이나 버퍼 오버플로와 같은 일반적인 문제에 대해서는 유사한 취약성 행동을 보이지만, 개발자가 임베디드 시스템의 보안 버그를 진정으로 완화하려면 개발자가 작업 환경을 모방하는 코드를 실제로 사용해야 합니다.일반적인 보안 관행에서 흔히 볼 수 있는 C 언어 교육은 임베디드 C 환경에서 작업할 때 추가적인 시간과 노력을 들이는 만큼 강력하고 기억에 남는 것은 아닙니다.

현대 차량에는 수십 개에서 100개가 넘는 임베디드 시스템이 탑재되어 있기 때문에, 개발자가 IDE에서 무엇을 찾아야 하고 어떻게 수정해야 하는지에 대한 정확한 교육을 받는 것이 필수적입니다.

임베디드 C/C++ 비즈니스 로직의 결함은 어떤 것들이 있을까요? 전문가처럼 문제를 정확히 파악하고 수정할 수 있는지 살펴보겠습니다.

임베디드 시스템을 1층부터 보호하는 것은 모두의 책임입니다

많은 조직에서는 적어도 개발자의 책임에 관해서는 개발 속도가 보안보다 우선시되는 것이 현실입니다. 안전한 코드를 작성하는 능력이 평가받는 경우는 거의 없지만, 우수한 기능을 신속하게 개발하는 것이 최고의 기준으로 여겨집니다. 소프트웨어에 대한 수요는 계속 증가하고 있지만, 이러한 문화가 우리가 취약점과 그에 따른 사이버 공격과의 싸움에서 패배하는 원인이 되고 있습니다.

개발자가 교육을 받지 못했다고 해서 그 책임을 개발자에게 돌릴 수는 없습니다. AppSec 팀의 누군가가 개발자 커뮤니티 전체에 적합하고 접근하기 쉬운(평가 가능하다는 것은 물론) 기술 향상 프로그램을 권장함으로써 이를 보완하는 데 도움을 주어야 합니다. 소프트웨어 개발 프로젝트의 초기 단계에서 보안은 최우선 고려 사항이며, 모든 사람, 특히 개발자가 자신의 역할을 수행하는 데 필요한 것을 제공받아야 합니다.

임베디드 시스템의 보안 문제를 직접 체험해 보세요

버퍼 오버플로, 인젝션 결함, 비즈니스 로직 버그는 모두 임베디드 시스템 개발에서 흔히 발생하는 함정입니다. 차량이나 장치에 탑재된 마이크로컨트롤러의 복잡한 구조 깊숙이 숨겨진 결함은 보안 관점에서 치명적인 결과를 초래할 수 있습니다.

버퍼 오버플로는 특히 빈번하게 발생합니다. 앞서 설명한 에어프라이어가 어떻게 위험에 노출되었는지(원격 코드 실행을 가능하게 하는) 자세히 알고 싶다면, 이 보고서 CVE-2020-28592를 확인하세요.


버퍼 오버플로 기록을 생성합니다.



어땠나요? 방문 www.securecodewarrior.com 임베디드 시스템 보안에 관한 정확하고 효과적인 교육을 실시합니다.

리소스 표시
리소스 표시

보고서를 다운로드하려면 아래 양식을 작성해 주세요.

당사 제품 및/또는 관련 보안 코딩 주제에 관한 정보를 발송할 수 있도록 허락해 주십시오. 당사는 고객의 개인정보를 항상 세심한 주의를 기울여 처리하며, 마케팅 목적으로 타사에 판매하지 않습니다.

발신
scw 성공 아이콘
scw 오류 아이콘
양식을 제출하려면 '분석' 쿠키를 활성화해 주세요. 설정이 완료되면 다시 비활성화해도 됩니다.

대중문화에는 악당 AI나 로봇, 그리고 인간의 주인을 공격하는 가전제품에 대한 언급이 많습니다. 공상과학의 재미와 환상이 깊게 스며들어 있지만,IoT 및 커넥티드 디바이스가 가정에서 보편화됨에 따라 사이버 보안과 안전에 관한 논의 역시 확산되어야 합니다. 소프트웨어는 우리 주변 어디에나 존재하며, 혁신과 편의성을 가져다주는 모든 정교한 작업을 수행하기 위해 얼마나 많은 코드 줄에 의존하는지 우리는 종종 잊곤 합니다. 웹 기반 소프트웨어, API, 모바일 기기와 마찬가지로 임베디드 시스템 내 취약한 코드는 공격자가 실제로 발견할 경우 악용될 수 있습니다.

마이크로파 군대가 인류를 노예로 만들 가능성은 낮지만(다만 테슬라봇은 조금 걱정스럽습니다), 사이버 공격의 결과로 악의적인 사이버 사건이 발생할 가능성은 여전히 존재합니다. 우리의 자동차, 비행기, 의료 기기 중에는 중요한 작업을 수행하기 위해 복잡한 임베디드 시스템 코드에 의존하는 것들도 있으며, 이러한 대상들이 침해당할 가능성은 우려할 만한 수준을 넘어 생명을 위협할 수 있습니다.

세상에 유통되는 다른 종류의 소프트웨어와 마찬가지로, 개발자는 제작 단계의 초기에 코드를 접합니다. 그리고 다른 모든 종류의 소프트웨어와 마찬가지로, 이 코드 역시 제품이 공개되기 전에 발견되지 않을 수 있는 교묘하고 흔한 취약점의 온상이 될 수 있습니다.

개발자는 보안 전문가가 아니므로, 어떤 기업도 그들에게 그러한 역할을 기대해서는 안 됩니다. 그러나 개발자는 자신과 관련된 유형의 위협에 대처하기 위한 훨씬 강력한 무기를 갖출 수 있습니다. 기술적 요구사항이 지속적으로 진화함에 따라, 임베디드 시스템(일반적으로 C나 C++로 작성됨)이 더 빈번하게 사용되고 있으며, 이러한 환경의 도구에 대한 개발자 대상의 전문적인 보안 교육이 필수적입니다.

폭발하는 에어프라이어, 악당 차량... 앉아 있는 건 오리인가?

그러나 모든 보안 개발 관련 표준과 규정이 우리의 안전을 지키기 위해서는 모든 종류의 소프트웨어 보안을 향한 보다 정확하고 의미 있는 진전이 필요합니다. 누군가가 에어플라이어를 해킹함으로써 발생하는 문제를 상상하는 것은 터무니없어 보일 수 있지만, 실제로 발생한 원격 코드 실행 공격(공격자가 온도를 위험한 수준까지 상승시킬 수 있게 하는) 형태의 차량 탈취로 이어지는 취약점 역시 마찬가지입니다.

특히 차량은 특히 복잡하며, 여러 내장 시스템이 탑재되어 각각 자동 와이퍼부터 엔진 및 브레이크 기능에 이르기까지 모든 미세한 기능을 처리합니다. Wi-Fi, Bluetooth, GPS 등 계속 증가하는 통신 기술 스택과 얽힌 커넥티드 비클은 여러 공격 경로에 노출된 복잡한 디지털 인프라가 되었습니다. 그리고 2023년까지 전 세계적으로 7,630만 대의 커넥티드 카가 도로를 달릴 것으로 예상되며, 이는 진정한 안전을 구축하기 위한 방어 기반의 단일한 토대입니다.

미슬라 (Misra )는 임베디드 시스템의 코드 안전성, 보안성, 이식성, 신뢰성을 촉진하기 위한 가이드라인을 수립하고 임베디드 시스템 위협과의 싸움에 적극적으로 임하는 주요 기관입니다. 이러한 가이드라인은 모든 기업이 임베디드 시스템 프로젝트에서 지향해야 할 기준의 북극성입니다.

그러나 이 골드 스탠다드에 부합하는 코드를 작성하고 실행하기 위해서는 보안에 대한 인식은 물론, 도구에 대한 확신을 가진 임베디드 시스템 엔지니어가 필요합니다.

임베디드 시스템 보안 기술 향상은 왜 그렇게 구체적인가요?

C 및 C++ 프로그래밍 언어는 오늘날의 기준으로 노년층을 위한 언어이지만, 여전히 널리 사용되고 있습니다. 임베디드 C/C++는 임베디드 시스템 코드베이스 기능의 핵심을 형성하며, 임베디드 C/C++는 커넥티드 디바이스 세계의 일부로서 현대적이고 빛나는 삶을 살고 있습니다.

이 언어들은 상당히 오래된 뿌리를 가지고 있으며, 인젝션 결함이나 버퍼 오버플로와 같은 일반적인 문제에 대해서는 유사한 취약성 행동을 보이지만, 개발자가 임베디드 시스템의 보안 버그를 진정으로 완화하려면 개발자가 작업 환경을 모방하는 코드를 실제로 사용해야 합니다.일반적인 보안 관행에서 흔히 볼 수 있는 C 언어 교육은 임베디드 C 환경에서 작업할 때 추가적인 시간과 노력을 들이는 만큼 강력하고 기억에 남는 것은 아닙니다.

현대 차량에는 수십 개에서 100개가 넘는 임베디드 시스템이 탑재되어 있기 때문에, 개발자가 IDE에서 무엇을 찾아야 하고 어떻게 수정해야 하는지에 대한 정확한 교육을 받는 것이 필수적입니다.

임베디드 C/C++ 비즈니스 로직의 결함은 어떤 것들이 있을까요? 전문가처럼 문제를 정확히 파악하고 수정할 수 있는지 살펴보겠습니다.

임베디드 시스템을 1층부터 보호하는 것은 모두의 책임입니다

많은 조직에서는 적어도 개발자의 책임에 관해서는 개발 속도가 보안보다 우선시되는 것이 현실입니다. 안전한 코드를 작성하는 능력이 평가받는 경우는 거의 없지만, 우수한 기능을 신속하게 개발하는 것이 최고의 기준으로 여겨집니다. 소프트웨어에 대한 수요는 계속 증가하고 있지만, 이러한 문화가 우리가 취약점과 그에 따른 사이버 공격과의 싸움에서 패배하는 원인이 되고 있습니다.

개발자가 교육을 받지 못했다고 해서 그 책임을 개발자에게 돌릴 수는 없습니다. AppSec 팀의 누군가가 개발자 커뮤니티 전체에 적합하고 접근하기 쉬운(평가 가능하다는 것은 물론) 기술 향상 프로그램을 권장함으로써 이를 보완하는 데 도움을 주어야 합니다. 소프트웨어 개발 프로젝트의 초기 단계에서 보안은 최우선 고려 사항이며, 모든 사람, 특히 개발자가 자신의 역할을 수행하는 데 필요한 것을 제공받아야 합니다.

임베디드 시스템의 보안 문제를 직접 체험해 보세요

버퍼 오버플로, 인젝션 결함, 비즈니스 로직 버그는 모두 임베디드 시스템 개발에서 흔히 발생하는 함정입니다. 차량이나 장치에 탑재된 마이크로컨트롤러의 복잡한 구조 깊숙이 숨겨진 결함은 보안 관점에서 치명적인 결과를 초래할 수 있습니다.

버퍼 오버플로는 특히 빈번하게 발생합니다. 앞서 설명한 에어프라이어가 어떻게 위험에 노출되었는지(원격 코드 실행을 가능하게 하는) 자세히 알고 싶다면, 이 보고서 CVE-2020-28592를 확인하세요.


버퍼 오버플로 기록을 생성합니다.



어땠나요? 방문 www.securecodewarrior.com 임베디드 시스템 보안에 관한 정확하고 효과적인 교육을 실시합니다.

온라인 세미나 보기
시작하자
더 알아보세요

아래 링크를 클릭하여 이 자료의 PDF를 다운로드하십시오.

Secure Code Warrior는 소프트웨어 개발 라이프사이클 전반에 걸쳐 코드를 보호하고 사이버보안을 최우선으로 하는 문화를 구축하는 데 도움을 드립니다. 애플리케이션 보안 관리자, 개발자, CISO 또는 보안 담당자이든, 안전하지 않은 코드와 관련된 위험을 줄이는 데 도움을 드립니다.

보고서 표시데모 예약
리소스 표시
공유:
링크드인 브랜드사회적x 로고
더 관심이 있으신가요?

공유:
링크드인 브랜드사회적x 로고
저자
마티아스 마두 박사
게시됨 Aug 30, 2021

마티아스 마두 박사는 보안 전문가, 연구원, CTO, 그리고 Secure Code Warrior의 공동 창립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션을 중심으로 애플리케이션 보안 분야 박사 학위를 취득했습니다.이후 미국의 Fortify에 합류하여 개발자가 안전한 코드를 작성하도록 지원하지 않고 단순히 코드 문제를 탐지하는 것만으로는 불충분하다는 점을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안 부담을 줄이며 고객 기대를 뛰어넘는 제품을 개발하게 되었습니다. Team Awesome의 일원으로 책상에 있지 않을 때는 RSA 컨퍼런스, BlackHat, DefCon 등의 컨퍼런스에서 발표하는 무대 발표를 즐깁니다.

마티아스는 15년 이상의 소프트웨어 보안 실무 경험을 가진 연구자이자 개발자입니다. 포티파이 소프트웨어(Fortify Software)와 자신의 회사인 센세이 시큐리티(Sensei Security) 등 기업을 대상으로 솔루션을 개발해 왔습니다. 마티아스는 경력 전반에 걸쳐 여러 애플리케이션 보안 연구 프로젝트를 주도했으며, 이는 상용 제품으로 이어져 10건 이상의 특허를 취득했습니다.업무 외 시간에는 마티아스는 고급 애플리케이션 보안 교육 과정의 강사로 활동하며, RSA 컨퍼런스, 블랙햇, 디프콘, BSIMM, OWASP 앱섹, 브루콘 등 글로벌 컨퍼런스에서 정기적으로 발표를 진행하고 있습니다.

마티아스는 겐트 대학교에서 컴퓨터 공학 박사 학위를 취득했으며, 그곳에서 애플리케이션의 내부 동작을 숨기기 위한 프로그램 난독화를 통한 애플리케이션 보안을 연구했습니다.

공유:
링크드인 브랜드사회적x 로고

대중문화에는 악당 AI나 로봇, 그리고 인간의 주인을 공격하는 가전제품에 대한 언급이 많습니다. 공상과학의 재미와 환상이 깊게 스며들어 있지만,IoT 및 커넥티드 디바이스가 가정에서 보편화됨에 따라 사이버 보안과 안전에 관한 논의 역시 확산되어야 합니다. 소프트웨어는 우리 주변 어디에나 존재하며, 혁신과 편의성을 가져다주는 모든 정교한 작업을 수행하기 위해 얼마나 많은 코드 줄에 의존하는지 우리는 종종 잊곤 합니다. 웹 기반 소프트웨어, API, 모바일 기기와 마찬가지로 임베디드 시스템 내 취약한 코드는 공격자가 실제로 발견할 경우 악용될 수 있습니다.

마이크로파 군대가 인류를 노예로 만들 가능성은 낮지만(다만 테슬라봇은 조금 걱정스럽습니다), 사이버 공격의 결과로 악의적인 사이버 사건이 발생할 가능성은 여전히 존재합니다. 우리의 자동차, 비행기, 의료 기기 중에는 중요한 작업을 수행하기 위해 복잡한 임베디드 시스템 코드에 의존하는 것들도 있으며, 이러한 대상들이 침해당할 가능성은 우려할 만한 수준을 넘어 생명을 위협할 수 있습니다.

세상에 유통되는 다른 종류의 소프트웨어와 마찬가지로, 개발자는 제작 단계의 초기에 코드를 접합니다. 그리고 다른 모든 종류의 소프트웨어와 마찬가지로, 이 코드 역시 제품이 공개되기 전에 발견되지 않을 수 있는 교묘하고 흔한 취약점의 온상이 될 수 있습니다.

개발자는 보안 전문가가 아니므로, 어떤 기업도 그들에게 그러한 역할을 기대해서는 안 됩니다. 그러나 개발자는 자신과 관련된 유형의 위협에 대처하기 위한 훨씬 강력한 무기를 갖출 수 있습니다. 기술적 요구사항이 지속적으로 진화함에 따라, 임베디드 시스템(일반적으로 C나 C++로 작성됨)이 더 빈번하게 사용되고 있으며, 이러한 환경의 도구에 대한 개발자 대상의 전문적인 보안 교육이 필수적입니다.

폭발하는 에어프라이어, 악당 차량... 앉아 있는 건 오리인가?

그러나 모든 보안 개발 관련 표준과 규정이 우리의 안전을 지키기 위해서는 모든 종류의 소프트웨어 보안을 향한 보다 정확하고 의미 있는 진전이 필요합니다. 누군가가 에어플라이어를 해킹함으로써 발생하는 문제를 상상하는 것은 터무니없어 보일 수 있지만, 실제로 발생한 원격 코드 실행 공격(공격자가 온도를 위험한 수준까지 상승시킬 수 있게 하는) 형태의 차량 탈취로 이어지는 취약점 역시 마찬가지입니다.

특히 차량은 특히 복잡하며, 여러 내장 시스템이 탑재되어 각각 자동 와이퍼부터 엔진 및 브레이크 기능에 이르기까지 모든 미세한 기능을 처리합니다. Wi-Fi, Bluetooth, GPS 등 계속 증가하는 통신 기술 스택과 얽힌 커넥티드 비클은 여러 공격 경로에 노출된 복잡한 디지털 인프라가 되었습니다. 그리고 2023년까지 전 세계적으로 7,630만 대의 커넥티드 카가 도로를 달릴 것으로 예상되며, 이는 진정한 안전을 구축하기 위한 방어 기반의 단일한 토대입니다.

미슬라 (Misra )는 임베디드 시스템의 코드 안전성, 보안성, 이식성, 신뢰성을 촉진하기 위한 가이드라인을 수립하고 임베디드 시스템 위협과의 싸움에 적극적으로 임하는 주요 기관입니다. 이러한 가이드라인은 모든 기업이 임베디드 시스템 프로젝트에서 지향해야 할 기준의 북극성입니다.

그러나 이 골드 스탠다드에 부합하는 코드를 작성하고 실행하기 위해서는 보안에 대한 인식은 물론, 도구에 대한 확신을 가진 임베디드 시스템 엔지니어가 필요합니다.

임베디드 시스템 보안 기술 향상은 왜 그렇게 구체적인가요?

C 및 C++ 프로그래밍 언어는 오늘날의 기준으로 노년층을 위한 언어이지만, 여전히 널리 사용되고 있습니다. 임베디드 C/C++는 임베디드 시스템 코드베이스 기능의 핵심을 형성하며, 임베디드 C/C++는 커넥티드 디바이스 세계의 일부로서 현대적이고 빛나는 삶을 살고 있습니다.

이 언어들은 상당히 오래된 뿌리를 가지고 있으며, 인젝션 결함이나 버퍼 오버플로와 같은 일반적인 문제에 대해서는 유사한 취약성 행동을 보이지만, 개발자가 임베디드 시스템의 보안 버그를 진정으로 완화하려면 개발자가 작업 환경을 모방하는 코드를 실제로 사용해야 합니다.일반적인 보안 관행에서 흔히 볼 수 있는 C 언어 교육은 임베디드 C 환경에서 작업할 때 추가적인 시간과 노력을 들이는 만큼 강력하고 기억에 남는 것은 아닙니다.

현대 차량에는 수십 개에서 100개가 넘는 임베디드 시스템이 탑재되어 있기 때문에, 개발자가 IDE에서 무엇을 찾아야 하고 어떻게 수정해야 하는지에 대한 정확한 교육을 받는 것이 필수적입니다.

임베디드 C/C++ 비즈니스 로직의 결함은 어떤 것들이 있을까요? 전문가처럼 문제를 정확히 파악하고 수정할 수 있는지 살펴보겠습니다.

임베디드 시스템을 1층부터 보호하는 것은 모두의 책임입니다

많은 조직에서는 적어도 개발자의 책임에 관해서는 개발 속도가 보안보다 우선시되는 것이 현실입니다. 안전한 코드를 작성하는 능력이 평가받는 경우는 거의 없지만, 우수한 기능을 신속하게 개발하는 것이 최고의 기준으로 여겨집니다. 소프트웨어에 대한 수요는 계속 증가하고 있지만, 이러한 문화가 우리가 취약점과 그에 따른 사이버 공격과의 싸움에서 패배하는 원인이 되고 있습니다.

개발자가 교육을 받지 못했다고 해서 그 책임을 개발자에게 돌릴 수는 없습니다. AppSec 팀의 누군가가 개발자 커뮤니티 전체에 적합하고 접근하기 쉬운(평가 가능하다는 것은 물론) 기술 향상 프로그램을 권장함으로써 이를 보완하는 데 도움을 주어야 합니다. 소프트웨어 개발 프로젝트의 초기 단계에서 보안은 최우선 고려 사항이며, 모든 사람, 특히 개발자가 자신의 역할을 수행하는 데 필요한 것을 제공받아야 합니다.

임베디드 시스템의 보안 문제를 직접 체험해 보세요

버퍼 오버플로, 인젝션 결함, 비즈니스 로직 버그는 모두 임베디드 시스템 개발에서 흔히 발생하는 함정입니다. 차량이나 장치에 탑재된 마이크로컨트롤러의 복잡한 구조 깊숙이 숨겨진 결함은 보안 관점에서 치명적인 결과를 초래할 수 있습니다.

버퍼 오버플로는 특히 빈번하게 발생합니다. 앞서 설명한 에어프라이어가 어떻게 위험에 노출되었는지(원격 코드 실행을 가능하게 하는) 자세히 알고 싶다면, 이 보고서 CVE-2020-28592를 확인하세요.


버퍼 오버플로 기록을 생성합니다.



어땠나요? 방문 www.securecodewarrior.com 임베디드 시스템 보안에 관한 정확하고 효과적인 교육을 실시합니다.

목차

PDF 다운로드
리소스 표시
더 관심이 있으신가요?

마티아스 마두 박사는 보안 전문가, 연구원, CTO, 그리고 Secure Code Warrior의 공동 창립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션을 중심으로 애플리케이션 보안 분야 박사 학위를 취득했습니다.이후 미국의 Fortify에 합류하여 개발자가 안전한 코드를 작성하도록 지원하지 않고 단순히 코드 문제를 탐지하는 것만으로는 불충분하다는 점을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안 부담을 줄이며 고객 기대를 뛰어넘는 제품을 개발하게 되었습니다. Team Awesome의 일원으로 책상에 있지 않을 때는 RSA 컨퍼런스, BlackHat, DefCon 등의 컨퍼런스에서 발표하는 무대 발표를 즐깁니다.

더 알아보세요

Secure Code Warrior는 소프트웨어 개발 라이프사이클 전반에 걸쳐 코드를 보호하고 사이버보안을 최우선으로 하는 문화를 구축하는 데 도움을 드립니다. 애플리케이션 보안 관리자, 개발자, CISO 또는 보안 담당자이든, 안전하지 않은 코드와 관련된 위험을 줄이는 데 도움을 드립니다.

데모 예약[다운로드]
공유:
링크드인 브랜드사회적x 로고
리소스 허브

시작하기 위한 리소스

기타 게시물
리소스 허브

시작하기 위한 리소스

기타 게시물