Description
인터넷에 연결된 다양한 IoT 장치는 일상에 편리함을 더해 주지만, 그 편리함 뒤에 숨겨진 부작용으로 다양한 위협이 존재한다. IoT 장치를 해킹하는 데 필요한 도구와 접근 방식을 상세히 설명하며, 실제 IoT 장치에서 위협을 발견하는 해킹 과정을 다양한 계층의 관점에서 다루고 있다. IoT 해킹을 처음 접하는 초보 해커부터 보안 전문가까지 누구나 쉽게 이해할 수 있도록 상세하고 유연한 내용으로 구성돼 있다. 더욱 안전한 IoT 인프라를 설계하는 데 도움이 될 것이다.
저자

포티오스찬치스,요안니스스타이스,폴리노칼데론,에반겔로스데이르멘조글루,보우즈

(FotiosChantzis)
OpenAI에서안전하고보안이강화된인공지능(AGI,ArtificialGeneralIntelligence)을위한기반을마련하고있다.메이요클리닉(MayoClinic)에서주요정보보안엔지니어로근무하며의료기기,임상지원시스템,중요한헬스케어인프라의기술보안평가를관리하고수행했다.2009년부터Nmap개발팀의핵심멤버로활동해왔으며,같은해에구글썸머오브코드(GoogleSummerofCode)기간동안Nmap의원작자인고든‘표도르’라이온(Gordon‘Fyodor’Lyon)의멘토십아래Ncrack을개발했다.이후2016년과2017년구글썸머오브코드기간동안Nmap프로젝트의멘토로활동했으며,Nmap에관한비디오강좌도만들었다.네트워크보안연구에는TCP지속타이머(TCPPersistTimer)를악용하는방법(관련논문은Phrack#66에게재됨)과XMPP를이용한은밀한포트스캔공격발명이포함돼있다.데프콘(DEFCON)을비롯한유명보안콘퍼런스에서발표한경험이있다.주요연구는https://sock-raw.org/에서확인할수있다.

목차

1부.IoT위협환경
1장.IoT보안세계
__IoT보안의중요성
__IoT보안과기존IT보안의다른점
____IoT해킹의특별한점
____프레임워크,표준,가이드
__사례연구:IoT보안문제발견,보고,공개
__전문가관점:IoT환경탐색
____IoT해킹관련법률
____IoT보안에서정부의역할
____환자관점에서의료장치보안
__결론


2장.위협모델링
__IoT위협모델링
__위협모델링을위한프레임워크준수
____시스템구조식별
____시스템구조를구성요소로분해
____위협식별
____공격트리를사용한위협식별
__DREAD분류기법에따른위협평가
__기타유형의위협모델링과프레임워크및도구
__일반적인IoT위협
____신호교란공격
____재전송공격
____설정변조공격
____하드웨어무결성공격
____노드복제
____보안및프라이버시침해
____사용자보안인식
__결론


3장.보안평가방법론
__수동적정찰
__물리또는하드웨어계층
____주변인터페이스
____부팅환경
____잠금장치
____변조방지및탐지
____펌웨어
____디버그인터페이스
____물리적견고성
__네트워크계층
____정찰
____네트워크프로토콜과서비스공격
____무선프로토콜테스트
__웹애플리케이션평가
____애플리케이션매핑
____클라이언트측제어
____인증
____세션관리
____접근제어와인증
____입력검증
____논리결함
____애플리케이션서버
__호스트구성검토
____사용자계정
____비밀번호강도
____계정권한
____패치수준
____원격유지보수
____파일시스템접근제어
____데이터암호화
____서버구성오류
__모바일애플리케이션과클라우드테스팅
__결론


2부.네트워크해킹
4장.네트워크평가
__IoT네트워크로뛰어들기
____VLAN과네트워크스위치
____스위치스푸핑
____이중태그
____VoIP장치모방
___네트워크상의IoT기기식별
____핑거프린팅서비스를통한비밀번호찾기
____새로운Nmap서비스프로브작성
__MQTT공격
____테스트환경설정
____Ncrack에서MQTT인증크래킹모듈작성
____MQTT에대한Ncrack모듈테스트
__결론


5장.네트워크프로토콜분석
__네트워크프로토콜검사
____정보수집
____분석
____프로토타이핑과도구개발
____보안평가수행
__DICOM프로토콜분석용루아기반와이어샤크분석기개발
____루아로작업
____DICOM프로토콜이해
____DICOM트래픽생성
____와이어샤크에서루아활성화
____분석기정의
____메인프로토콜분석기기능정의
____분석기완성
__C-ECHO요청분석기만들기
____AET의문자열값추출
____분석기함수채우기
____가변길이필드구문분석
____분석기테스트
__Nmap스크립팅엔진용DICOM서비스스캐너작성
____DICOM용Nmap스크립팅엔진라이브러리작성
____DICOM코드와상수
____소켓생성및소멸함수작성
____DICOM패킷송수신기능정의
____DICOM패킷헤더생성
____A-ASSOCIATE요청메시지콘텍스트작성
____Nmap스크립팅엔진에서스크립트인수읽기
____A-ASSOCIATE요청구조정의
____A-ASSOCIATE응답구문분석
____최종스크립트작성
__결론


6장.무설정네트워킹익스플로잇
__UPnP익스플로잇
____UPnP스택
____알려진UPnP취약점
____방화벽에홀펀칭
____WAN인터페이스를통한UPnP악용
____기타UPnP공격
__mDNS와DNS-SD익스플로잇
____mDNS작동방식
____DNS-SD작동방식
____mDNS및DNS-SD로정찰
____mDNS프로빙단계악용
____mDNS와DNS-SD중간자공격
__WS-Discovery활용
____WS-Discovery작동방식
____네트워크에서카메라위조
____WS-Discovery공격제작
__결론


3부.하드웨어해킹
7장.UART,JTAG,SWD익스플로잇
__UART
____UART와통신하기위한하드웨어도구
____UART포트식별
____UART전송속도식별
__JTAG와SWD
____JTAG
____SWD작동방식
____JTAG및SWD와통신하기위한하드웨어도구
____JTAG핀식별
__UART및SWD를통한장치해킹
____STM32F103C8T6(블랙필)대상장치
____디버깅환경설정
____아두이노에서타깃프로그램코딩
____아두이노프로그램플래싱과실행
____대상디버깅
__결론


8장.SPI와I2C
__SPI및I2C통신을위한하드웨어
__SPI
____SPI작동방식
____SPI를사용한EEPROM플래시메모리칩덤핑
__I2C
____I2C작동방식
____컨트롤러주변장치I2C버스아키텍처설정
____버스파이러트로I2C공격
__결론


9장.펌웨어해킹
__펌웨어와운영체제
__펌웨어확보
__무선공유기해킹
____파일시스템추출
____파일시스템콘텐츠정적분석
____펌웨어에뮬레이션
____동적분석
__펌웨어에백도어심기
__펌웨어업데이트메커니즘공략
____컴파일및설정
____클라이언트코드
____업데이트서비스실행
____펌웨어업데이트서비스의취약점
__결론


4부.무선해킹
10장.단거리무선통신:RFID남용
__RFID작동원리
____무선주파수대역
____수동형및능동형RFID기술
____RFID태그의구조
____저주파RFID태그
____고주파RFID태그
__Proxmark3로RFID시스템공격
____Proxmark3설정
____Proxmark3업데이트
____저주파및고주파카드식별
____저주파태그복제
____고주파태그복제
____RFID태그시뮬레이션
____RFID태그변경
____안드로이드앱으로MIFARE공격
____비브랜드또는비상업적RFID태그에대한RAW명령
____태그-리더기통신도청
____캡처된트래픽에서섹터키추출
____합법적인RFID리더기공격
____Proxmark3스크립팅엔진을사용해RFID공격자동화
____사용자지정스크립팅을사용한RFID퍼징
__결론


11장.저전력블루투스(BLE)
__BLE동작방식
____일반액세스프로필과일반속성프로필
__BLE로작업
____BLE하드웨어
____BlueZ
____BLE인터페이스구성
__장치검색과특성나열
____GATTTool
____Bettercap
____특성,서비스및설명자나열
____읽기와쓰기특성
__BLE해킹
____BLECTFInfinity설정
____시작하기
____플래그1:특성및설명자살펴보기
____플래그2:인증
____플래그3:MAC주소스푸핑
__결론


12장.중거리무선:와이파이해킹
__와이파이작동방식
__와이파이보안평가를위한하드웨어
__무선클라이언트대상와이파이공격
____인증해제및서비스거부공격
____와이파이연결공격
____와이파이다이렉트
__액세스포인트대상와이파이공격
____WPA/WPA2크랙
____WPA/WPA2엔터프라이즈크랙으로자격증명획득
__테스트방법론
__결론


13장.장거리무선:LPWAN
__LPWAN,LoRa,LoRaWAN
__LoRa트래픽캡처
____헬텍LoRa32개발보드설정
____LoStik설정
____CatWANUSB스틱을LoRa스니퍼로전환
__LoRaWAN프로토콜디코딩
____LoRaWAN패킷형식
____LoRaWAN네트워크에참여
__LoRaWAN공격
____비트플립핑공격
____키생성및관리
____리플레이공격
____도청
____ACK스푸핑
____애플리케이션별공격
__결론


5부.IoT생태계공략
14장.모바일애플리케이션공격
__IoT모바일앱의위협요소
____아키텍처를구성요소로세분화
____위협식별
__안드로이드및iOS보안제어
____데이터보호및암호화된파일시스템
____애플리케이션샌드박스,보안IPC및서비스
____애플리케이션서명
____사용자인증
____격리된하드웨어구성요소및키관리
____검증및보안부팅
__iOS애플리케이션분석
____테스트환경준비
____IPA추출및재서명
____속성목록파일에서민감한데이터검사
____동적분석
____인젝션공격
____키체인저장소
____바이너리리버싱
____네트워크트래픽가로채기및검사
____동적패치를사용해탈옥탐지피하기
____정적패치를사용해탈옥탐지피하기
__안드로이드애플리케이션분석
____테스트환경준비
____APK추출
____정적분석
____바이너리리버싱
____동적분석
____네트워크트래픽가로채기및검사
____부채널유출
__정적패치를이용한루팅탐지피하기
____동적패치를사용해루팅탐지피하기
__결론


15장.스마트홈해킹
__건물에물리적으로침입
____도어록시스템의RFID태그복제
____무선경보재밍
__IP카메라스트림재생
____스트리밍프로토콜의이해
____IP카

출판사 서평

◈이책에서다루는내용◈

◆실제IoT시스템,프로토콜,장치를신속하게테스트할수있는개념과기술서술
◆UART,I2C,SPI,JTAG,SWD와같은가장기본적인하드웨어해킹기술탐구
◆UPnP,WS-Discovery,mDNS등의IoT네트워크프로토콜분석
◆전문적인테스트업무를하면서저자가겪었던실제사례


◈옮긴이의말◈

세상은점점더많은사물이인터넷에연결되는사물인터넷(IoT,InternetofThings)시대를맞이하고있다.세탁기,청소기,TV,에어컨,자동차,손목시계등우리생활에밀접한사물이컴퓨터화되고,‘스마트’라는접두사가붙어스마트TV,스마트에어컨,스마트워치라불리며,인터넷연결이전의제품들과구분돼호칭되고있다.
사물이인터넷에연결되는이유는바로사용자의편의성이높아지기때문이다.하지만사물이인터넷에연결되면편의성만높아지는것이아니라그이면의부작용도함께동작한다.
2013년,세계적인해킹콘퍼런스인블랙햇USA에서우리나라의유명해커이승진(akaBeist)씨는국내대기업의스마트TV를해킹하는내용을발표했다.발표내용중조작된재난방송이TV화면으로송출되는것을시연했는데,이러한공격이현실에서발생한다면매우큰사회적혼란이발생할것이라는데동의하지않을사람은없을것이다.이러한문제가발생하는근본적인이유는사물이인터넷과연결되고컴퓨터화되는속도를보안이따라잡지못하기때문일것이다.
물론스마트TV와같은대기업의제품은취약점이발견되면빠르게조치되겠지만,그렇지못한수많은IoT기기는악의적인해커의공격으로부터자유롭지못하다.지금이순간에도취약점을가진공유기와IP카메라는누군가에게편리함을제공하는동시에봇넷악성코드에감염돼지구반대편에있는기업을대상으로DDoS공격에사용되고있을지도모른다.
이책은단순한보안서적을넘어가정과기업에서사용하는IoT기기를바라보는관점을바꾸고더나은보호모델을구축하는데목적이있다.우리나라는2018년부터사물인터넷인증제도를시행했지만의무가아니기에아직크게활성화되지못하고있는데,저자의바람처럼이책을선택한IoT기기해킹에관심있는독자들의관점변화를시작으로사물인터넷생태계가안전하게보호되는환경이조성되길희망한다.


◈이책의대상독자◈

해커(때때로보안연구자로불림)를대상으로집필했지만,다음과같은사람들에게도유용할것으로기대한다.
◆IoT생태계의낯선프로토콜,데이터구조,구성요소,개념을실험하는참고자료가필요한보안연구자
◆조직환경과자산을더잘보호하는방법을배우고자하는기업시스템관리자나네트워크엔지니어
◆고객의새로운요구사항을발견하고,요구사항을제품에반영함으로써비용을절감하고제품출시시간을단축하고자하는IoT기기의제품관리자
◆새로운기술을습득해더나은서비스를제공하고자하는보안평가자
◆사람을보호하는보람있는직업으로나아가는데도움이되는지식을원하는호기심많은학생


◈이책의구성◈

1장,‘IoT보안세계’에서는IoT보안이왜중요한지,IoT해킹이무엇이특별한지설명하며,책의나머지부분에필요한기초를마련한다.
2장,‘위협모델링’에서는IoT시스템에서위협모델링을적용하는방법과일반적인IoT위협을다루며,약물주입펌프와그구성요소들의위협모델예시를통해이를설명한다.
3장,‘보안평가방법론’에서는IoT시스템의모든계층에서포괄적인수동보안평가를수행하기위한견고한프레임워크를제시한다.
4장,‘네트워크평가’에서는IoT네트워크에서VLAN호핑을수행하고,네트워크에서IoT기기를식별하며,Ncrack모듈을생성해MQTT인증을공격하는방법을살펴본다.
5장,‘네트워크프로토콜분석’에서는낯선네트워크프로토콜을다루는방법론을제공하고,DICOM프로토콜을위한와이어샤크디섹터(dissector)와Nmap스크립트엔진모듈개발과정을설명한다.
6장,‘무설정네트워킹익스플로잇’에서는IoT시스템의배포와구성을자동화하기위해사용되는네트워크프로토콜을살펴보고,UPnP,mDNS,DNS-SD,WS-Discovery의공격을다룬다.
7장,‘UART,JTAG,SWD익스플로잇’에서는UART와JTAG핀을열거하는방법과UART와SWD를사용해STM32F103마이크로컨트롤러를해킹하는방법을설명함으로써UART와JTAG/SWD의내부작동을다룬다.
8장,‘SPI및I2C’에서는2개의버스프로토콜을다양한도구와함께활용해임베디드IoT기기를공격하는방법을살펴본다.
9장,‘펌웨어해킹’에서는백도어펌웨어를입수,추출,분석하는방법과펌웨어업데이트프로세스의일반적인취약점을조사하는방법을보여준다.
10장,‘단거리무선통신’에서는RFID남용에서는카드를읽고복제하는방법등RFID시스템대상의다양한공격을다룬다.
11장,‘저전력블루투스(BLE)’에서는간단한실습을통해저전력블루투스프로토콜을공격하는방법을설명한다.
12장,‘중거리무선:와이파이해킹’에서는무선클라이언트의와이파이연결공격,와이파이다이렉트를악용하는방법,액세스포인트대상일반적인와이파이공격을설명한다.
13장,‘장거리무선:LPWAN’에서는LoRa및LoRaWAN프로토콜에대한기본적인소개와함께이러한종류의패킷을캡처하고디코딩하는방법과일반적인공격을다룬다.
14장,‘모바일애플리케이션공격’에서는안드로이드및iOS플랫폼에서모바일앱을테스트할때발생할수있는일반적인위협,보안문제,기술을검토한다.
15장,‘스마트홈해킹’에서는스마트도어락을우회하는기술,무선경보시스템을방해하는방법,IP카메라피드를재생하는방법을설명하며,책에서다룬많은아이디어를실제사례로설명한다.15장은스마트러닝머신을제어하는실제사례를통해마무리된다.