DIGITAL RIGHTS MANAGEMENT Hoang Viet Lam Tran Quoc Trieu 1.

Slides:



Advertisements
Similar presentations
Compliance and Robustness Rules for Windows Media DRM Implementations Microsoft Corporation.
Advertisements

Call Server LIS VPC ESGW SR Manhattan PSAP LO=Wall St Route=Manhattan PSAP The Location Object (LO) is provided in the call setup information to the Call.
Chapter 1  Introduction 1 Chapter 1: Introduction “Begin at the beginning,” the King said, very gravely, “and go on till you come to the end: then stop.”
Cloakware Corporation, 260 Hearst Way, Suite 311, Kanata, Ontario, Canada K2L 3H1 Spencer Cheng Trusting DRM Software Presentation.
Digital Rights Management: The Technology behind the Hype Mark Stamp Department of Computer Science San Jose State University.
Computer Science 654 Lecture 5: Software Reverse Engineering Professor Wayne Patterson Howard University Spring 2009.
Software Part 4  Software 2 Software Reverse Engineering (SRE)
Digital Signatures and Hash Functions. Digital Signatures.
Programming Types of Testing.
VM: Chapter 5 Guiding Principles for Software Security.
Linux vs. Windows. Linux  Linux was originally built by Linus Torvalds at the University of Helsinki in  Linux is a Unix-like, Kernal-based, fully.
Disclaimer The Content, Demonstration, Source Code and Programs presented here is "AS IS" without any warranty or conditions.
Blue Spike © 2001 Blue Spike, Inc. - 1 Copyright Protection? What are the technologies which can address copyright management in a world of digital copies?
Mod H-1 Examples of Computer Crimes. Mod H-2 Stuxnet.
DESIGNING A PUBLIC KEY INFRASTRUCTURE
BY MUKTADIUR RAHMAN MAY 06, 2010 INTERODUCTION TO CRYPTOGRAPHY.
The MediaSnap ® Digital Rights Management System Priti Sabadra and Mark Stamp Department of Computer Science San Jose State University.
Security Internet Management & Security 06 Learning outcomes At the end of this session, you should be able to: –Describe the reasons for having system.
Cryptography (continued). Enabling Alice and Bob to Communicate Securely m m m Alice Eve Bob m.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering.
Security Internet Management & Security 06 Learning outcomes At the end of this session, you should be able to: –Describe the reasons for having system.
EEC 688/788 Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Chapter 1  Introduction 1 Chapter 1: Introduction “Begin at the beginning,” the King said, very gravely, “and go on till you come to the end: then stop.”
Reverse Engineering Ian Kayne For School of Computer Science, University of Birmingham 2 nd February 2009.
SRE  Introduction 1 Software Reverse Engineering (SRE)
DIGITAL RIGHT MANAGEMENT Bùi Thành Đ ạ t Nguy ễ n Hoàng Nh ậ t Đông Nguy ễ n Duy C ườ ng
D ATABASE S ECURITY Proposed by Abdulrahman Aldekhelallah University of Scranton – CS521 Spring2015.
Code Injection and Software Cracking’s Effect on Network Security Group 5 Jason Fritts Utsav Kanani Zener Bayudan ECE 4112 Fall 2007.
Cryptography Week-6.
Chapter 31 Network Security
Computer Security Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
Trying to like a boss… REVERSE ENGINEERING. WHAT EVEN IS… REVERSE ENGINEERING?? Reverse engineering is the process of disassembling and analyzing a particular.
Matthew Rothmeyer. Digital Rights Management (DRM) “ A class of technologies that are used by hardware manufacturers, publishers, copyright holders, and.
DRM Building Blocks - Protecting and Tracking Content Adopted from Chapter 5, Digital Rights Management Business and Technology.
COEN 351 E-Commerce Security Essentials of Cryptography.
CHAPTER 6 Cryptography. An Overview It is origin from the Greek word kruptos which means hidden. The objective is to hide information so that only the.
Cryptography, Authentication and Digital Signatures
1. Chapter 25 Protecting and Preparing Documents.
Lecture 16 Page 1 Advanced Network Security Perimeter Defense in Networks: Virtual Private Networks Advanced Network Security Peter Reiher August, 2014.
Introduction1-1 Data Communications and Computer Networks Chapter 6 CS 3830 Lecture 31 Omar Meqdadi Department of Computer Science and Software Engineering.
Network Security. 2 SECURITY REQUIREMENTS Privacy (Confidentiality) Data only be accessible by authorized parties Authenticity A host or service be able.
DRM: Technology overview Keunwoo Lee CSE 590 SO 19 April 2005.
Securing the Network Infrastructure. Firewalls Typically used to filter packets Designed to prevent malicious packets from entering the network or its.
1 CHAPTER 5 DIFFING. 2 What is Diffing? Practice of comparing two sets of data, before and after a changed has occurred Practice of comparing two sets.
Lecture 2: Introduction to Cryptography
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
COSC 513 Operating Systems Project Presentation: Internet Security Instructor: Dr. Anvari Student: Ying Zhou Spring 2003.
COEN 351 E-Commerce Security
n Just as a human virus is passed from person from person, a computer virus is passed from computer to computer. n A virus can be attached to any file.
Private key
Network Security Celia Li Computer Science and Engineering York University.
Software mechanism of Genesis --- a cheating software for Warcraft3 Yang Chen Wen Sun.
Lecture 5 Page 1 CS 236 Online More on Cryptography CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
9.2 SECURE CHANNELS JEJI RAMCHAND VEDULLAPALLI. Content Introduction Authentication Message Integrity and Confidentiality Secure Group Communications.
Computer and Information Security Chapter 12 Insecurity in Software 1.
OCR A Level F453: The function and purpose of translators Translators a. describe the need for, and use of, translators to convert source code.
Forms of Network Attacks Gabriel Owens COSC 352 February 24, 2011.
Information Systems Design and Development Security Precautions Computing Science.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Compilers and Security
CHAPTER 4 Methodology.
Network Security Presented by: JAISURYA BANERJEA MBA, 2ND Semester.
Attacking an obfuscated cipher by injecting faults
Malware Incident Response  Dynamic Analysis - 2
Cryptography.
Chap 10 Malicious Software.
Outline Using cryptography in networks IPSec SSL and TLS.
Chap 10 Malicious Software.
Computer and Information Security
Chapter 8 roadmap 8.1 What is network security?
Presentation transcript:

