하드웨어 해킹 핸드북 : 하드웨어 공격으로 임베디드 보안 무너뜨리기

하드웨어 해킹 핸드북 : 하드웨어 공격으로 임베디드 보안 무너뜨리기

$48.64
Description
임베디드 시스템은 우리의 일상 속에서 깊이 자리 잡고 있다. 휴대폰, 자동차, 신용카드, 노트북, 의료 장비 등 수많은 장치가 작은 크기의 마이크로컴퓨터, 즉 임베디드 장치에 의해 구동된다. 이러한 임베디드 장치의 보안은 이제 더 이상 선택의 문제가 아닌 필수적인 요소가 되었으며, 이를 이해하는 것은 매우 중요하다. 이 책은 이러한 임베디드 시스템의 보안 문제를 깊이 있게 다루며, 실제 하드웨어를 통해 다양한 공격 기법을 이해하고 실습할 수 있도록 안내하는 훌륭한 길잡이다.
특히 실험실 환경에서 직접 수행할 수 있는 다양한 공격 기법을 상세히 설명하고 있어, 학생부터 전문가까지 폭넓은 독자층이 유용하게 활용할 수 있을 것이다. 각종 인터페이스, 포트 및 통신 프로토콜, 전기적 신호 분석, 펌웨어 이미지 분석 등의 기본기를 다지고, 결함 주입(fault-injection), 사이드 채널 분석(SCA), 전력 분석(SPA/DPA) 등을 통해 실제 장치에서 비밀번호나 암호화 키를 추출하는 등의 고급 기술을 배울 수 있다.
저자

콜린오플린,야스퍼반벨든버그

저자:콜린오플린
엔지니어에게임베디드보안을학습하기위한도구및장비를설계하는신생기업뉴에이이테크놀로지(NewAETechnology,Inc.)를경영하고있다.박사연구의일환으로오픈소스칩위스퍼러(ChipWhisperer)프로젝트를시작했고,이전에는댈하우지대학교(DalhousieUniversity)의조교수로재직하면서임베디드시스템과보안을가르쳤다.캐나다핼리팩스에살고있으며뉴에이이(NewAE)로개발된많은제품에그의개가등장하는것을볼수있다.

저자:야스퍼반벨든버그
수억대의장치에서실행되는코드의버그를찾아수정하는데도움을주고,기호실행을사용해결함이있는암호시스템에서키를추출하고부채널트레이스(trace)처리를위해음성인식알고리듬을사용하는등의다양한주제에대한임베디드장치보안에참여했다.두아이의아버지이자한사람의남편이고리스큐어노스아메리카(RiscureNorthAmerica)의CTO다.캘리포니아에거주하며자전거를타고산악자전거와스노우보드를좋아한다.반려고양이에게는집사로겨우간택된정도지만트위터에서는너무멋진사람이다.

역자:김세영
성균관대학교정보통신공학부와기계공학부를졸업했으며웹,서버,커널등여러분야에관심을갖고있다.어떻게하면지식을효율적으로습득,저장,관리할수있는지고민하고있다.현재캐노니컬서스테이닝엔지니어링부서에근무하고있다.우분투,오픈스택,기타다양한프로젝트의오류를수정하고있으며,오픈소스생태계를발전시키고자열심히노력하고있다.

역자:정윤선
성균관대학교정보통신공학부를졸업했으며웹기술과서버API,하이퍼바이저에관심이많다.아헴스,KT클라우드웨어,A2C를거치며웹,가상화등의업무를수행했다.현재는육아를병행하며스포츠영양사유튜버와협업을통한next.js웹및react-native를이용한모바일앱개발을진행하며번역에참여하고있다.

목차


