ݺߣ

ݺߣShare a Scribd company logo
임베디드SW 와
보안
2017.11.04
박수현
Who am I
 What I Do
 Software Architect
 Embedded Software Developer
 Linux Kernel Development
 My Specialty
 IoT Security
 Network Appliance / Security Appliance
 Switch, Router, Firewall, UTM (Unified Threat Management)
 Hobby
 SW Maestro Mentor / ICT Mentor
 Part-time lecturer
 Raspberry Pi, Arduino, IoT Development
 Bounty hunter (contests / hackathon)
Contents
 임베디드 SW란
 임베디드 디바이스 & 펌웨어
 임베디드 리눅스 & OSS
 임베디드 디바이스 해킹
 임베디드 소프트웨어 취약점 사례
Intro – 시작하기에 앞서…
보안/크래킹은 양날의 칼
해킹? 보안? 윤리의식부터…
http://www.boannews.com/media/view.asp?idx=42670
http://www.ddaily.co.kr/news/article.html?no=129698
임베디드 SW?
 https://ko.wikipedia.org/wiki/임베디드_시스템
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드 디바이스 & 펌웨어
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
펌웨어?
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
펌웨어 보안
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
static char *PASSWORD=“secret”;
If (!strcmp(input, PASSWORD)) {
…
}
임베디드 시스템 & 운영체제
Functionality
Complexity
More Performance
Flexibility
Less cost
Lower Power
Less TTM (Time-to-market)
MCU vs CPU
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
Processor History
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
Microprocessor vs
Microcontroller
 게임
 웹 브라우징
 사진 편집
 문서 작업
 수학 계산
 시뮬레이션
 등등..
 입력Fx출력
 디지털카메라
 세탁기
 전자레인지
 등등..
 가격
 전력
 성능
 목적
 등등..
CPU Only CPU, ROM, RAM, IO, Timer…
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
우분투코리아 2017.11.04 대전 세미나 - 임베디드와보안
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
Microcontroller Application
if (button_pressed) {
do_취사();
} else {
do_보온();
}
while (1) {
}
switch(button) {
case ‘1’:
do_취사();
case ‘2’:
do_예약();
case ‘3’:
do_요리();
case ‘4’:
do_급속();
}
thread1() {
sensor();
}
thread2() {
timer();
}
thread3() {
buttons();
}
thread4() {
network();
}
임베디드 운영체제 & 리눅스
 Proprietary OS (자체OS)
 Commercial OS
 VxWorks (WindRiver)
 pSOS (ISI)
 WindowsCE (Microsoft)
 OpenSource OS
 Linux
 기타
 Android (Linux)
 Zephyr Project (Linux)
 OpenWRT (Linux)
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
- 재사용성
- 높은 이식성
- 확장성
- 안정성
- 변경용이성
- 취약점은 TBD
(to be discussed)
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
if (cf_inserted) {
do_read_cf();
} if (sd_inserted) {
do_read_sd();
}
BUT…
Device driver…
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
출처: https://en.wikipedia.org/wiki/Linux_kernel#/media/File:Linux_kernel_map.png
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
More Performance
Flexibility
Less cost
Lower Power
Less TTM (Time-to-market)
Security TBD… Later…
0-day attack
1-day attack
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드 디바이스 & 오픈소스
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드 개발 HowTo
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
Yocto Project
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
Backdoor?
 *#06#
 *3001#12345#* call
 *#0*# (android)
 *#67# call
 *#7353# (galaxy)
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드 디바이스 해킹
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
Mirai 봇넷
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
취약점…
 펌웨어
 디바이스 드라이버
 부트로더
 운영체제(OS)
 응용소프트웨어
 아이폰 탈옥
(Jailbreaking)
 안드로이드 루팅
(Rooting)
 IoT 디바이스
 물리적 해킹/도난
 메모리덤프
 데이터 위변조
 리버싱
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드 SW 취약점 사례
 https://www.youtube.com/watch?v=r8RC
wdDtIYY
 https://www.youtube.com/watch?v=A9e
a9fllnME 3분30초~ 7분
 https://www.youtube.com/watch?v=MK0
SrxBC1xs
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
 http://www.ahnlab.com/kr/site/securityinf
o/secunews/secuNewsView.do?seq=24122
 http://www.ahnlab.com/kr/site/securityinf
o/secunews/secuNewsView.do?seq=25779
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
라이브 해킹 시연
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
임베디드 SW 와 보안
 https://www.owasp.org/images/7/71/Inter
net_of_Things_Top_Ten_2014-OWASP.pdf
 https://www.owasp.org/index.php/OWAS
P_Internet_of_Things_Project
 데이터 암호화
 시큐어코딩
 시큐어 OS
 지속적 업데이트
 … lots of things to do …
임베디드SW  펌웨어  운영체제  오픈소스  해킹/취약점
The End
정보보안해커톤 2017
 무박2일, 26시간 30분의 개발 마라톤 그 후기

More Related Content

우분투코리아 2017.11.04 대전 세미나 - 임베디드와보안