October 20-23rd, 2015 Sandboxing and Reasoning on Malware Infection Trees Kris Ghosh 1, Jose Morales 2, Will Casey 2 and Bud Mishra 3 1. Miami University.

Slides:



Advertisements
Similar presentations
1 Verification by Model Checking. 2 Part 1 : Motivation.
Advertisements

The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Symptoms-Based Detection of Bot Processes Jose Andre MoralesErhan Kartaltepe Shouhuai XuRavi Sandhu MMM-ACNS – St Petersburg, Russia 2010 ©2010 Institute.
Multiple Testing of Causal Hypotheses Samantha Kleinberg NYU Bioinformatics Group, Courant Institute, NYU 9/12/08 (Jointly with Bud Mishra.)
A Survey of Runtime Verification Jonathan Amir 2004.
© 2013 Carnegie Mellon University UFO: From Underapproximations to Overapproximations and Back! Arie Gurfinkel (SEI/CMU) with Aws Albarghouthi and Marsha.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
1 Model checking. 2 And now... the system How do we model a reactive system with an automaton ? It is convenient to model systems with Transition systems.
Planning based on Model Checking Dept. of Information Systems and Applied CS Bamberg University Seminar Paper Svetlana Balinova.
Verification of Evolving Software Natasha Sharygina Joint work with Sagar Chaki and Nishant Sinha Carnegie Mellon University.
An Introduction to the Model Verifier verds Wenhui Zhang September 15 th, 2010.
UNCLASSIFIED © 2011 Carnegie Mellon University Building Malware Infection Trees Jose Andre Morales 1, Michael Main 2, Weilang Luo 3, Shouhuai Xu 2,3, Ravi.
ECE Synthesis & Verification - L271 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Model Checking basics.
Timed Automata.
Sensor-Based Abnormal Human-Activity Detection Authors: Jie Yin, Qiang Yang, and Jeffrey Junfeng Pan Presenter: Raghu Rangan.
Model Checker In-The-Loop Flavio Lerda, Edmund M. Clarke Computer Science Department Jim Kapinski, Bruce H. Krogh Electrical & Computer Engineering MURI.
Modeling Malware Spreading Dynamics Michele Garetto (Politecnico di Torino – Italy) Weibo Gong (University of Massachusetts – Amherst – MA) Don Towsley.
Model Checking Inputs: A design (in some HDL) and a property (in some temporal logic) Outputs: Decision about whether or not the property always holds.
A survey of techniques for precise program slicing Komondoor V. Raghavan Indian Institute of Science, Bangalore.
© 2013 Carnegie Mellon University Academy for Software Engineering Education and Training, 2013 Session Architect: Tony Cowling Session Chair: Nancy Mead.
Thomas Ball, Rupak Majumdar, Todd Millstein, Sriram K. Rajamani Presented by Yifan Li November 22nd In PLDI 01: Programming Language.
Statistical Probabilistic Model Checking Håkan L. S. Younes Carnegie Mellon University.
Introduction of Probabilistic Reasoning and Bayesian Networks
Ymer: A Statistical Model Checker Håkan L. S. Younes Carnegie Mellon University.
1 Model Checking, Abstraction- Refinement, and Their Implementation Based on slides by: Orna Grumberg Presented by: Yael Meller June 2008.
Lecture 4&5: Model Checking: A quick introduction Professor Aditya Ghose Director, Decision Systems Lab School of IT and Computer Science University of.
Temporal Logic and Model Checking. Reactive Systems We often classify systems into two types: Transformational: functions from inputs available at the.
Probabilistic Verification of Discrete Event Systems Håkan L. S. Younes.
VESTA: A Statistical Model- checker and Analyzer for Probabilistic Systems Authors: Koushik Sen Mahesh Viswanathan Gul Agha University of Illinois at Urbana-Champaign.
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
Abstract Verification is traditionally done by determining the truth of a temporal formula (the specification) with respect to a timed transition system.
Model Checking LTL over (discrete time) Controllable Linear System is Decidable P. Tabuada and G. J. Pappas Michael, Roozbeh Ph.D. Course November 2005.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
Policy Generation for Continuous-time Stochastic Domains with Concurrency Håkan L. S. YounesReid G. Simmons Carnegie Mellon University.
Verification technique on SA applications using Incremental Model Checking 컴퓨터학과 신영주.
Lecture 1 What is Modeling? What is Modeling? Creating a simplified version of reality Working with this version to understand or control some.
Planning and Verification for Stochastic Processes with Asynchronous Events Håkan L. S. Younes Carnegie Mellon University.
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
University of Maryland Department of Civil & Environmental Engineering By G.L. Chang, M.L. Franz, Y. Liu, Y. Lu & R. Tao BACKGROUND SYSTEM DESIGN DATA.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
K. J. O’Hara AMRS: Behavior Recognition and Opponent Modeling Oct Behavior Recognition and Opponent Modeling in Autonomous Multi-Robot Systems.
KAIST Internet Security Lab. CS710 Behavioral Detection of Malware on Mobile Handsets MobiSys 2008, Abhijit Bose et al 이 승 민.
1 Probabilistic Model Checking of Systems with a Large State Space: A Stratified Approach Shou-pon Lin Advisor: Nicholas F. Maxemchuk Department of Electrical.
Carnegie Mellon University 10/23/2015 Survivability Analysis via Model Checking Oleg Sheyner Jeannette Wing Carnegie Mellon University.
1 Qualitative Reasoning of Distributed Object Design Nima Kaveh & Wolfgang Emmerich Software Systems Engineering Dept. Computer Science University College.
1 Test Selection for Result Inspection via Mining Predicate Rules Wujie Zheng
STATISTICAL COMPLEXITY ANALYSIS Dr. Dmitry Nerukh Giorgos Karvounis.
April 28, 2003 Early Fault Detection and Failure Prediction in Large Software Systems Felix Salfner and Miroslaw Malek Department of Computer Science Humboldt.
MaskIt: Privately Releasing User Context Streams for Personalized Mobile Applications SIGMOD '12 Proceedings of the 2012 ACM SIGMOD International Conference.
Lecture 2: Statistical learning primer for biologists
Author Software Engineering Institute
SAFEWARE System Safety and Computers Chap18:Verification of Safety Author : Nancy G. Leveson University of Washington 1995 by Addison-Wesley Publishing.
© 2015 Carnegie Mellon University COCOMO 2015 November 17, 2015 Distribution Statement A: Approved for Public Release; Distribution is Unlimited Causal.
1 Chapter 8: Model Inference and Averaging Presented by Hui Fang.
Variants of LTL Query Checking Hana ChocklerArie Gurfinkel Ofer Strichman IBM Research SEI Technion Technion - Israel Institute of Technology.
Generalized Point Based Value Iteration for Interactive POMDPs Prashant Doshi Dept. of Computer Science and AI Institute University of Georgia
DevCOP: A Software Certificate Management System for Eclipse Mark Sherriff and Laurie Williams North Carolina State University ISSRE ’06 November 10, 2006.
October 20-23rd, 2015 FEEBO: A Framework for Empirical Evaluation of Malware Detection Resilience Against Behavior Obfuscation Sebastian Banescu Tobias.
1 CERT BFF: From Start To PoC June 09, 2016 © 2016 Carnegie Mellon University This material has been approved for public release and unlimited distribution.
Formal methods: Lecture
Chapter 7. Classification and Prediction
Michael Spiegel, Esq Timothy Shimeall, Ph.D.
SS 2017 Software Verification Probabilistic modelling – DTMC / MDP
Prof. Dr. Holger Schlingloff 1,2 Dr. Esteban Pavese 1
Chapter 10 Verification and Validation of Simulation Models
The Extensible Tool-chain for Evaluation of Architectural Models
Statistical Model-Checking of “Black-Box” Probabilistic Systems VESTA
On Statistical Model Checking of Stochastic Systems
HIGH LEVEL SYNTHESIS: Estimations and Transformations
‘Crowds’ through a PRISM
Presentation transcript:

October 20-23rd, 2015 Sandboxing and Reasoning on Malware Infection Trees Kris Ghosh 1, Jose Morales 2, Will Casey 2 and Bud Mishra 3 1. Miami University 2. Carnegie Mellon University SEI CERT 3. Courant Inst. New York University

October 20-23rd, 2015 Outline  Problem statement -Objective and goal  Methodology  Case study  Future directions

October 20-23rd, 2015 Setting  Malware is a serious problem, and increasingly threatens trust and safety. Because it also employs deception it confounds risk estimation.  Formal understanding of high level behaviors of expressed in malware: expertise  logic formulae.  for example infection process via Malware Infection Trees (MiT).  Reasoning on MiT using temporal logic.  Challenges: Deluge of data and Imprecise observations such as the processes and files of an infection.

October 20-23rd, 2015 Previous Work  Model checking  Malware infection trees  Agent based trace learning.  Recommendation verification system. 4

October 20-23rd, 2015 Hypothesis  Create a reasoning formalism on Malware Infection Trees using Model Checking under uncertainty 5

October 20-23rd, 2015 Findings 6  The formalism incorporating model checking on a simple case study was computational feasible.

October 20-23rd, 2015 Model Checking System  Kripke Structure, M. (A labeled graph structure) Property/specification  temporal Logic formula, ø Model Checking Problem : Does the model M satisfy the property, ø? Challenge in model checking: state explosion problem