1장.임베디드보안소개
__하드웨어구성요소
__소프트웨어구성요소
____초기부트코드
____부트로더
____신뢰실행환경OS및신뢰애플리케이션
____펌웨어이미지
____메인운영체제커널및애플리케이션
__하드웨어위협모델링
____보안이란?
____공격트리
__공격자프로파일링
__공격유형
____하드웨어에대한소프트웨어적공격
____PCB수준공격
____논리적공격
____비침습적공격
____칩-침습적공격
__에셋과보안대상
____이진코드의기밀성과무결성
____키의기밀성과무결성
____원격부트증명
____개인식별정보의기밀성과무결성
____센서데이터무결성및기밀성
____콘텐츠기밀성보호
____안전성과회복탄력성
__대응책
____보호
____탐지
____반응
__공격트리예제
____식별과악용
____확장성
____공격트리분석
____하드웨어공격경로평가
__보안문제공개
__요약

2장.하드웨어주변장치인터페이스
__전기기초
____전압
____전류
____저항
____옴의법칙
____AC/DC
____저항구분
____전력
__전기와의인터페이스
____논리레벨
____하이임피던스,풀업,풀다운
____푸시-풀와3상태및오픈컬렉터또는오픈드레인
____비동기식과동기식및내장클럭
____차분신호
__저속직렬인터페이스
____범용직렬비동기식수신기/송신기
____직렬주변장치인터페이스
____IC간인터페이스
____보안디지털입력/출력및내장형멀티미디어카드
____CAN버스
____JTAG및기타디버깅인터페이스
__병렬인터페이스
____메모리인터페이스
__고속직렬인터페이스
____범용직렬버스
____PCI익스프레스
____이더넷
__측정
____멀티미터:전압
____멀티미터:연속성
____디지털오실로스코프
____논리분석기
__요약

3장.구성요소식별및정보수집
__정보수집
____연방통신위원회기록
____특허
____데이터시트와회로도
____정보검색예제:USBArmory장치
__분해시작
____보드에서IC식별
____소형리드패키지:SOIC,SOP,QFP
____노리드패키지:SO,QFN
____볼그리드어레이
____칩스케일패키징
____DIP,스루홀,기타
__PCB의샘플IC패키지
____보드의기타구성요소식별
__PCB매핑
____매핑을위한JTAG경계스캔사용
__펌웨어에서정보추출
____펌웨어이미지얻기
____펌웨어이미지분석
__요약

4장.결함주입소개
__잘못된보안메커니즘
____펌웨어서명확인우회
____잠금된기능에접근하기
____암호화키복구
__OpenSSH결함주입연습
____C코드에결함주입
____기계코드에결함주입
__결함주입허풍
____대상장치및폴트목표
____결함주입기도구
____대상준비와제어
__폴트검색방법
____폴트프리미티브탐색
____효과적인폴트검색
____검색전략
____결과분석
__요약

5장.결함주입방법
__클럭결함주입
____준안전성
____폴트민감도분석
____제한사항
____필수하드웨어
____클럭결함주입매개변수
__전압결함주입
____전압글리치생성
____스위칭기반주입기구축
____쇠지레결함주입
____쇠지레를이용한라즈베리파이폴트공격
____전압결함주입검색매개변수
__전자기결함주입
____전자기폴트생성
____전자기결함주입을위한아키텍처
____EMFI펄스모양과폭
____전자기결함주입을위한매개변수검색
__광학결함주입
____칩준비
____전면및후면공격
____광원
____광학결함주입설정
____광학결함주입구성가능매개변수
__바디바이어싱주입
____바디바이어싱주입을위한매개변수
__하드웨어폴트트리거
____예측할수없는대상타이밍작업
__요약

6장.결함주입실험
__실험1:간단한반복문
____고통의BBQ라이터
__실험2:유용한글리치삽입
____환경설정폴트를위한쇠지레글리칭
____먹스결함주입
__실험3:차분오류분석
____약간의RSA이론
____대상에서올바른서명얻기
__요약

7장.트레저원지갑메모리덤프
__공격소개
__트레저원지갑내부
__USB읽기요청폴트
__코드분해
__펌웨어구축과글리치검증
__USB트리거링과타이밍
__케이스를통한글리치
____설정
____결합주입을위한코드검토
____코드실행
____덤프확인
____EM펄스미세조정
____USB메시지를기반으로타이밍조정
__요약

8장.전력분석소개
__타이밍공격
____하드드라이브타이밍공격
____타이밍공격을위한전력측정
__단순전력분석
____RSA에SPA적용
____RSA에SPA적용다시보기
____ECDSA의SPA
__요약

