Download presentation
Presentation is loading. Please wait.
1
What is DRM? Jin Seo Park
2
WHAT Is protecting content?
3
What is protecting content?
01 What is protecting content? DRM Digital Right Management의 약자 콘텐츠 유통 전 환경에서의 콘텐츠의 저작권 보호/관리 서비스 회사내 문서 보안에도 사용된다 What is DRM?
4
What is protecting content?
01 What is protecting content? Different content, different methods Copyright protection Online music, Video On Demand… Control external to the content Software protection 비디오 게임등을 보호 소프트웨어를 보호. What is protected?
5
What is protecting content?
01 What is protecting content? 어떻게 콘텐츠가 악의적으로 사용되지 않도록 막을 수 있을까? How to protect? Problems Computer : 물리적인 보안 모듈이 없다. Attacker : 공격자가 원하는 환경에서 실행 가능
6
What is protecting content?
01 DRM이 생기게 된 배경 CD와 DVD의 사용과 함께 DRM의 등장 디지털 시장의 성장과 함께 DRM 시장 성장 DRM Free에 따른 DRM 시장 축소 What is protecting content? What is protected?
7
What is protecting content?
01 What is protecting content? 국내 DRM 현황 기업 부분 기업 내에서 생산되고 유통되는 전자 문서의 불법 유출을 방지하고 권한 통제 및 사용 내열을 추적 디지털 콘텐츠 부분 온라인 음악, 동영상 등 디지털화된 멀티 미디어 제작물의 불법 유통을 막고 합법적인 콘텐츠 유통을 지원 Current Status of DRM
8
What is protecting content?
01 What is protecting content? DRM의 여러 종류들 Cryptographic DRM DVD CSS Hardware-based DRM Copy-protection dongles HDCP Streaming DRM PlayReady RTMPE Kind of DRM 이 다음으로는 현재 존재 하는 여러 DRM에 대해서 알아 보겠습니다.
9
What is protecting content?
01 What is protecting content? Cryptographic DRM DVD CSS Kind of DRM
10
What is protecting content?
01 What is protecting content? Kind of DRM DVD CSS (Content Scrambling System) CSS는 불법적인 DVD 복사로 부터 막기 위한 데이터 암호화 및 인증 방법이다. 지금은 많이 사용되지 않는다.
11
What is protecting content?
01 What is protecting content? Player Key Kind of DRM Decrypt Disk Key Disc Key Disk Key Title Key Scramble Video Data Title Key Scramble Video Data Decrypt Disk Key Title Key Decrypt Disk Key <DVD> Video Output
12
What is protecting content?
01 What is protecting content? Kind of DRM Jon Lech Johansen에 의해 CSS가 깨짐
13
What is protecting content?
01 What is protecting content? Kind of DRM <Decss code>
14
What is protecting content?
01 What is protecting content? Hardware-based DRM Copy-protection dongles HDCP Kind of DRM
15
What is protecting content?
01 What is protecting content? Kind of DRM Copy-protection dongles 특정 프로그램의 복사나 실행 시 인가된 사용자만이 사용할 수 있도록 보안키 나 ID를 저장한 장치 이러한 동글이 없으면 소프트웨어는 제한된 모드에서만 실행되거나 아예 실행조차 하지 못한다.
16
What is protecting content?
01 HDCP 디지털 신호를 송수신하는 경로에서 콘텐츠를 암호화하여 전송하는 기술 즉, 컴퓨터 밖에서 복호화가 이루어진다. What is protecting content? Kind of DRM
17
What is protecting content?
01 What is protecting content? Kind of DRM
18
What is protecting content?
01 What is protecting content? Kind of DRM
19
What is protecting content?
01 What is protecting content? HDCPv1의 MasterKey가 이미 유출 되었다!!! Kind of DRM
20
What is protecting content?
01 What is protecting content? What is DRM?
21
What is protecting content?
01 What is protecting content? Streaming DRM PlayReady Spotify 스마트폰 스트리밍 서비스 What is DRM?
22
What is protecting content?
01 What is protecting content? What is DRM? Spotify 미국 메이저 음반사의 음악을 스트리밍 지원해주는 서비스 이다. 서버기반의 스트리밍과 리스너들간에 대한 피어투피어 기술을 사용
23
What is protecting content?
01 What is protecting content? What is DRM? Spotify 로컬 영역에 캐시로 저장된 음원 파일 추출 로컬 영역에 암호화 되어 저장 된다
24
What is protecting content?
01 What is protecting content? Audio driver Music App What is DRM? Hooking App Hardware Level에서 복호화된 음원을 추출한다
25
What is protecting content?
01 What is protecting content? Smart phone music 스마트폰 스트리밍 서비스 스마트폰 스트리밍 음원 서비스 여러 가지 문제점들이 존재한다.
26
What is protecting content?
01 스마트폰 음원 서비스의 여러 가지 문제점 사용자 인증 우회 취약점 사용자 미인증 취약점 파일 다운로드 과정에서의 음원 추출 취약점 What is protecting content? Attack Smartphone Service
27
What is protecting content?
01 사용자 인증 우회 취약점 비 로그인 사용자가 보내는 데이터 중에서 사용자의 아이디가 보내지는 부분을 변경하여 인증을 우회 미인증 사용자도 음원 서비스를 이용할 수 있다. What is protecting content? Attack Smartphone Service 미인증 사용자 스트리밍 서비스 접근
28
하지만 현재 대부분의 서비스 들이 이 취약점을 개선 하였다!!!
Step 1 : 사용자가 듣고 싶은 음악을 선택하면, 어플리케이션은 재생하고자 하는 음원 정보와 사용자의 로그인 정보를 uid 변수에 전송한다. Step 2 : 서버는 uid 변수값을 이용하여 사용자의 로그인 정보를 확인하고, 스트리밍 서비스에 가입하지 않은 사용자인 경우 1분 미리 듣기 음원 파일, 가입한 사용자인 경우 음원 전체 파일을 다운로드 받을 수 있는 주소를 반환 한다. Step 3 : 어플리케이션은 반환받은 주소를 통해 음원을 다운로드 받아서 음원을 재생한다. 하지만 현재 대부분의 서비스 들이 이 취약점을 개선 하였다!!!
29
What is protecting content?
01 사용자 미인증 취약점 스트리밍 서비스에 가입한 사용자는 스트리밍 서비스만을 사용 가능해야 하지만 음원을 획득할 수 있다. 음원 전체 파일을 다운로드 받은 뒤 어플리케이션에서 이를 제어하기 때문이다. What is protecting content? Attack Smartphone Service 로컬 영역 저장이 불가능해야 한다
30
Step 1 : 사용자가 재생하고자 하는 음원의 가사 정보를 요청하여 받는다.
Step 2 : 사용자 인증정보와 음원 정보를 전송하여, 음원을 다운로드 받을 수 있는 주소를 받는다. 이때, 사용자 인증 정보는 HTTP 헤더에서 Cookie로 전송한다. Step 3 : 수신한 주소를 통하여 음원을 다운로드 받는다.
31
Other way To protect content
32
Other way to protect content?
02 워터 마킹이란? 원래 워터마크라는 용어는 지폐 제작과정에서 유래되었다 젖어있는 상태에서 그림을 넣는 기술을 워터마크라 부른다 Other way to protect content? Protect by watermarking
33
Other way to protect content?
02 Other way to protect content? 디지털 워터 마킹 디지털 데이터에 저작권 정보와 같은 정보를 삽입하여 관리하는 기술을 말한다. Protect by watermarking + = 원본영상 워터마크가 삽입된 영상 워터마크
34
Other way to protect content?
02 Other way to protect content? 워터 마크를 통한 콘텐츠 관리 소유권 증명(Ownership Protection) 디지털 데이터 내의 자작자에 관헌 정보를 삽입 저작권 보호 및 주장 가증 소유자 확인(Fingerprinting) 디지털 데이터 내에 사용자에 관한 정보를 삽입 불법 유통자, 복사자의 추적 가능 불법 복제의 원천지를 추적하기 위해 사용 컨텐츠 인증 DVR(Digital Video Recoder) 시스템 Protect by watermarking
35
Other way to protect content?
02 디지털 워터 마킹의 종류 공간 영역에 삽입을 하는 Watermark 주파수 영역에 삽입을 하는 Watermark Other way to protect content? Protect by watermarking
36
Other way to protect content?
02 Other way to protect content? Protect by watermarking
37
Other way to protect content?
02 Other way to protect content? Protect by watermarking
38
Other way to protect content?
02 Other way to protect content? 워터마킹 공격 워터마크가 삽입되어 있는 디지털 콘텐츠에 변형을 가해서 삽입된 워터마크가 검출되지 않도록 하는 것 Protect by watermarking + 워터마킹 공격 워터마크가 삽입된 영상 워터마크가 변형된 영상 변형된 워터마크
39
Other way to protect content?
02 Other way to protect content? 워터마킹 공격 종류 제거 공격 (Removal attack) 비동기화 공격 (Desynchronization attack) 암호 공격 (Cryptographic attack) 프로토콜 공격 (Protocol attack) Protect by watermarking
40
Other way to protect content?
02 제거 공격 (Removal attack) 가장 확실한 공격 방법이다. 콘텐츠에서 워터마크의 정확한 위치를 알 때 해당 워터 마크를 제거 Other way to protect content? Protect by watermarking
41
Other way to protect content?
02 비동기화 공격 (Desynchronization attack) 워터마크가 삽입되어 있는 이미지 / 동영상에 변형을 가하여 워터마크를 검출하지 못하게 하는 방법 대표적으로 RST 공격 (기하학적 변형 공격)이 있다. Other way to protect content? Protect by watermarking
42
Other way to protect content?
02 Other way to protect content? Protect by Obscurity Security through obscurity 코드 난독화 (Obfuscating code) 키 보호 (Protecting secrets) 메모리 분석 보호 (Preventing memory analysis)
43
Other way to protect content?
02 Other way to protect content? Protect by Obscurity 코드 난독화 프로그램들의 내부 동작을 은폐 할 필요가 있을 때 사용 복호화 키를 다루는 부분과 같은 민감한 부분을 난독화 시킨다.
44
Other way to protect content?
Step 1 : unprotected function Int f (int x) { return 16 * x + 16 ; } 02 Other way to protect content? Protect by Obscurity Step 2 : addition / subtraction int f (int x) { return (-16*x + ( )); } Step 3 : expansion int f (int x) { return * (-16 * x * * – 16 * ) ; }
45
Other way to protect content?
02 Other way to protect content? Protect by Obscurity
46
Other way to protect content?
02 Other way to protect content? Protect by Obscurity
47
Other way to protect content?
02 Other way to protect content? 중요 정보 보호(Protecting secrets) An attacker : 프로그램의 임의로 조작 할 수 있다. 즉 키(Key)와 데이터(Data)가 쉽게 조작이 가능하다. How to protect the keys / the secrets ? Hide them in the code Protect by Obscurity
48
Other way to protect content?
02 Other way to protect content? Protect by Obscurity White-box encryption 암호화 키에 대한 유추를 방지하기 위해 암호화 키 정보를 소프트웨어로 구현된 암호화 알고리즘에 섞는 방법 공격자가 알고리즘 내부 동작을 분석하더라도 암호화 키를 쉽게 유추할 수 없도록 하는 기술
49
Way to Break DRM
50
03 Loop 메모리에 복호화된 콘텐츠 추출 Way to break DRM
메모리에 복호화된 콘텐츠 추출 “Steal Tis Movie”라는 논문에서 소개 되었던 방법 암호화된 컨텐츠가 복호화 과정에서 메모리에 저장된다는 것을 이용 Encrypted Content Decryption Loop
51
BBL Unused <code> BBL <BBL Stack>
52
03 Way to break DRM loop Unused
53
03 <Memory> Way to break DRM Entropy : high high
Buffer Unused <Memory> Way to break DRM Entropy : high high Randomness : high high Entropy : high high Randomness : high low Entropy : high low Randomness : low low
54
03 <Memory> Way to break DRM Decrypted Content
Buffer Unused Decrypted Content <Memory> Way to break DRM Entropy : high high Randomness : high low
55
Q & A
56
THANK YOU
Similar presentations