DIGITAL RIGHTS MANAGEMENT Hoang Viet Lam Tran Quoc Trieu 1

O UTLINE 1. Introduction 2. Software reverse engineering 3. Software tamper resistance 4. Digital rights management 2

3

S OFTWARE REVERSE ENGINEERING Reverse engineering is the process of analyzing a subject system to identify the system's components and their inter-relationships, and to create representations of the system in another form at higher levels of abstraction(Chikofsky and Cross1990) SRE can be used for good or not so good purposes. 4

S OFTWARE REVERSE ENGINEERING ( CONT ) The essential tools for SRE include a disassembler, a debugger and a hex editor. A disassembler converts an executable into assembly code(IDA Pro, Hackman). A debugger is used to set break points, which allows Trudy to step through the code as it executes(SoftICE, OllyDbg). 5

S OFTWARE REVERSE ENGINEERING ( CONT ) A hex editor is also a necessary SRE tool.The hex editor is the tool Trudy will use to directly modify, or patch, the exe file(UltraEdit, HIEW). Other tools that might sometimes prove useful include( Regmon-monitors all accesses of the Windows registry; Filemon-monitors all accesses of files) VMWare-which allows a user to set up virtual machines 6

S OFTWARE REVERSE ENGINEERING ( CONT ) Why do we need a disassembler and a debugger? For SRE work, boundless patience and optimism are also needed since SRE is extremely tedious and labor intensive. SRE is essentially a manual process The necessary technical skills for SRE include a working knowledge of the target assembly language and experience with the necessary tools 7