October 20-23rd, 2015 Kripke Structure A Kripke Structure where  S is a finite and non empty set of states.  S 0 ⊆ S is the initial state.  R is a transition relation, R ⊆ S ∗ S such that for each s ∈ S there is at least one s′ ∈ S and (s,s’) ∈ R.  L : S  2 AP. L represents the labeling function and AP represents the set of atomic propositions An edge labeled(E)-Kripke structure has labeling on the edges. M e = where L e : R  E and E is the set of edge labels.

October 20-23rd, 2015 Model Checking : Railroad Crossing Property- Safety: No green light for the train when the gate is open. AG (green and open) Property-Liveness: The train must not wait forever. EF(green) a = green and open b = red and open c = red and closed

October 20-23rd, 2015 Malware Infection Trees(MiT)-1  Captures the infection strategies of malware  Show the relationships between files and processes involved in malicious activity  Constructed using abstract rules  Focuses on file and memory infection  Self replication Into a new file Into an existing file  Code injection Direct code into another process’s memory Load dll into another process’s memory

October 20-23rd, 2015 MiT ….  Can be built in real time and post infection  Abstract construction rules apply to any OS  Identification vectors:  SSDT hooking  Minifilters  API scraping (PIN)  Strace (linux)  Log files MiT graph of Backdoor.Win32.Poison

October 20-23rd, 2015 Figure 1. Model Checking on Model Abstractions of MiT Model Checking MiT

October 20-23rd, 2015 Preliminaries- MDP An MDP where  S is a finite set of states.  S 0 is the initial state.  A is the finite set of actions. 1  P : S ∗ A ∗ S  [0, 1] and for all a ∈ A; for all s ∈ Σ s′ ∈ S P(s, a, s′) = 1  L : S  2 AP. L represents the labeling function and AP represents the set of atomic propositions. MDP is a generalization of a DTMC (Discrete Time Markov Chain)

October 20-23rd, 2015 Model Abstraction of MiT  Construction of transition system (Kripke Structure) is directly from MiT.  Labels on the states are files.  Labels on the edges are process or file rules.  An edge, represents file m’ is created by file m by rule z.  The model is total by creation of an ∊- transition where there is a transition(edge) on the state (self loop)

