2019.01.16

OWASP 선정 IoT의 10대 취약점

Fredric Paul | Network World
보안에 대한 우려는 사물 인터넷(IoT)이라는 이름이 채 만들어지기 전부터 사물 인터넷의 발목을 잡는 족쇄였다. 업체와 기업 사용자, 소비자까지 새로 나온 IoT 디바이스와 시스템의 침해 가능성을 우려했다. 그러나 문제는 침해 정도가 아니다. 취약한 IoT 디바이스를 해킹해서 대규모 봇넷을 구성, 보안이 취약한 네트워크까지 위협할 수 있다.

ⓒ GettyImagesBank

그렇다면 IoT 시스템을 구축, 배포 또는 관리할 때 피해야 할 가장 큰 문제와 취약점은 정확히 무엇일까? 더 중요한 점은, 이러한 문제를 완화하기 위해 할 수 있는 일은 무엇일까?

OWASP(Open Web Application Security Project)가 도움이 될 수 있다. OWASP에 따르면 “OWASP 사물 인터넷 프로젝트의 목표는 제조업체, 개발자, 소비자가 사물 인터넷과 관련된 보안 문제를 더 정확히 이해하고 사용자가 IoT 기술을 구축, 배포 또는 평가할 때 보안 측면에서 더 현명한 의사 결정을 내리는 데 도움을 제공하는 것”이다.

OWASP는 이를 위해 지난 크리스마스에 2018년의 10대 IoT 취약점 목록을 인포그래픽(아래 참조)과 함께 발표했다. 

취약점 1. 쉬운 암호, 유추할 수 있는 암호 또는 하드코딩된 암호
 “무차별 대입 공격으로 손쉽게 노출되거나 펌웨어 또는 클라이언트 소프트웨어의 백도어를 포함하여 배포된 시스템에 대한 무단 액세스 권한을 부여하는 공개적인 인증 정보 또는 변경할 수 없는 인증 정보를 사용하는 것”

사실 너무 명확한 문제라서 여전히 이 문제에 대해 고민해야 한다는 것 자체가 부끄러운 노릇이다. IoT 디바이스나 애플리케이션이 얼마나 저렴하든, 얼마나 좋은 의도로 만들어졌든, 이런 게으름에 대한 변명은 결코 되지 못한다.

취약점 2. 안전하지 않은 네트워크 서비스
“디바이스 자체에서 실행되면서 정보의 기밀성, 무결성/신빙성 또는 가용성을 훼손하거나 무단 원격 제어를 허용하는 불필요하거나 안전하지 않은 네트워크 서비스(특히 인터넷에 노출되는 서비스).”

맞는 말이지만 이러한 네트워크 서비스가 불필요하거나 안전하지 않은지 여부가 항상 명확한 것은 아니므로 다소 모호한 부분이 있다.

취약점 3. 안전하지 않은 생태계 인터페이스
 “디바이스 또는 관련 구성요소의 침해를 허용하는 디바이스 외부 생태계의 안전하지 않은 웹, 백엔드 API, 클라우드 또는 모바일 인터페이스. 일반적인 문제에는 인증/승인의 부재, 암호화의 부재 또는 빈약함, 입출력 필터링의 부재 등이 포함된다.”

이번에도 마찬가지로, 인터페이스가 실제로 침해를 허용하는지 여부가 항상 명확하지는 않다. 그러나 인증, 암호화, 필터링은 언제나 좋은 방법이다.

취약점 4. 안전한 업데이트 메커니즘의 부재
 “디바이스를 안전하게 업데이트할 수 있는 기능의 부재. 여기에는 디바이스의 펌웨어 검증 부재, 안전한 전송 방법의 부재(전송 중 암호화되지 않음), 롤백 방지 메커니즘의 부재, 업데이트로 인한 보안 변경 알림의 부재가 포함된다.”

IoT 애플리케이션의 고질적인 문제다. 많은 업체와 기업이 각자의 디바이스와 구현의 미래에 대해 심사숙고하지 않기 때문에 발생한다. 또한 기술적 문제가 아닌 경우도 있다. IoT 디바이스의 물리적인 위치로 인해 업데이트(수리/교체)가 상당히 어려울 수도 있기 때문이다.

