SlideShare ist ein Scribd-Unternehmen logo
1 von 59
Downloaden Sie, um offline zu lesen
DIEHARDER:	
  
                                 SECURING	
  THE	
  HEAP	
  
                                 	
  
                                                                                   Gene	
  Novark	
  &	
  Emery	
  Berger	
  
                                                                                   University	
  of	
  Massachusetts,	
  
                                                                                   Amherst            	
  



[originally	
  presented	
  at	
  CCS	
  ASSACHUSETTS,	
  AMHERST	
  	
  •	
  	
  Department	
  of	
  Computer	
  Science	
  
                     UNIVERSITY	
  OF	
  M 2011]	
  
DieHard:	
  ProbabilisFc	
  Memory	
  Safety	
  
                                                   for	
  C/C++	
  Programs	
  [PLDI	
  2005]	
  



Direct	
  inspira4on	
  
for	
  Windows	
  7’s	
  
Fault-­‐Tolerant	
  
Heap	
  (2009)	
  




             UNIVERSITY	
  OF	
  MASSACHUSETTS,	
  AMHERST	
  	
  •	
  	
  Department	
  of	
  Computer	
  Science	
  
DieHard:	
  ProbabilisFc	
  Memory	
  Safety	
  
                                                   for	
  C/C++	
  Programs	
  [PLDI	
  2005]	
  



Direct	
  inspira4on	
  
for	
  Windows	
  7’s	
  
Fault-­‐Tolerant	
  
Heap	
  (2009)	
  




             UNIVERSITY	
  OF	
  MASSACHUSETTS,	
  AMHERST	
  	
  •	
  	
  Department	
  of	
  Computer	
  Science	
  
14	
  
15	
  
16	
  
17	
  
20	
  
23	
  
24	
  
25	
  
26	
  
27	
  
28	
  
29	
  
30	
  
31	
  
sensitive	
  
data	
  /	
  metadata	
  




                            32	
  
sensitive	
  
 data	
  /	
  metadata	
  



All data / metadata sensitive




                             33	
  
guard	
  /	
  unmapped	
  page
                             	
  




                                    34	
  
guard	
  /	
  unmapped	
  page
                             	
  




                                    35	
  
36	
  
37	
  
38	
  
Address-­‐space	
  layout	
  
randomization	
  




                                39	
  
object       free space




heap metadata
prev. object
              object     free space
   object size

heap  metadata  
(GNU  libc,  others)  
object   x   free space




heap metadata
object   x   free space




heap metadata
44	
  
45	
  
46	
  
47	
  
48	
  
49	
  
50	
  
≈ 4-5 bits of entropy




                   51	
  
52	
  
Maximal entropy:
log N bits (e.g., ≈ 25-30)




                      53	
  
54	
  
44.2 sec
44.2 sec   41.6 sec
DIEHARDER:	
  
    SECURING	
  THE	
  HEAP	
  
    	
  
                                                          Gene	
  Novark	
  &	
  Emery	
  Berger	
  
                                                          University	
  of	
  Massachusetts,	
  
                                                          Amherst               	
  



UNIVERSITY	
  OF	
  MASSACHUSETTS,	
  AMHERST	
  	
  •	
  	
  Department	
  of	
  Computer	
  Science	
  

Weitere ähnliche Inhalte

Andere mochten auch

15_11-18_PR_Traverse Announces Patent Issuance
15_11-18_PR_Traverse Announces Patent Issuance15_11-18_PR_Traverse Announces Patent Issuance
15_11-18_PR_Traverse Announces Patent Issuance
Joseph Scaduto
 
How to Create Creative Commons Licensing Buttons for Your Website
How to Create Creative Commons Licensing Buttons for Your Website  How to Create Creative Commons Licensing Buttons for Your Website
How to Create Creative Commons Licensing Buttons for Your Website
NET:101
 
The Impact of a Medical Device Recall
The Impact of a Medical Device RecallThe Impact of a Medical Device Recall
The Impact of a Medical Device Recall
Coverity
 