9장.단순전력분석
__자택실험실
____기본하드웨어설정구성
____설정구매
____대상코드준비
____설정구축
__통합:SPA공격
____대상준비
____오실로스코프준비
____신호분석
____통신및분석스크립트제작
____공격스크립트제작
__칩위스퍼러-나노예제
____펌웨어구축과로딩
____첫통신살펴보기
____트레이스캡처
____트레이스에서공격으로
__요약

10장.차분전력분석
__마이크로컨트롤러내부
____커패시터의전압변경
____전력에서데이터로그리고다시반대로
__XOR예제
__차분전력분석공격
____누출가정을사용한전력소비량예측
____파이썬의DPA공격
__지피지기:고급암호화표준공격과정
____DPA를사용해AES-128공격
__상관관계전력분석공격
____상관계수
____CPA를이용한AES-128공격
____대상장치와통신
____오실로스코프캡처속도
__요약

11장.고급전력분석
__주요장애물
____더강력한공격
__성공측정
____성공률기반메트릭
____엔트로피기반메트릭
____상관관계피크진행
____상관관계피크높이
__실제장치에대한측정
____장치작동
____측정프로브
____민감한망결정
____자동화된프로브스캐닝
____오실로스코프설정
__트레이스세트분석과처리
____분석기술
____처리기술
____컨볼루션신경망을사용한딥러닝
__요약

12장.실험사례:차분전력분석
__부트로더배경지식
____부트로더통신프로토콜
____AES-256CBC의세부사항
____AES-256공격
__부트로더코드얻기및빌드
__대상실행과트레이스캡처
____CRC계산
____부트로더와통신
____개요트레이스캡처
____상세트레이스캡처
__분석
____라운드14키
____라운드13키
__IV복구
____캡처대상
____첫번째트레이스얻기
____나머지트레이스얻기
____분석
__서명공격
____공격이론
____전력트레이스
____분석
____4바이트전체
__부트로더소스코드엿보기
____서명확인타이밍
__요약

13장.실제사례
__결함주입공격
____플레이스테이션3하이퍼바이저
____엑스박스360
__전력분석공격
____필립스휴공격
__요약

14장.대응책,인증,종장
__대응책
____대응책실행
____대응책확인
__산업인증
__일신우일신
__요약

부록A.테스트환경설정
__연결성및전압확인:50달러에서500달러까지
__최적피치납땜:50달러에서1,500달러까지
__쓰루홀냅땜제거:30달러에서500달러
__표면실장장치의납땜및납땜제거:100달러에서500달러
__PCB수정:5달러에서700달러
__광학현미경:200달러에서2,000달러
__사진촬영보드:50달러에서2,000달러
__대상전원공급:10달러에서1,000달러
__아날로그파형보기(오실로스코프):300달러에서25,000달러
____메모리깊이
____샘플링속도
____대역폭
____기타특징
__논리파형보기:300달러에서8,000달러
__직렬버스에서트리거링:300달러에서8,000달러
__직렬프로토콜디코딩:50달러에서8,000달러
__CAN버스스니핑과트리거링:50달러에서5,000달러
__이더넷스니핑:50달러
__JTAG를통한상호작용:20달러에서10,000달러
____일반JTAG및경계스캔
____JTAG디버그
__PCIe통신:100달러에서1,000달러
__USB스니핑:100달러에서6,000달러
__USB트리거링:250달러에서6,000달러
__USB에뮬레이션:100달러
__SPI플래시연결:25달러에서1,000달러
__전력분석측정:300달러에서50,000달러
__아날로그파형트리거링:3,800달러이상
__자기장측정:25달러에서10,000달러
__클럭결함주입:100달러에서30,000달러
__전압결함주입:25달러에서30,000달러
__전자기결함주입:100달러에서50,000달러
__광학결함주입:1,000달러에서250,000달러
__포지셔닝프로브:100달러에서50,000달러
__대상장치:10달러에서10,000달러

부록B.인기핀아웃
__SPI

출판사 서평



이책에서다루는내용