취약점 5. 안전하지 않거나 오래된 구성요소 사용
 “디바이스 침해를 유발하는, 지원이 중단되거나 안전하지 않은 소프트웨어 구성요소/라이브러리 사용. 여기에는 운영 체제 플랫폼의 안전하지 않은 개조, 침해된 공급망에서 나온 서드파티 소프트웨어 또는 하드웨어 구성요소를 사용하는 것이 포함된다.”

이러한 유형의 문제에는 변명의 여지가 없다. 싸게 만들 생각은 그만하고 제대로 만들어라.

취약점 6. 불충분한 개인정보 보호
 “사용자의 개인 정보가 디바이스 또는 생태계에 저장되어 안전하지 않게, 부적절하게 또는 사용자 허가 없이 사용되는 것.”

당연히 개인 정보는 적절한 방법으로 취급해야 한다. 그러나 여기서 핵심은 “허가”다. 당사자의 허가 없이 그 사람의 개인 정보를 사용해서 정당하게 할 수 있는 일은 거의 없다.

취약점 7. 안전하지 않은 데이터 전송 및 저장
“보관, 전송 또는 처리 중을 포함하여 생태계 내의 어디서든 민감한 데이터의 암호화 또는 액세스 제어가 이뤄지지 않는 것”

많은 IoT 업체가 안전한 저장에 신경을 쓰지만, 전송 중 데이터의 보안을 유지하는 일은 무시하는 경우가 너무 많다.

취약점 8. 디바이스 관리의 부재
 “프로덕션에 배포된 디바이스에 대한 자산 관리, 업데이트 관리, 안전한 폐기, 시스템 모니터링 및 응답 기능을 포함한 보안 지원의 부재”

IoT 디바이스는 작고 저렴하고 많은 수가 배포되기도 하지만 이러한 특징 중 어느 것도 관리할 필요가 없음을 의미하지는 않는다. 사실 그 특징으로 인해 관리의 중요성은 더욱 커진다. 관리하기가 쉽지 않고 비용이 많이 들고 편리하지 않다고 해도 중요한 건 마찬가지다.

취약점 9. 안전하지 않은 기본 설정
 “안전하지 않은 기본 설정 상태로 출하되는 디바이스 또는 시스템. 또는 작업자에 의한 구성 수정을 제한하여 시스템을 더 안전하게 보호하는 기능의 부재”

이것도 2019년에는 일어나서는 안 될 문제다. 이게 문제라는 사실은 모두가 알고, 피하는 방법도 안다. 매번 빼먹지 않고 실천만 하면 된다.

취약점 10. 물리적 보호 수단의 부재
 “물리적 보호 수단이 없어 잠재적 공격자가 미래의 원격 공격에 활용할 민감한 정보를 입수하거나 디바이스를 장악할 수 있도록 하는 것”

IoT를 구성하는 것은 “사물”이다. 사물 인터넷이라는 이름에도 나오므로 누구나 당연히 그 사실을 알아야 한다. IoT가 가진 물리적 본질을 잊지 말고 실제 디바이스를 보호하기 위한 조처를 하는 것이 중요하다.
 

다음 단계

OWASP 커뮤니티는 이 목록을 2년에 한 번씩 업데이트해서 업계의 변화를 반영하고 임베디드 보안, 그리고 산업 제어 시스템/감시 제어 및 데이터 수집 시스템(ICS/SCADA)과 같은 IoT의 다른 측면으로도 범위를 확대할 계획이다. 또한 각 항목의 사례를 추가하고 애플리케이션 보안 검증 표준(ASVS)과 같은 다른 OWASP 프로젝트 및 외부 프로젝트와 연계할 계획도 갖고 있다.

무엇보다 OWASP는 단순히 하지 말아야 할 것을 알려주는 수준을 넘어 기준 아키텍처를 마련해서 해야 할 일을 더 안전하게 하는 방법을 전파하는 방안도 구상 중이다.  editor@itworld.co.kr
 