Andere mochten auch (16)

Salud y seguridad de los trabajadores del sector salud.pdf
Salud y seguridad de los trabajadores del sector salud.pdfSalud y seguridad de los trabajadores del sector salud.pdf
Salud y seguridad de los trabajadores del sector salud.pdf
 
15_11-18_PR_Traverse Announces Patent Issuance
15_11-18_PR_Traverse Announces Patent Issuance15_11-18_PR_Traverse Announces Patent Issuance
15_11-18_PR_Traverse Announces Patent Issuance
 
Lab safety 12_10_13
Lab safety 12_10_13Lab safety 12_10_13
Lab safety 12_10_13
 
Lectura taller virtual los dos gallos
Lectura taller virtual los dos gallosLectura taller virtual los dos gallos
Lectura taller virtual los dos gallos
 
How to Create Creative Commons Licensing Buttons for Your Website
How to Create Creative Commons Licensing Buttons for Your Website  How to Create Creative Commons Licensing Buttons for Your Website
How to Create Creative Commons Licensing Buttons for Your Website
 
Finding a job using social media
Finding a job using social mediaFinding a job using social media
Finding a job using social media
 
Hands-On LinkedIn for Beginners
Hands-On LinkedIn for BeginnersHands-On LinkedIn for Beginners
Hands-On LinkedIn for Beginners
 
The Impact of a Medical Device Recall
The Impact of a Medical Device RecallThe Impact of a Medical Device Recall
The Impact of a Medical Device Recall
 
hidayath cv 2016
hidayath cv 2016hidayath cv 2016
hidayath cv 2016
 
LINK UP - How your business can benefit from LinkedIn
LINK UP - How your business can benefit from LinkedInLINK UP - How your business can benefit from LinkedIn
LINK UP - How your business can benefit from LinkedIn
 
Securing the Infrastructure and the Workloads of Linux Containers
Securing the Infrastructure and the Workloads of Linux ContainersSecuring the Infrastructure and the Workloads of Linux Containers
Securing the Infrastructure and the Workloads of Linux Containers
 
shahid shabbir cv
shahid shabbir cvshahid shabbir cv
shahid shabbir cv
 
Walmart
WalmartWalmart
Walmart
 
Banja Luka
Banja LukaBanja Luka
Banja Luka
 
Presentacion de educación en México
Presentacion de educación en MéxicoPresentacion de educación en México
Presentacion de educación en México
 
BNI Lake Business Builders- LOZ Vice President report
BNI Lake Business Builders- LOZ Vice President reportBNI Lake Business Builders- LOZ Vice President report
BNI Lake Business Builders- LOZ Vice President report
 

Mehr von Emery Berger

Dthreads: Efficient Deterministic Multithreading
Dthreads: Efficient Deterministic MultithreadingDthreads: Efficient Deterministic Multithreading
Dthreads: Efficient Deterministic Multithreading
Emery Berger
 
Programming with People
Programming with PeopleProgramming with People
Programming with People
Emery Berger
 
Stabilizer: Statistically Sound Performance Evaluation
Stabilizer: Statistically Sound Performance EvaluationStabilizer: Statistically Sound Performance Evaluation
Stabilizer: Statistically Sound Performance Evaluation
Emery Berger
 
Operating Systems - Advanced File Systems
Operating Systems - Advanced File SystemsOperating Systems - Advanced File Systems
Operating Systems - Advanced File Systems
Emery Berger
 
Operating Systems - Queuing Systems
Operating Systems - Queuing SystemsOperating Systems - Queuing Systems
Operating Systems - Queuing Systems
Emery Berger
 
Operating Systems - Distributed Parallel Computing
Operating Systems - Distributed Parallel ComputingOperating Systems - Distributed Parallel Computing
Operating Systems - Distributed Parallel Computing
Emery Berger
 
Operating Systems - Concurrency
Operating Systems - ConcurrencyOperating Systems - Concurrency
Operating Systems - Concurrency
Emery Berger
 
