★추천의글★
세상은더많은해커를원하고있으며,더많은자동차해커역시필요로한다.차량기술은점점더복잡하고연결지향적으로발전하고있다.이러한변화들에대처하기위해서는차량보안에대한더높은관심과더능력있는전문가들이필요할것이다.하지만해커란무엇인가?이용어는많은미디어매체를거치면서의미가변질돼알려져버린용어다.그러나해커라는용어의정확한의미는창조하는사람,탐험하는사람,보수하는사람(즉,예술적으로실험하고,동작방법을이해하기위해시스템을디스어셈블해서발견해내는사람이다)과관련있다.내경험에비춰보면최고의보안전문가(보안이취미인사람)들은자연스럽게어떤것이어떻게동작하는지에대해관심을갖는사람이다.이런사람은탐험하고보수하고실험하며단지발견의재미를위해서만디스어셈블하고,이런사람이해킹을한다.
자동차는매우위협적인해킹의대상이될수있다.대부분의차량에는키보드나로그인을하기위한입력창이존재하지않지만,익숙하지않은프로토콜의배열,CPU,연결단자,운영체제들이탑재돼있다.이책은차량내의일반적인요소들을분석하며,차량해킹시작에필요한정보들과즉시사용가능한툴들을소개한다.이책을다읽을때쯤이면차량은서로연결된컴퓨터들의집합이며,바퀴는그저붙어있는것일뿐이라는사실을알게될것이다.적절한툴과정보들로무장하면해킹을할수도있음을느낄것이다.
이책은또한열려있는많은주제들을다룬다.자동차를비롯해서우리가의존하는시스템이조사,검사를통한문서화가가능하다면우리는더안전할것이다.이책을통해습득하는지식을이용하면차량을조사하고검사하고문서화할수있다.독자들의새로운발견을볼수있기를기대한다.
★이책에서다루는내용★
■차량에대한위협모델링수립
■CANbus리버스엔지니어링(ReverseEngineering)기술을통한엔진신호조작
■진단및데이터로깅시스템의익스플로잇(Exploit)공격
■ECU,펌웨어,임베디드시스템해킹
■인포테인먼트(Infotainment)와V-to-V통신시스템들에익스플로잇공격
■성능튜닝기법을이용한차량출하시설정변경
■물리적/가상적테스트벤치를구성하여익스플로잇공격테스트
★이책의대상독자★
자동차산업관련전문가,보안전문가또는자동차튜닝에관심있는일반인에게추천한다.차량보안에호기심이있고2톤짜리컴퓨터를해킹하고싶은충동이있다면,이책을펼치길추천한다.
★이책의구성★
1장,‘위협모델의이해’에서는차량을평가하는방법을배우며,고위험영역을식별하는방법을알게될것이다.자동차산업에서종사하고있다면내부의위협모델링시스템을구축하는데유용한가이드역할을하게될수있다.
2장,‘버스프로토콜’에서는차량을평가할때나버스프로토콜,전압,전선을분석할때접하게되는다양한버스네트워크의종류를자세히다룬다.
3장,‘SocketCAN을이용한차량통신’에서는리눅스시스템에서SocketCAN을이용해다양한CAN하드웨어툴을구현하는방법을소개하며,어떤진단대상이든사용할수있는툴을스스로만들수있도록설명한다.
4장,‘고장진단과로깅’에서는엔진의코드,범용진단서비스,ISO-TP프로토콜을읽는방법을다룬다.각서비스모듈이어떻게동작방식이다르고,공통적으로갖고있는취약점은무엇인지,저장되는로그정보가무엇이고어디에존재하는지에대해알게된다.
5장,‘CAN버스리버스엔지니어링’에서는가상CAN네트워크를구성하는방법과,CAN보안관련툴과퍼저(Fuzzer)를이용해CAN네트워크를분석하는방법을다룬다.
6장,‘ECU해킹’에서는ECU에서동작하는펌웨어에초점을맞춘다.펌웨어를얻는방법과수정하는방법,그리고펌웨어의바이너리데이터를분석하는방법을다룬다.
7장,‘ECU테스트벤치구축과활용’에서는안전한테스트환경을구축하기위해차량의부품을제거하는방법을설명한다.ECU간배선도를읽고엔진의ECU구성요소인온도센서들과크랭크축의동작등을시뮬레이션하는방법을다룬다.
8장,‘ECU와기타임베디드시스템공격’에서는집적회로의디버깅핀을연결하는방법을다룬다.또한전압차분석(DifferentialPowerAnalysis)이나클록글리칭(ClockGlitching)과같은부채널공격(SideChannelAnalysisAttacks)을다룬다.
9장,‘차량내인포테인먼트시스템’에서는차량내부의인포테인먼트시스템이가장많은공격지점을갖고있는중요한포인트이기때문에인포테인먼트시스템의동작원리를자세히다룬다.펌웨어를획득하는여러접근법과펌웨어를시스템상에서실행하는방법을중점적으로다룰것이며,테스트를위해일부오픈소스인포테인먼트시스템을활용한다.
10장,‘V2V통신’에서는차량과차량사이네트워크가어떻게동작하도록설계됐는지설명하고,암호방식과여러나라에서제안된여러프로토콜방식을다룬다.그리고일부잠재적인문제점도언급한다.
11장,‘CAN결과의활용’에서는CAN분석의결과들을어떻게사용가능한익스플로잇으로만드는지설명한다.PoCProof-of-Concept,개념증명코드를어셈블리코드(AssemblyCode)와궁극적인셸코드(Shellcode)로변환하는방법을배우고,특정목표차량만을익스플로잇하는방법과,취약점이발견되지않은차량을분석하는방법도테스트한다.
12장,‘SDR을이용한무선시스템공격’에서는무선통신을분석하기위해SDR(Software-DefinedRadio)을사용하는방법을다루며,TPMS,Keyfobs,이모빌라이저시스템(ImmobilizerSystems)들을분석하는데활용한다.예제로이모빌나이저시스템이동작할때사용하는암호구조나기타알려진무선통신의문제점을분석해본다.
13장,‘성능튜닝’에서는차량의성능을향상시키고변화시키는기술을다룬다.칩튜닝이나일반적인튜닝툴,그리고엔진을원하는상태로변경하는데필요한기술을다룬다.
부록A,‘차량해킹툴모음’에서는차량보안연구실을구축할때유용한하드웨어,소프트웨어툴의목록을제공한다.
부록B,‘진단코드모드와PID’에서는일반적인진단모드와사용하기쉬운PID의목록을제공한다.
부록C,‘자신만의OpenGarage만들기’에서는차량해킹커뮤니티에참가하는방법과자신만의OpenGarage를시작하는방법을다룬다.
★감수의글★
수십년간자동차는인간의이동수단으로안전을중심으로개발됐다.하지만자동차부품이하나둘씩전장화되면서자동차는어느덧컴퓨터또는전자제품으로탈바꿈하고있다.불과수년전구글,애플과같은IT공룡기업이자동차를만든다고선언했을때모두믿지않았다.하지만,이제는자율주행이라는기술을장착한자동차의시범운행을미디어를통해쉽게찾아볼수있다.세상은우리가생각하는것이상으로빠르게변하고있다.
지프제로키원격조정해킹사건으로크라이슬러는140만대가넘는자동차에대한리콜조치를했다.영화에서만보던자동차해킹이이제우리에게닥친현실이된것이다.여러유명해외컨퍼런스에서는안전위주의자동차부품개발프로세스에보안개발프로세스를접목하는사례를앞다투어발표하고있다.자동차보안이안전을위협하고있다는방증인셈이다.
자동차보안분야에서수년간업무를수행해오며아쉬웠던부분은학계나미디어에서자동차보안위협이나해킹사고를자주발표하지만,어디에도그원리및방법에대해체계적으로설명하는곳은없었다.이책은자동차해킹을선망의대상으로만바라보고있는독자들에게한줄기빛이자사막의오아시스와같은역할을해줄것을믿어의심치않는다.
자동차해킹은매우다양한지식과기술이필요하므로책한권으로모든것을설명하는것은불가능하다.이책은자동차해킹분야의필요한사항을간략하게설명하고필요할때에적절한내용을즉시확인할수있는핸드북이다.소프트웨어뿐만아니라하드웨어보안까지다양한각도에서자동차해킹을체계적으로다루고있기에자동차해킹을시작하는독자들에게충분한길잡이역할을해줄것이다.
자동차해킹서적번역을통해국내에차량보안을소개한다는사명감으로용어하나,문장하나를두고번역자신현진군과밤낮없이벌인논쟁과토론의수고가결실을보게되어매우기쁘다.이책을시작으로국내에서자동차해킹에대해더많은서적이출간되고번역되기를기대한다.