책소개
많은 사람들은 대중교통, 간편 결제 등 많은 분야에서 비 접촉식 카드를 이용하고 있다. NFC는 비 접촉식 결제 중에서 비중이 가장 크고 실생활에 적용되지 않은 분야를 찾아보기 힘들 정도로 우리의 삶과 밀접해 있는 기술이다. 우후죽순으로 생겨나는 NFC 사업장에 비하여 보안 수준이 현저히 떨어지고 있는 실상으로 인해 보안 인식 제고 차원에서 본 책을 집필하게 되었다.
2010년 2014년 교통카드 및 출입통제 시스템 해킹 사건이 계기가 되어NFC Tag에 대한 취약점을 분석하고 대응방안을 연구하기 위해 프로젝트를 진행하였다.처음에 우리는 MFRC522 모듈 하나로, 모든 것을 할 수 있다는 생각을 갖고 행복한 상상의 나래를 펼치고 있었다. 하지만 현실의 벽은 높았고, 우리가 넘어야할 산은 너무 나도 많았다. NFC관련한 전문 지식인이 주위에 없다 보니, 하나부터 열 까지다 조사하고 공부해야 했다. 프로젝트 과정 중에 우리가 알게 된 지식 이나 기술들을 최대한 녹여 책으로 남겨서 NFC관련한 프로젝트를 진행하거나 NFC기술에 관심이 있는 이들에게 도움을 주고 싶다.
이 책의 내용은 총 5개의 Part로 구분 되어 있다. Part 1에서는 NFC의 개념과 현황에 대해서 소개하며, Part 2에서는 NFC Tag 규격에 대한 설명을 한다. Part 3에서는 본격적으로 Tag에 대한 분석 도구와 Tag에 대한 분석 과정을 다루었고, Part 4에서는 Tag별 취약점에 다루고 있다. 마지막 Part 5에서는 NFC를 개발하기 위한 환경 구축 및 개발 방법에 대해서 다루었다.
목차
PART 1 What is NFC ?
Chapter 1 NFC
1.1 NFC의 개념
1.2 NFC 동작 방식
1) 맨체스터 코딩(Manchester Coding)
2) 수정된 밀러 코딩(Modified Miller Coding)
3) 비 제로 복귀(None-Return to Zero Coding)
1.3 NFC 모드
1) 능동 통신 모드(Active Communication Mode)
2) 수동 통신 모드(Passive Communication mode)
Chapter 2 NFC Tag
1.1 NFC Tag의 개념
1) 전자기 유도 현상(Faraday's law of electromagnetic induction)
2) 데이터 처리
1.2 NFC Card 통신 규격
Chapter 3 NFC 현황
3.1 NFC Tag의 활용분야
3.2 NFC 기술 동향
3) NFC 국내 기술 및 응용 서비스 동향
4) NFC 해외 기술 및 응용 서비스 동향
PART 2 NFC Tag 규격
Chapter 1 MIFARE Classic
1.1 MIFACE Classic
1) 개 요
2) 구 조
3) 통신 프로토콜
(1) Request
(2) Anti-Collision
(3) Select Card
(4) MIFARE Classic 인증 프로토콜
(5) HALT
?
Chapter 2 SRT512
2.1 SRT512
1) 개 요
2) 구 조
3) 통신 프로토콜
(1) READY
(2) INVENTORY
(3) SELECTED
4) 명령어
(1) 명령어 테이블
(2) INITIATE
(3) PCALL16
(4) SLOT_MARKER
(5) SELECT
(6) READ_BLOCK
(7) WRITE_BLOCK
(8) GET_UID
Chapter 3 MIFARE PLUS
3.1 MIFARE PLUS
1) 개 요
2) 구 조
PART 3 NFC Tag Analysis
Chapter 1 MCT
1.1 MIFARE Classic Tool 소개
1.2 기능소개
1) Read Tag
2) Write Tag
3) 한계점 및 활용방안
Chapter 2 MFRC522
2.1 Arduino Uno - MFRC522를 이용한 NFC Tag 분석
2.2 Raspberry PI - MFRC522를 이용한 NFC 태그 분석
Chapter 3 ACR122U
3.1 ACR122U를 이용한 NFC Tag 분석
1) ACS ACR122U SDK
2) NFC-Tools
(1) USB로 Pentoo OS 부팅하기
(2) LIBNFC 설치하기
(3) MIFARE Classic Cracking 하기
Chapter 4 Proxmark3
4.1 Proxmark3 이해
1) 개 요
2) Specification
3) Installation
4) Firmware Upgrade
4.2 ISO 14443 Type A 분석 및 크랙
1) MIFARE Classic Key Crack
(1) Known Key Check
(2) Nested Attack
(3) Dark Side Attack
2) MIFARE Series & Others 분석
(1) 데이터 수집
(2) Tag Simulating
4.3 ISO 14443 Type B 분석
1) ST/SR Series 분석
2) Others Tag 분석
3) Tag Simulating
4.4 Lua Script
?
PART 4 Tag 규격 별 취약점
Chapter 1 MIFARE Classic
1.1 MIFARE Classic 취약점
1) 난수 일치 문제
2) 알려진 평문 공격
3) 그 밖에 공격
(1) Default Key Search Attack
(2) Snooping Attack
4) 분석 시사점
Chapter 2 SRT512
2.1 SRT512 취약점
1) 운영 시스템 문제
2) 데이터 Sniffing
3) Card Cloning
4) 분석 시사점
Chapter 3 MIFARE PLUS
3.1 MIFARE PLUS 분석
1) MIFARE PLUS Security Level 1
2) MIFARE PLUS Security Level 3
(1) MIFARE Plus 공격 방법
(2) MIFARE Plus Side Channel Attack
(3) Sniffing 데이터 분석
PART 5 개발 환경 구축
Chapter 1 개발환경 구축
1.1 Android Application 개발환경 구축
1.2 MFRC522 모듈을 이용한 개발환경 구축
1) Arduino UNO
2) Raspberry PI