Operating Systems - Advanced Synchronization
Operating Systems - Advanced SynchronizationOperating Systems - Advanced Synchronization
Operating Systems - Advanced Synchronization
Emery Berger
 

Mehr von Emery Berger (20)

Doppio: Breaking the Browser Language Barrier
Doppio: Breaking the Browser Language BarrierDoppio: Breaking the Browser Language Barrier
Doppio: Breaking the Browser Language Barrier
 
Dthreads: Efficient Deterministic Multithreading
Dthreads: Efficient Deterministic MultithreadingDthreads: Efficient Deterministic Multithreading
Dthreads: Efficient Deterministic Multithreading
 
Programming with People
Programming with PeopleProgramming with People
Programming with People
 
Stabilizer: Statistically Sound Performance Evaluation
Stabilizer: Statistically Sound Performance EvaluationStabilizer: Statistically Sound Performance Evaluation
Stabilizer: Statistically Sound Performance Evaluation
 
Operating Systems - Advanced File Systems
Operating Systems - Advanced File SystemsOperating Systems - Advanced File Systems
Operating Systems - Advanced File Systems
 
Operating Systems - File Systems
Operating Systems - File SystemsOperating Systems - File Systems
Operating Systems - File Systems
 
Operating Systems - Networks
Operating Systems - NetworksOperating Systems - Networks
Operating Systems - Networks
 
Operating Systems - Queuing Systems
Operating Systems - Queuing SystemsOperating Systems - Queuing Systems
Operating Systems - Queuing Systems
 
Operating Systems - Distributed Parallel Computing
Operating Systems - Distributed Parallel ComputingOperating Systems - Distributed Parallel Computing
Operating Systems - Distributed Parallel Computing
 
Operating Systems - Concurrency
Operating Systems - ConcurrencyOperating Systems - Concurrency
Operating Systems - Concurrency
 
Operating Systems - Advanced Synchronization
Operating Systems - Advanced SynchronizationOperating Systems - Advanced Synchronization
Operating Systems - Advanced Synchronization
 
Operating Systems - Synchronization
Operating Systems - SynchronizationOperating Systems - Synchronization
Operating Systems - Synchronization
 
Processes and Threads
Processes and ThreadsProcesses and Threads
Processes and Threads
 
Virtual Memory and Paging
Virtual Memory and PagingVirtual Memory and Paging
Virtual Memory and Paging
 
Operating Systems - Virtual Memory
Operating Systems - Virtual MemoryOperating Systems - Virtual Memory
Operating Systems - Virtual Memory
 
MC2: High-Performance Garbage Collection for Memory-Constrained Environments
MC2: High-Performance Garbage Collection for Memory-Constrained EnvironmentsMC2: High-Performance Garbage Collection for Memory-Constrained Environments
MC2: High-Performance Garbage Collection for Memory-Constrained Environments
 
Vam: A Locality-Improving Dynamic Memory Allocator
Vam: A Locality-Improving Dynamic Memory AllocatorVam: A Locality-Improving Dynamic Memory Allocator
Vam: A Locality-Improving Dynamic Memory Allocator
 
Quantifying the Performance of Garbage Collection vs. Explicit Memory Management
Quantifying the Performance of Garbage Collection vs. Explicit Memory ManagementQuantifying the Performance of Garbage Collection vs. Explicit Memory Management
Quantifying the Performance of Garbage Collection vs. Explicit Memory Management
 
Garbage Collection without Paging
Garbage Collection without PagingGarbage Collection without Paging
Garbage Collection without Paging
 
DieHard: Probabilistic Memory Safety for Unsafe Languages
DieHard: Probabilistic Memory Safety for Unsafe LanguagesDieHard: Probabilistic Memory Safety for Unsafe Languages
DieHard: Probabilistic Memory Safety for Unsafe Languages
 

Kürzlich hochgeladen

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 

Kürzlich hochgeladen (20)

Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 

DieHarder (CCS 2010, WOOT 2011)