2019.01.16

OWASP 선정 IoT의 10대 취약점

Fredric Paul | Network World
보안에 대한 우려는 사물 인터넷(IoT)이라는 이름이 채 만들어지기 전부터 사물 인터넷의 발목을 잡는 족쇄였다. 업체와 기업 사용자, 소비자까지 새로 나온 IoT 디바이스와 시스템의 침해 가능성을 우려했다. 그러나 문제는 침해 정도가 아니다. 취약한 IoT 디바이스를 해킹해서 대규모 봇넷을 구성, 보안이 취약한 네트워크까지 위협할 수 있다.

ⓒ GettyImagesBank

그렇다면 IoT 시스템을 구축, 배포 또는 관리할 때 피해야 할 가장 큰 문제와 취약점은 정확히 무엇일까? 더 중요한 점은, 이러한 문제를 완화하기 위해 할 수 있는 일은 무엇일까?

OWASP(Open Web Application Security Project)가 도움이 될 수 있다. OWASP에 따르면 “OWASP 사물 인터넷 프로젝트의 목표는 제조업체, 개발자, 소비자가 사물 인터넷과 관련된 보안 문제를 더 정확히 이해하고 사용자가 IoT 기술을 구축, 배포 또는 평가할 때 보안 측면에서 더 현명한 의사 결정을 내리는 데 도움을 제공하는 것”이다.

OWASP는 이를 위해 지난 크리스마스에 2018년의 10대 IoT 취약점 목록을 인포그래픽(아래 참조)과 함께 발표했다. 

취약점 1. 쉬운 암호, 유추할 수 있는 암호 또는 하드코딩된 암호
 “무차별 대입 공격으로 손쉽게 노출되거나 펌웨어 또는 클라이언트 소프트웨어의 백도어를 포함하여 배포된 시스템에 대한 무단 액세스 권한을 부여하는 공개적인 인증 정보 또는 변경할 수 없는 인증 정보를 사용하는 것”

사실 너무 명확한 문제라서 여전히 이 문제에 대해 고민해야 한다는 것 자체가 부끄러운 노릇이다. IoT 디바이스나 애플리케이션이 얼마나 저렴하든, 얼마나 좋은 의도로 만들어졌든, 이런 게으름에 대한 변명은 결코 되지 못한다.

취약점 2. 안전하지 않은 네트워크 서비스
“디바이스 자체에서 실행되면서 정보의 기밀성, 무결성/신빙성 또는 가용성을 훼손하거나 무단 원격 제어를 허용하는 불필요하거나 안전하지 않은 네트워크 서비스(특히 인터넷에 노출되는 서비스).”

맞는 말이지만 이러한 네트워크 서비스가 불필요하거나 안전하지 않은지 여부가 항상 명확한 것은 아니므로 다소 모호한 부분이 있다.

취약점 3. 안전하지 않은 생태계 인터페이스
 “디바이스 또는 관련 구성요소의 침해를 허용하는 디바이스 외부 생태계의 안전하지 않은 웹, 백엔드 API, 클라우드 또는 모바일 인터페이스. 일반적인 문제에는 인증/승인의 부재, 암호화의 부재 또는 빈약함, 입출력 필터링의 부재 등이 포함된다.”

이번에도 마찬가지로, 인터페이스가 실제로 침해를 허용하는지 여부가 항상 명확하지는 않다. 그러나 인증, 암호화, 필터링은 언제나 좋은 방법이다.

취약점 4. 안전한 업데이트 메커니즘의 부재
 “디바이스를 안전하게 업데이트할 수 있는 기능의 부재. 여기에는 디바이스의 펌웨어 검증 부재, 안전한 전송 방법의 부재(전송 중 암호화되지 않음), 롤백 방지 메커니즘의 부재, 업데이트로 인한 보안 변경 알림의 부재가 포함된다.”

IoT 애플리케이션의 고질적인 문제다. 많은 업체와 기업이 각자의 디바이스와 구현의 미래에 대해 심사숙고하지 않기 때문에 발생한다. 또한 기술적 문제가 아닌 경우도 있다. IoT 디바이스의 물리적인 위치로 인해 업데이트(수리/교체)가 상당히 어려울 수도 있기 때문이다.

