SlideShare a Scribd company logo
1 of 24
Download to read offline
Introduction Our Solution Conclusions
Hardware-Assisted Application Misbehavior
Detection
Marcus Botacin Paulo de Geus Andr´e Gr´egio
XVIII SBSEG
2018
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Agenda
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Bugs
Undesirable
Safety: Crashes.
Security: Exploitation.
Countermeasures
Good Software Engineering: Really ?
Fuzzing: Too slow to cover all paths.
CFI: Too specific to extend to general cases.
Alternative
Runtime Monitoring: COTS binaries monitoring.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Background
Program as a Finite State Machine
Figure: Program as a Finite State Machine. Data is inputted to an
initial state and transitions lead to the final state, outputting the
computation result.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Program in Memory
Branch as Transitions
Figure: Program representation in memory. Branch instructions are
responsible for state transitions.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Key Idea
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Key Idea
Our Solution
Tracking Expected Branches
Figure: Expected Branches Policy. The solid arrows correspond to
paths previously seem, thus representing expected branches. The dotted
arrows represent so-far unknown branches, which might indicate a
misbehavior.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Key Idea
Our Solution
Learning Expected Branches
Figure: Automated learning. Flags 1 and 0 indicate, respectively, whether
a given branch was expected (allowed) to occur or not.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Implementation
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Implementation
Our Solution
Implementation
Table: ASLR-aware data collection. Offset normalization. Despite the
distinct image base addresses, branch offsets are unique.
Branch Execution 1 Execution 2 Execution N Offset
I 0x7FF1D30 0x7FF3D30 0x7FF5D80 0x1D30
II 0x7FF1E30 0x7FF3E30 0x7FF5E80 0x1E30
II 0x7FF1EF0 0x7FF3EF0 0x7FF5F40 0x1EF0
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Implementation
Our Solution
Implementation
Figure: Branch Database. Source addresses are used to index allowed
target addresses. Unidentified entries are considered as unexpected
branches.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Implementation
Detection Policies
Violation Detection
Figure: Misbehavior Detection. Solution detects violations using a
threshold value over data from a moving window.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Implementation
Our Solution
Implementation
Figure: Semi-supervised learning. Solution asks for user confirmation.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Evaluation
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Evaluation
Evaluation
Synthetic Example
Code 1: Validation code.
main (){
char s t r [MAX STRING ] ;
i n t loop =0, opt =0;
do{
scanf (”%d”,& opt ) ;
i f ( opt >0){ p r i n t f (” Greater than zero n ” ) ; }
e l s e i f ( opt <0){ p r i n t f (” Smaller than zero n ” ) ; }
e l s e { p r i n t f (”Bad choice n ” ) ; scanf (”%s ” , s t r ) ; }
} while ( ! loop ) ;
p r i n t f (” Should never be executed n ” ) ;
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Evaluation
Evaluation
Easy File Share
Code 2: Real application under a ROP-based attack. Differences between
the expected and the observed branches.
Unexpected Branches : [0 x150C , 0x1C80C , 0x13020 ]
Unexpected Branches : [ ]
Unexpected Branches : [0 x1731A , 0xD31A , 0x7C81A ,
0x33B1A , 0x2AC1A , 0xFC21A , 0x12941A , 0x29A1A ]
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Evaluation
Evaluation
Easy File Share
Figure: Exploit Execution
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Discussion
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Discussion
Discussion
Immediate Follow-up
Enriching Crash Reports.
Future Developments
Distributed Allowed Paths Identification.
OS Self-Repair.
Automatic Backup recovery.
Challenges
Distinguish Exploits from Crashes.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Roteiro
1 Introduction
2 Our Solution
Key Idea
Implementation
Evaluation
Discussion
3 Conclusions
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Concluding Remarks
Advances: Low-Overhead, Ruleless Misbehavior Detection.
Challenges: Distinguish Exploitation from Crashes.
Future: OS Self-repair.
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
Introduction Our Solution Conclusions
Questions ?
Contact Information
mfbotacin@inf.ufpr.br
Hardware-Assisted Application Misbehavior Detection XVIII SBSEG

More Related Content

Similar to Hardware-Assisted Application Misbehavior Detection

The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...
The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...
The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...
Positive Hack Days
 
Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...
Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...
Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...
Zhen Huang
 
Ring 0/-2 Rootkits: bypassing defenses -- DEF CON 2018 USA
Ring 0/-2 Rootkits: bypassing defenses  -- DEF CON 2018 USARing 0/-2 Rootkits: bypassing defenses  -- DEF CON 2018 USA
Ring 0/-2 Rootkits: bypassing defenses -- DEF CON 2018 USA
Alexandre Borges
 
The Role Of Software And Hardware As A Common Part Of The...
The Role Of Software And Hardware As A Common Part Of The...The Role Of Software And Hardware As A Common Part Of The...
The Role Of Software And Hardware As A Common Part Of The...
Sheena Crouch
 
Legacy Lowdown - Options When Migrating Solaris Applications
Legacy Lowdown - Options When Migrating Solaris ApplicationsLegacy Lowdown - Options When Migrating Solaris Applications
Legacy Lowdown - Options When Migrating Solaris Applications
AppZero
 
Meier_ECET365_Manual_LI
Meier_ECET365_Manual_LIMeier_ECET365_Manual_LI
Meier_ECET365_Manual_LI
jmeier72
 

Similar to Hardware-Assisted Application Misbehavior Detection (20)

IRJET- Intrusion Detection through Image Processing and Getting Notified ...
IRJET-  	  Intrusion Detection through Image Processing and Getting Notified ...IRJET-  	  Intrusion Detection through Image Processing and Getting Notified ...
IRJET- Intrusion Detection through Image Processing and Getting Notified ...
 
The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...
The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...
The System of Automatic Searching for Vulnerabilities or how to use Taint Ana...
 
Análise de malware com suporte de hardware
Análise de malware com suporte de hardwareAnálise de malware com suporte de hardware
Análise de malware com suporte de hardware
 
Accelerated Windows Debugging 3 training public slides
Accelerated Windows Debugging 3 training public slidesAccelerated Windows Debugging 3 training public slides
Accelerated Windows Debugging 3 training public slides
 
Ceh v8 labs module 03 scanning networks
Ceh v8 labs module 03 scanning networksCeh v8 labs module 03 scanning networks
Ceh v8 labs module 03 scanning networks
 
IRJET - IoT based Anti Theft Detection and Alerting System using Raspberry Pi
IRJET - IoT based Anti Theft Detection and Alerting System using Raspberry PiIRJET - IoT based Anti Theft Detection and Alerting System using Raspberry Pi
IRJET - IoT based Anti Theft Detection and Alerting System using Raspberry Pi
 
Gui based debuggers
Gui based debuggers Gui based debuggers
Gui based debuggers
 
Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...
Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...
Talos: Neutralizing Vulnerabilities with Security Workarounds for Rapid Respo...
 
Ring 0/-2 Rootkits: bypassing defenses -- DEF CON 2018 USA
Ring 0/-2 Rootkits: bypassing defenses  -- DEF CON 2018 USARing 0/-2 Rootkits: bypassing defenses  -- DEF CON 2018 USA
Ring 0/-2 Rootkits: bypassing defenses -- DEF CON 2018 USA
 
Embeded system
Embeded systemEmbeded system
Embeded system
 
Embedded system - introduction to arm7
Embedded system -  introduction to arm7Embedded system -  introduction to arm7
Embedded system - introduction to arm7
 
The Role Of Software And Hardware As A Common Part Of The...
The Role Of Software And Hardware As A Common Part Of The...The Role Of Software And Hardware As A Common Part Of The...
The Role Of Software And Hardware As A Common Part Of The...
 
Legacy Lowdown - Options When Migrating Solaris Applications
Legacy Lowdown - Options When Migrating Solaris ApplicationsLegacy Lowdown - Options When Migrating Solaris Applications
Legacy Lowdown - Options When Migrating Solaris Applications
 
IRJET - Automated Fraud Detection Framework in Examination Halls
 IRJET - Automated Fraud Detection Framework in Examination Halls IRJET - Automated Fraud Detection Framework in Examination Halls
IRJET - Automated Fraud Detection Framework in Examination Halls
 
Mobile Software Diagnostics
Mobile Software DiagnosticsMobile Software Diagnostics
Mobile Software Diagnostics
 
IRJET- A Study on Penetration Testing using Metasploit Framework
IRJET- A Study on Penetration Testing using Metasploit FrameworkIRJET- A Study on Penetration Testing using Metasploit Framework
IRJET- A Study on Penetration Testing using Metasploit Framework
 
Penetration testing using metasploit framework
Penetration testing using metasploit frameworkPenetration testing using metasploit framework
Penetration testing using metasploit framework
 
A Smart Target Detection System using Fuzzy Logic and Background Subtraction
A Smart Target Detection System using Fuzzy Logic and Background SubtractionA Smart Target Detection System using Fuzzy Logic and Background Subtraction
A Smart Target Detection System using Fuzzy Logic and Background Subtraction
 
Meier_ECET365_Manual_LI
Meier_ECET365_Manual_LIMeier_ECET365_Manual_LI
Meier_ECET365_Manual_LI
 
A LOG-BASED TRACE AND REPLAY TOOL INTEGRATING SOFTWARE AND INFRASTRUCTURE
A LOG-BASED TRACE AND REPLAY TOOL INTEGRATING SOFTWARE AND INFRASTRUCTUREA LOG-BASED TRACE AND REPLAY TOOL INTEGRATING SOFTWARE AND INFRASTRUCTURE
A LOG-BASED TRACE AND REPLAY TOOL INTEGRATING SOFTWARE AND INFRASTRUCTURE
 

More from Marcus Botacin

More from Marcus Botacin (20)

Machine Learning by Examples - Marcus Botacin - TAMU 2024
Machine Learning by Examples - Marcus Botacin - TAMU 2024Machine Learning by Examples - Marcus Botacin - TAMU 2024
Machine Learning by Examples - Marcus Botacin - TAMU 2024
 
Near-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless MalwareNear-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless Malware
 
GPThreats-3: Is Automated Malware Generation a Threat?
GPThreats-3: Is Automated Malware Generation a Threat?GPThreats-3: Is Automated Malware Generation a Threat?
GPThreats-3: Is Automated Malware Generation a Threat?
 
[HackInTheBOx] All You Always Wanted to Know About Antiviruses
[HackInTheBOx] All You Always Wanted to Know About Antiviruses[HackInTheBOx] All You Always Wanted to Know About Antiviruses
[HackInTheBOx] All You Always Wanted to Know About Antiviruses
 
[Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change!
[Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change![Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change!
[Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change!
 
Hardware-accelerated security monitoring
Hardware-accelerated security monitoringHardware-accelerated security monitoring
Hardware-accelerated security monitoring
 
How do we detect malware? A step-by-step guide
How do we detect malware? A step-by-step guideHow do we detect malware? A step-by-step guide
How do we detect malware? A step-by-step guide
 
Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022
Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022
Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022
 
Extraindo Caracterı́sticas de Arquivos Binários Executáveis
Extraindo Caracterı́sticas de Arquivos Binários ExecutáveisExtraindo Caracterı́sticas de Arquivos Binários Executáveis
Extraindo Caracterı́sticas de Arquivos Binários Executáveis
 
On the Malware Detection Problem: Challenges & Novel Approaches
On the Malware Detection Problem: Challenges & Novel ApproachesOn the Malware Detection Problem: Challenges & Novel Approaches
On the Malware Detection Problem: Challenges & Novel Approaches
 
All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...
All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...
All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...
 
Near-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless MalwareNear-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless Malware
 
Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...
Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...
Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...
 
Integridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomwareIntegridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomware
 
An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...
An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...
An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...
 
On the Security of Application Installers & Online Software Repositories
On the Security of Application Installers & Online Software RepositoriesOn the Security of Application Installers & Online Software Repositories
On the Security of Application Installers & Online Software Repositories
 
UMLsec
UMLsecUMLsec
UMLsec
 
The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...
The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...
The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...
 
Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?
Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?
Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?
 
Towards Malware Decompilation and Reassembly
Towards Malware Decompilation and ReassemblyTowards Malware Decompilation and Reassembly
Towards Malware Decompilation and Reassembly
 

Recently uploaded

Conjugation, transduction and transformation
Conjugation, transduction and transformationConjugation, transduction and transformation
Conjugation, transduction and transformation
Areesha Ahmad
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Sérgio Sacani
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
MohamedFarag457087
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.
Silpa
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
Silpa
 

Recently uploaded (20)

Grade 7 - Lesson 1 - Microscope and Its Functions
Grade 7 - Lesson 1 - Microscope and Its FunctionsGrade 7 - Lesson 1 - Microscope and Its Functions
Grade 7 - Lesson 1 - Microscope and Its Functions
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)
 
Exploring Criminology and Criminal Behaviour.pdf
Exploring Criminology and Criminal Behaviour.pdfExploring Criminology and Criminal Behaviour.pdf
Exploring Criminology and Criminal Behaviour.pdf
 
FAIRSpectra - Enabling the FAIRification of Analytical Science
FAIRSpectra - Enabling the FAIRification of Analytical ScienceFAIRSpectra - Enabling the FAIRification of Analytical Science
FAIRSpectra - Enabling the FAIRification of Analytical Science
 
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICEPATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
 
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIACURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
 
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort ServiceCall Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
 
Conjugation, transduction and transformation
Conjugation, transduction and transformationConjugation, transduction and transformation
Conjugation, transduction and transformation
 
Clean In Place(CIP).pptx .
Clean In Place(CIP).pptx                 .Clean In Place(CIP).pptx                 .
Clean In Place(CIP).pptx .
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learning
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdf
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
 
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS ESCORT SERVICE In Bhiwan...
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS  ESCORT SERVICE In Bhiwan...Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS  ESCORT SERVICE In Bhiwan...
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS ESCORT SERVICE In Bhiwan...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdf
 
POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.
 
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
 

Hardware-Assisted Application Misbehavior Detection

  • 1. Introduction Our Solution Conclusions Hardware-Assisted Application Misbehavior Detection Marcus Botacin Paulo de Geus Andr´e Gr´egio XVIII SBSEG 2018 Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 2. Introduction Our Solution Conclusions Agenda 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 3. Introduction Our Solution Conclusions Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 4. Introduction Our Solution Conclusions Bugs Undesirable Safety: Crashes. Security: Exploitation. Countermeasures Good Software Engineering: Really ? Fuzzing: Too slow to cover all paths. CFI: Too specific to extend to general cases. Alternative Runtime Monitoring: COTS binaries monitoring. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 5. Introduction Our Solution Conclusions Background Program as a Finite State Machine Figure: Program as a Finite State Machine. Data is inputted to an initial state and transitions lead to the final state, outputting the computation result. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 6. Introduction Our Solution Conclusions Program in Memory Branch as Transitions Figure: Program representation in memory. Branch instructions are responsible for state transitions. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 7. Introduction Our Solution Conclusions Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 8. Introduction Our Solution Conclusions Key Idea Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 9. Introduction Our Solution Conclusions Key Idea Our Solution Tracking Expected Branches Figure: Expected Branches Policy. The solid arrows correspond to paths previously seem, thus representing expected branches. The dotted arrows represent so-far unknown branches, which might indicate a misbehavior. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 10. Introduction Our Solution Conclusions Key Idea Our Solution Learning Expected Branches Figure: Automated learning. Flags 1 and 0 indicate, respectively, whether a given branch was expected (allowed) to occur or not. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 11. Introduction Our Solution Conclusions Implementation Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 12. Introduction Our Solution Conclusions Implementation Our Solution Implementation Table: ASLR-aware data collection. Offset normalization. Despite the distinct image base addresses, branch offsets are unique. Branch Execution 1 Execution 2 Execution N Offset I 0x7FF1D30 0x7FF3D30 0x7FF5D80 0x1D30 II 0x7FF1E30 0x7FF3E30 0x7FF5E80 0x1E30 II 0x7FF1EF0 0x7FF3EF0 0x7FF5F40 0x1EF0 Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 13. Introduction Our Solution Conclusions Implementation Our Solution Implementation Figure: Branch Database. Source addresses are used to index allowed target addresses. Unidentified entries are considered as unexpected branches. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 14. Introduction Our Solution Conclusions Implementation Detection Policies Violation Detection Figure: Misbehavior Detection. Solution detects violations using a threshold value over data from a moving window. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 15. Introduction Our Solution Conclusions Implementation Our Solution Implementation Figure: Semi-supervised learning. Solution asks for user confirmation. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 16. Introduction Our Solution Conclusions Evaluation Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 17. Introduction Our Solution Conclusions Evaluation Evaluation Synthetic Example Code 1: Validation code. main (){ char s t r [MAX STRING ] ; i n t loop =0, opt =0; do{ scanf (”%d”,& opt ) ; i f ( opt >0){ p r i n t f (” Greater than zero n ” ) ; } e l s e i f ( opt <0){ p r i n t f (” Smaller than zero n ” ) ; } e l s e { p r i n t f (”Bad choice n ” ) ; scanf (”%s ” , s t r ) ; } } while ( ! loop ) ; p r i n t f (” Should never be executed n ” ) ; Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 18. Introduction Our Solution Conclusions Evaluation Evaluation Easy File Share Code 2: Real application under a ROP-based attack. Differences between the expected and the observed branches. Unexpected Branches : [0 x150C , 0x1C80C , 0x13020 ] Unexpected Branches : [ ] Unexpected Branches : [0 x1731A , 0xD31A , 0x7C81A , 0x33B1A , 0x2AC1A , 0xFC21A , 0x12941A , 0x29A1A ] Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 19. Introduction Our Solution Conclusions Evaluation Evaluation Easy File Share Figure: Exploit Execution Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 20. Introduction Our Solution Conclusions Discussion Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 21. Introduction Our Solution Conclusions Discussion Discussion Immediate Follow-up Enriching Crash Reports. Future Developments Distributed Allowed Paths Identification. OS Self-Repair. Automatic Backup recovery. Challenges Distinguish Exploits from Crashes. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 22. Introduction Our Solution Conclusions Roteiro 1 Introduction 2 Our Solution Key Idea Implementation Evaluation Discussion 3 Conclusions Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 23. Introduction Our Solution Conclusions Concluding Remarks Advances: Low-Overhead, Ruleless Misbehavior Detection. Challenges: Distinguish Exploitation from Crashes. Future: OS Self-repair. Hardware-Assisted Application Misbehavior Detection XVIII SBSEG
  • 24. Introduction Our Solution Conclusions Questions ? Contact Information mfbotacin@inf.ufpr.br Hardware-Assisted Application Misbehavior Detection XVIII SBSEG