S OFTWARE REVERSE ENGINEERING ( CONT ) For our SRE example, we’ll consider code that requires a serial number. 8

S OFTWARE REVERSE ENGINEERING ( CONT ) Trudy disassembled serial.exe using IDA Pro tool 9

S OFTWARE REVERSE ENGINEERING ( CONT ) 10

S OFTWARE REVERSE ENGINEERING ( CONT ) 11

S OFTWARE REVERSE ENGINEERING ( CONT ) The instruction test eax,eax computes a binary AND of register eax with itself. This causes the flag bit—which is tested in the jump instruction at address 0x401032—to be zero only if the eax register contains 0 Replace instruction “ test eax,eax” at address 0x with “xor eax,eax” then the flag bit that is tested in line 0x will always be zero 12

S OFTWARE REVERSE ENGINEERING ( CONT ) Trudy examines the bits at address 0x x33C0 13

14

A NTI -D ISASSEMBLY T ECHNIQUES Encrypt executable file and when the exe file is in encrypted form, it can’t be disassembled correctly. False disassembly 15

A NTI -D ISASSEMBLY T ECHNIQUES (CONT) Another sophisticated anti-disassembly trick that has been used is self-modifying code. Self-modifying code modifies its own executable in real time. This is an effective way to confuse a disassembler, but it may also confuse the developers, since it’s difficult to implement and is error prone 16

A NTI -D EBUGGING T ECHNIQUES Since a debugger uses certain debug registers, a program can monitor the use of these registers and stop (or crash) if these registers are in use. A program can also monitor for inserted breakpoints, which is another telltale sign of a debugger 17

A NTI -D EBUGGING T ECHNIQUES (CONT) A simple anti-debugging technique 18

S OFTWARE T AMPER R ESISTANCE Guards: It’s possible to have the code hash sections of itself as it executes and compare the computed hash values with the known hash values of the original code. If tampering occurs, a hash check will fail and the program can take evasive action. 19

S OFTWARE T AMPER R ESISTANCE ( CONT ) Obfuscation: Another popular form of tamper resistance is code obfuscation. Here, the goal is to make the code difficult to understand “Spaghetti code” “Opaque predicate” 20

S OFTWARE T AMPER R ESISTANCE ( CONT ) Code obfuscation has sometimes been promoted as a powerful security technique.In fact, Diffie and Hellman’s original conception of public key cryptography suggested obfuscation as a likelyway to develop a such a cryptosystem. Recently it has been argued that obfuscation cannot possibly provide strong security in, say, the same sense as cryptography 21

M ETAMORPHISM R EVISITED The usual practice in software development is to distribute identical copies, or clones, of a particular piece of software to each customer Break once, break everywhere or BOBE Suppose we distribute metamorphic copies. That is, each copy of our software differs internally, but all copies are functionally identical. 22

M ETAMORPHISM R EVISITED (CONT) Thanks to open platforms and SRE, we cannot prevent attacks on software. Arguably, the best we can hope for is increased BOBE resistance. Metamorphism is one possible way to achieve a reasonable level of BOBE resistance. 23

DIGITAL RIGHTS MANAGEMENT What is DRM? Describe an actual DRM system designed to protect PDF documents. DRM system designed to protect streaming media Particular peer-to-peer application Use DRM to protect documents distributed within an enterprise 24

W HAT IS DRM? Trudy wants to sell her new book in digital form on the internet. Alice buys Trudy’s digital book and then redistributes it for free online => What happens? Persistent protection is the buzzword for the required level of DRM protection. Examples of the kinds of persistent protection on a digital book: No copying, read once, do not open until Christmas, … 25