취약점 5. 안전하지 않거나 오래된 구성요소 사용
 “디바이스 침해를 유발하는, 지원이 중단되거나 안전하지 않은 소프트웨어 구성요소/라이브러리 사용. 여기에는 운영 체제 플랫폼의 안전하지 않은 개조, 침해된 공급망에서 나온 서드파티 소프트웨어 또는 하드웨어 구성요소를 사용하는 것이 포함된다.”

이러한 유형의 문제에는 변명의 여지가 없다. 싸게 만들 생각은 그만하고 제대로 만들어라.

취약점 6. 불충분한 개인정보 보호
 “사용자의 개인 정보가 디바이스 또는 생태계에 저장되어 안전하지 않게, 부적절하게 또는 사용자 허가 없이 사용되는 것.”

당연히 개인 정보는 적절한 방법으로 취급해야 한다. 그러나 여기서 핵심은 “허가”다. 당사자의 허가 없이 그 사람의 개인 정보를 사용해서 정당하게 할 수 있는 일은 거의 없다.

취약점 7. 안전하지 않은 데이터 전송 및 저장
“보관, 전송 또는 처리 중을 포함하여 생태계 내의 어디서든 민감한 데이터의 암호화 또는 액세스 제어가 이뤄지지 않는 것”

많은 IoT 업체가 안전한 저장에 신경을 쓰지만, 전송 중 데이터의 보안을 유지하는 일은 무시하는 경우가 너무 많다.

취약점 8. 디바이스 관리의 부재
 “프로덕션에 배포된 디바이스에 대한 자산 관리, 업데이트 관리, 안전한 폐기, 시스템 모니터링 및 응답 기능을 포함한 보안 지원의 부재”

IoT 디바이스는 작고 저렴하고 많은 수가 배포되기도 하지만 이러한 특징 중 어느 것도 관리할 필요가 없음을 의미하지는 않는다. 사실 그 특징으로 인해 관리의 중요성은 더욱 커진다. 관리하기가 쉽지 않고 비용이 많이 들고 편리하지 않다고 해도 중요한 건 마찬가지다.

취약점 9. 안전하지 않은 기본 설정
 “안전하지 않은 기본 설정 상태로 출하되는 디바이스 또는 시스템. 또는 작업자에 의한 구성 수정을 제한하여 시스템을 더 안전하게 보호하는 기능의 부재”

이것도 2019년에는 일어나서는 안 될 문제다. 이게 문제라는 사실은 모두가 알고, 피하는 방법도 안다. 매번 빼먹지 않고 실천만 하면 된다.

취약점 10. 물리적 보호 수단의 부재
 “물리적 보호 수단이 없어 잠재적 공격자가 미래의 원격 공격에 활용할 민감한 정보를 입수하거나 디바이스를 장악할 수 있도록 하는 것”

IoT를 구성하는 것은 “사물”이다. 사물 인터넷이라는 이름에도 나오므로 누구나 당연히 그 사실을 알아야 한다. IoT가 가진 물리적 본질을 잊지 말고 실제 디바이스를 보호하기 위한 조처를 하는 것이 중요하다.
 

다음 단계

OWASP 커뮤니티는 이 목록을 2년에 한 번씩 업데이트해서 업계의 변화를 반영하고 임베디드 보안, 그리고 산업 제어 시스템/감시 제어 및 데이터 수집 시스템(ICS/SCADA)과 같은 IoT의 다른 측면으로도 범위를 확대할 계획이다. 또한 각 항목의 사례를 추가하고 애플리케이션 보안 검증 표준(ASVS)과 같은 다른 OWASP 프로젝트 및 외부 프로젝트와 연계할 계획도 갖고 있다.

무엇보다 OWASP는 단순히 하지 말아야 할 것을 알려주는 수준을 넘어 기준 아키텍처를 마련해서 해야 할 일을 더 안전하게 하는 방법을 전파하는 방안도 구상 중이다.  editor@itworld.co.kr
 


X