*상용인터페이스와버스를활용하거나,직접구성요소에접근해시스템의약점을공략한다.
*폴트주입지점을식별,대상준비,폴트주입구성을구축한다.
*클럭글리치를생성하고,기성품이나DIY도구를사용해서전압폴트주입,전자기폴트주입,바디바이어싱폴트주입을수행한다.
*타이밍공격과단순전력분석을통해비밀번호및암호화된키를추출한다.
*향상된전력및신호분석,누출탐색,시각화기술을수행한다.

이책의대상독자

이책의독자는좋은일을하기위해보안을깨는데관심이있는공격자의역할을하고있다고가정할것이다.또한간단한오실로스코프(Oscilloscope)및납땜장비와같은비교적저렴한하드웨어를대부분사용할수있고파이썬이설치된컴퓨터가있다고가정한다.
레이저장비,입자가속기또는취미활동의예산한도를넘어서는기타품목에접근할수있다고생각하지않는다.지역대학연구실에서이러한장비를사용할수있는경우이책을통해더많은이점을얻을수있을것이다.임베디드장치대상과관련해독자가해당대상에물리적으로접근할수있고해당장치에저장된에셋(asset)에관심이있다고가정한다.그리고가장중요한것은독자가새로운기술을배우는데관심이있고리버스엔지니어링사고방식을갖고있으며깊이탐구하려는준비가돼있다고가정한다.

이책의구성

1장,‘임베디드보안소개’에서는임베디드시스템의다양한구현아키텍처와일부위협모델링에초점을두고다양한공격에대해알아본다.
2장,‘하드웨어주변장치인터페이스’에서는신호(signaling)및측정(measurement)을이해하는데필요한전기기본사항을포함해다양한포트및통신프로토콜을설명한다.
3장,‘구성요소식별및정보수집'에서는대상에대한정보를수집하고,데이터시트및설계도를해석하고,PCB의구성요소를식별하고,펌웨어이미지를추출및분석하는방법을설명한다.
4장,‘결함주입소개’에서는결함주입지점을식별하고,대상을준비하고,결함주입설정을생성하고,효과적인매개변수를만들어내는방법을포함해결함공격의이면에있는아이디어를제시한다.
5장,‘결함주입방법’에서는클럭,전압,전자기,레이저,바디바이어싱(BodyBiasing)결함주입그리고이를수행하기위해구축또는구매해야하는도구의종류를설명한다.
6장,‘결함주입실험’에서는집에서수행할수있는3가지실용적인결함주입연구실을제공한다.
7장,‘트레저원지갑메모리덤프’에서는트레저원(TrezorOne)지갑을갖고취약한펌웨어버전에서결함주입을사용해키를추출하는방법을보여준다.
8장,‘전력분석소개’에서는타이밍공격과단순전력분석을소개하고,이러한공격을사용해암호및암호화키를추출하는방법을보여준다.
9장,‘단순전력분석’에서는기본하드웨어설정부터가정실험실에서SPA공격을수행하는데필요한것까지모든방법을안내한다.
10장,‘차분전력분석’에서는차분전력분석(DPA,DifferentialPowerAnalysis)을설명하고전력소비의작은변동이암호화키추출로이어지는방법을보여준다.
11장,‘고급전력분석’에서는실용적인측정팁부터추적설정필터링,신호분석,처리및시각화에이르는전력분석의수준을높일다양한기술을설명한다.
12장,‘실험사례:차분전력분석’에서는특수부트로더로물리적목표를잡고차분전력분석기술을사용해여러가지비밀을알아낸다.
13장,‘실제사례’에서는실제대상에대해수행된여러가지게시된결함및부채널공격을요약한다.
14장,‘대책,인증,종장’에서는이책에서설명하는몇가지위험을완화하는여러가지대응책을살펴보고장치인증및다음단계에대해다룬다.
부록A,‘테스트실험설정’에서는원하는모든도구등을멋지게공개해구미를돋운다.
부록B,‘유명한핀아웃’에서는정기적으로접하게될몇가지인기있는핀아웃(pinout)에대한커닝페이퍼를제공한다.