W HAT IS DRM? What can be done to enforce persistent protection? One option is to rely on the honor system, whereby we do not actually force users to obey the rules but instead simply expect that they will. Example: horror novel writer Stephen King with a book The Plant. 26

W HAT IS DRM? Give up on enforcing DRM on an open platform such as a PC. Enforce persistent protection through software in a PC => failure Example: DRM system for protecting digital documents might be defeated by user who is knowledgeable enough to operate a screen capture program. 27

W HAT IS DRM? Another option would be to develop the strongest possible DRM system in software. A reasonably high level of DRM protection can be achieved. Example: Closed systems(game systems) 28

W HAT IS DRM? Cryptography is the solution to the DRM problem. 29

W HAT IS DRM? There is a fundamental limit on the effectiveness of any DRM system, since the so called analog hole is present in any DRM. When the content is rendered, it can be captured in analog form. 30

A R EAL -W ORLD DRM S YSTEM MediaSnap DRM systems 31 MediaSnap DRM systems Secure Document Server(SDS) Client software

A R EAL -W ORLD DRM S YSTEM 32

A R EAL -W ORLD DRM S YSTEM 33

A R EAL -W ORLD DRM S YSTEM There are security issues both on the server and on the client side. The SDS must protect keys and authenticate users, and it must apply the required persistent protection to the document. The SDS resides at corporate headquarters and is relatively secure. The client must protect keys, authenticate users, and enforce the persistent protection. The DRM client software, on the other hand, is readily available to any attacker. 34

A R EAL -W ORLD DRM S YSTEM 35

A R EAL -W ORLD DRM S YSTEM To prevent disassembly, the executable code is encrypted, and false disassembly is used to protect the part of the code that performs the decryption. In addition, the executable code is only decrypted in small slices so that it’s more difficult for an attacker to obtain the entire code in decrypted form. The anti-debugging technique. 36

A R EAL -W ORLD DRM S YSTEM The anti-debugging technique. The basic approach is to monitor for the use of the debug registers. One obvious attack on such a scheme is a man-in-the-middle, where the attacker debugs the code but responds to the anti-debugging software in such a way that it appears no debugger is running. The anti- debugging technique includes defenses against such an attack on its monitoring mechanism. 37

A R EAL -W ORLD DRM S YSTEM The obfuscation is applied to the security critical operations, including key management, authentication, and cryptography. Advanced Encryption Standard(AES). Scrambling algorithm. Can be obfuscated. The keys are also obfuscated by splitting them into multiple parts and hiding some parts in data and other parts in code. 38

A R EAL -W ORLD DRM S YSTEM Another security feature implemented by the system is anti-screen capture technique Somewhat analogous to the anti-debugging technique. Digital water marking is also employed. It is designed to provide the ability to trace stolen content. 39

DRM FOR S TREAMING M EDIA Attacks on streaming media include spoofing the stream between the end-points, man-in-the- middle, replay, or redistribution of the data, and the capture of the plaintext at the client. Scrambling algorithms. Each instance of the client software comes equipped with a large number of distinct scrambling included. Each client has a distinct subset of scrambling algorithms chosen from a master set of all scrambling algorithms, and the server knows this master set of algorithms. 40

DRM FOR S TREAMING M EDIA Scrambling algorithms. Suppose the server knows the N different scrambling algorithm, s 0,s 1,…,s N-1. Each client is equipped with a subset of these algorithms, example: LIST = {s 12, s 45, s 2, s 37, s 23, s 31 } 41

DRM FOR A P2P A PPLICATION Peer-to-peer networks 42

DRM FOR A P2P A PPLICATION Peer offering service(POS) 43

DRM IN THE E NTERPRISE Protect certain types of private information. Example The Health Insurance Portability and Accountability Act(HIPAA) requires that companies protect personal medical records. The Sarbanes-Oxley Act(SOA) requires that companies must preserve certain documents, such as information that might be relevant to “insider trading” stock violations. 44

45