Action disabled: revisions

* 사업 등 관련 문의: T) 02-322-4688, F) 02-322-4646, E) info@wikisecurity.net

작년 유령이라는 드라마를 통해 국내에서 자동차 해킹이 가능성 정도의 수준으로 이슈화 되었지만 최근 라스베가스에서 열린 BlackHat에서 미국 정보보안 업체 연구원이 발표했다는 내용은 자동차 해킹을 시연해서 좀더 현실적인 내용으로 해서 관련자료들을 찾아봤다. 언론에 공개된 자료를 보면 현실감이 느껴지는 동영상이다.
Youtube 동영상…http://www.youtube.com/watch?v=oqe6S6m73Zw&feature=player_embedded

자동차 주요구성요소 ECU와 CAN 등의 통신기술

우선은 외관상으로 보이는 각종 기계장치들을 제외한 자동차 내부의 주요 구성요소는 어떤 것이 있으며, 이들간의 내부 네트워킹 프로토콜은 어떤 것들이 있는지 알아 보았다.
자동차의 내부 주요 구성요소는
- 각종 전자장치들을 제어하는 ECU, TCU와
- CAN과 같은 통신기술,
- 그리고 이런 기술요소들을 응용하여 운전자에게 서비스를 제공하는 각종 응용프로그램들로
나눠볼수 있다.

ECU(Electronic Control Unit)는
각종 전자장치들을 제어하는 장치로 EGN ECU, ABS ECU, 멀티미디어 ECU, 트랜스미션 ECU, 안전관련 ECU 등 여러 개의 ECU가 존재하며(신규 차종은 ECU가 약 70개가 넘는다는 자료도 있음), ECU의 일종인 TCU(Transmition Control Unit)은 아래의 다이어그램들과 같이 엔진장치, 제동장치 제어 등 핵심적인 역할을 담당한다.
자동차 튜닝을 전문으로 하는 바워유저들 간에는 이 ECU를 간단하게 리셋시켜서 엔진성능을 높이는 방법들이 공유되어 있기도 하다.(방법을 보니 아주 간단 ^^)
ECU, TCU 등 내부 주요 구성요소들에 대한 구조나 레이아웃은 ECU Wiring으로 검색하면 우리나라 Santafe 기종부터 BMW 등 다양한 차종의 구성 layout과 Wiring 설계도 등을 볼수가 있다.(아래 참조)



mpc5634m_ecu_block_diagram.jpg

이러한 ECU, TCU들과 내외부의 전자장치들 간의 통신은
- CAN(Controller Area Network,일반 구리전선, 125kbps~1Mbps)
- 데이터 전송량이 적은 보조통신으로 사용되는 LIN(Local Interconnect Network)
- 멀티미디어용의 ECU에는 I-BUS 기술이 주로 이용되고 있다.

이들 통신기술은 서로 다른 규격간의 통신이 이뤄질 경우 Gateway를 둠으로써 서로다른 네트워크 간의 통로 역할을 하는데,
CAN과 LIN 네트워크간의 Gateway 구성 개념도는 아래와 같다. (출처: 한국폴리텍대학교 자동차학과 정태균 blog)

내부 통신버스의 구성도는 아래의 BMW Bus Topology 그림과 같이 각종 sensor, ECU, TCU, 보안관점에서 하나의 접속경로가 될 수 있는 OBD II 등과 다양한 통신기술들이 적용되어 있다.
bmw-ink_bus_topology.jpg
그러나 이러한 통신 기술들은 너무 많은 전선들로 구성되어 있어서 설계, 생산, 유지보수 등에서 문제들이 자주 발생하기 때문에 전선수를 줄이고 늘어나는 전자부품 수를 감당하기 위해
- MOST(Multimedia Oriented Systems Transport)
- FlexRay(10Mbps)
- 25MbPS의 데이터 전송율을 제공하는 TTP(Time Triggered Protocol)
- CAN프로토콜의 확장형이며 TDMA방식으로 구현된 TTCAN(Time Triggered CAN)
- IEEE1394를 기본으로 하며 광통신으로 400Mbps 속도가 특징인 IDB1394
등과 같은 새로운 통신 기술들이 표준화와 적용이 이뤄지고 있다.

이러한 내부/외부 구성요소간의 I/O 인터페이스들을 보면 아래 그림과 같다. (출처: CAESS)

주요 자동차 메이커별로 적용된 통신 기술들을 정리하면 아래와 같다. (*출처: Mortor Magazine)
- BMW, 다임러크라이슬러, FIAT, Ford, GM: FlexRay, CAN, LIN, MOST
- 현대: CAN, LIN
- 르노: CAN, IDB1394, LIN, TTP
- 혼다: LIN, MOST, CAN
- 토요타: CAN, LIN, MOST
- 폭스바겐: CAN, LIN, MOST, TTP
(*) 각 통신기술별 통신방식이나 packet 레이아웃 등은 관련 자료 참조요망

관련자료 - 자동차 임베디드 시스템 보안 센터 실험자료(CAESS)

우선은 자동차 해킹관련해서 검색엔진에서 좀더 현실적으로 실험된 관련자료를 찾아 보았는데~
일반적인 네트워크 분석도구인 Wireshark를 개조한 CarShark, smartkey steal 등의 툴과 기법들이 파악되었다.
특히, CAESS라는(http://www.autosec.org/) 자동차 임베디드시스템보안센터의 자료를 확인하게 되었는데,
이 센터는 센디에고의 켈리포니아 대학과 와싱턴 대학이 조인된 센터로서 미레의 자동차 임베디드시스템 의 보안, 프라이버시, 안전을 위한 연구를 하고 있으며, 공개하고 있는 자료를 보면 2010 IEEE 시포지움에서 관련 실험을 발표하고 USENIX Security 2011에도 관련 자료가 있다. (세부 내용은 첨부 파일 참조)
Comprehensive Experimental Analyses of Automotive Attack Surfaces, CAESS, USENIX Security 2011

이 센터에서 공개한 두개의 자료를 보면,
이들의 실험은 Threat modeling, Vulnerability analisys, Threat assessment 등으로 이뤄졌는데,
Threat modeling으로 아래의 3가지 attack vector들을 분류하였다.
1) 물리적인 간접접근(indirect physical access)
2) 단거리 무선접근(short-range wireless access)
3) 장거리 무선접근(long-range wireless access)

Vulnerability analisys 결과,
직접적으로 자동차에 접근하지 않고도 임의로 자동차 제어를 허용하는 악용의 소지가 있는 취약점을 찾아냈다고 한다. 자동차를 손상시킬 수 있는 것 들 중에서 이들이 데모를 한 것들을 예를 들면,
- 자동차 수리공들이 광범위하게 사용하는 자동차 진단 장비의 취약점을 이용한 exploit
- 변조한 WMA포멧 음악파일을 실행시키는 미디어 플레이어를 이용한 exploit
- hands-free bluetooth 기능의 취약점을 이용한 exploit
- 원격조정 기능을 악용한 exploit
등이다.

Vulnerability analisys 결과,
작성중~

Threat assessment 결과,
작성중~

주요 실험 결과,
작성중~