October 20-23rd, 2015 Modeling of MiT construction Rules Modeling the transition, f  f’ and how it fits the MiT rules. Infection via self replication (f1): The file, f is transformed to f’ under the rule, f1. Infection via arbitrary file creation (f2) :The file, f is transformed to f’ under the rule f2. Infection via arbitrary file write modification (f3) : The rule is f3. Infection via dynamic code injection of a current running process (p1) : A static file, f, an image of a process transforms into a file f’ under the rule, p1. Infection via process spawning(p2): Identical reasoning of p1

October 20-23rd, 2015 Case Study: MiT Graph of Back-Door, Win 32.Poison

October 20-23rd, 2015 Model using DTMC Every transition from a state are represented as equally likely events. Example: The fragment of the PRISM code (poison = true) -> 0.2: (one_bat’ = true) + 0.2: (wscript_exe’ = true) + 0.2:(one_reg’ = true) + 0.2:(one_vbs’ = true) + 0.2: (svchest_exe’ = true); The transitions from the state labeled with poison to the state labeled with one_bat, wscript_exe, one_reg, one_vbs and svchest_exe. The probabilities of 0.2 illustrates the event to reach each of the states are equally likely.

October 20-23rd, 2015 Model Using MDP  Nondeterminsm in the Model Each transition with same labels are assumed to be equally likely.  [p1](poison = true) -> (wscript_exe’ = true);  [f2](poison = true) -> 0.5:(one_bat’ = true) + 0.5:(one_reg’ = true);  [f1](poison = true) -> 0.5:(one_vbs’ = true) + 0.5:(svchest_exe’ = true); The transitions from the state labeled with poison to the state labeled with wscript_exe, one_bat, one_reg, one_vbs and svchest_exe. The transitions that has identical edge labels are assumed to the equally likely.

October 20-23rd, 2015 Sample queries evaluated.  Query 1: The maximum probability to reach a state labeled with attrib exe is PCTL formula for the MDP model is, Pmax? = (true U (attrib_exe = true))  Query 2 The probability that svchvst exe is less than.1. PCTL formula, P<0:1(F(svchvst _exe = true))  Query 3: The probability that reg exe is within 2 steps from wscript exe is atleast PCTL formula, P ≥ 0:98 [(wscript exe = true)U<=2(reg_exe = true)].  Query 4: From the initial state, Poison the probability that wscript exe is in constructed before ping_exe greater than equal to PCTL formula, (poison = true) => P ≥ 0:99 [(wscript exe = true)U(ping exe = true)] The times to generate the simulation model and evaluate the queries were less than one second.

October 20-23rd, 2015 Impact: 20  A Sandboxing and reasoning technique to evaluate potential malware infection.

October 20-23rd, 2015 Broader Contributions  Creates a predictive tool for malware infection  Addresses uncertainty in the prediction.  Can be create a formalism that is able to answer the potential malware infection? If yes, is there a statistical bound in the process 21

October 20-23rd, 2015 Summary and Conclusions  A formalism using model checking on MiT has been created.  Uncertainty has been incorporated using stochastic models.  Computational Feasibility on a simple case study has been evaluated. 22

October 20-23rd, 2015 Remaining Questions  Future directions include performing analysis on large sized MiT with Bayesian statistical model checking.  Causality of the events for creation of files and processes will be in studied in detail  Reasoning using Bayesian statistical model checking is a way to compute threshold values of probabilities which could predict the potential of existence of malware. Detection of potential suspicious creation of file and process in a sandboxing environment will be addressed.

October 20-23rd, 2015 Acknowledgements This material is based upon work funded and supported by the Department of Defense under Contract No. FA C-0003 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center. This material hasbeen approved for public release and unlimited distribution. DM

October 20-23rd, 2015 Thank You  Q &A

October 20-23rd, 2015 Kris Ghosh Jose Andre Moraeles Willam Casey Bud Mishra 26 Contact Details