POMPDs Make Better Hackers: Accounting for Uncertainty in Penetration Testing. By: Chris Abbott



Similar documents
Some Research Directions in Automated Pentesting

Penetration Testing == POMDP Solving?

Penetration Testing == POMDP Solving?

Attack Graph Techniques

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Network Mission Assurance

Passing PCI Compliance How to Address the Application Security Mandates

How To Test For Security On A Network Without Being Hacked

FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. Chapter 4 Finding Network Vulnerabilities

Web application security: automated scanning versus manual penetration testing.

TIME TO LIVE ON THE NETWORK

Secure Web Application Coding Team Introductory Meeting December 1, :00 2:00PM Bits & Pieces Room, Sansom West Room 306 Agenda

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

Complete Web Application Security. Phase1-Building Web Application Security into Your Development Process

WHITE PAPER AUTOMATED, REAL-TIME RISK ANALYSIS AND REMEDIATION

ensuring security the way how we do it

Payment Card Industry (PCI) Data Security Standard

Transparent Monitoring of a Process Self in a Virtual Environment

Cyber Security Modeling and Assessment of SCADA System Architectures

Cyber R &D Research Roundtable

Penetration Testing //Vulnerability Assessment //Remedy

What a Vulnerability Assessment Scanner Can t Tell You. Leveraging Network Context to Prioritize Remediation Efforts and Identify Options

Kirsten Sinclair SyntheSys Systems Engineers

IBM Global Technology Services Statement of Work. for. IBM Infrastructure Security Services - Penetration Testing - Express Penetration Testing

8 Steps for Network Security Protection

8 Steps For Network Security Protection

A Practical Approach to Threat Modeling

IQware's Approach to Software and IT security Issues

Model, Analyze and Optimize the Supply Chain

CS52600: Information Security

Intro to Firewalls. Summary

PCI DSS v3.0 Vulnerability & Penetration Testing

THE ROLE OF IDS & ADS IN NETWORK SECURITY

Directory and File Transfer Services. Chapter 7

System Specification. Author: CMU Team

Security Optimization of Dynamic Networks with Probabilistic Graph Modeling and Linear Programming

Course: Information Security Management in e-governance. Day 1. Session 5: Securing Data and Operating systems

FINAL DoIT v.4 PAYMENT CARD INDUSTRY DATA SECURITY STANDARDS APPLICATION DEVELOPMENT AND MAINTENANCE PROCEDURES

G- Cloud Specialist Cloud Services. Security and Penetration Testing. Overview

Network & Agent Based Intrusion Detection Systems

North Dakota 2013 IT Security Audit Vulnerability Assessment & Penetration Test Project Briefing

PERFORMANCE TOOLS DEVELOPMENTS

SAST, DAST and Vulnerability Assessments, = 4

A Biologically Inspired Approach to Network Vulnerability Identification

Application Firewall Overview. Published: February 2007 For the latest information, please see

Penetration tests Risk of security loopholes in IT networks

CS 640 Introduction to Computer Networks. Network security (continued) Key Distribution a first step. Lecture24

Course Title: Penetration Testing: Security Analysis

PCI Security Scan Procedures. Version 1.0 December 2004

Bayesian networks - Time-series models - Apache Spark & Scala

An Application of Machine Learning to Network Intrusion Detection

13 Ways Through A Firewall

Anti-Virus Power Consumption Trial

Development of a Network Intrusion Detection System

ADDING NETWORK INTELLIGENCE TO VULNERABILITY MANAGEMENT

Compact Representations and Approximations for Compuation in Games

PTSv2 in pills: The Best First for Beginners who want to become Penetration Testers. Self-paced, online, flexible access

What is Web Security? Motivation

Web App Security Audit Services

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall

Security Optimization of Dynamic Networks with Probabilistic Graph Modeling and Linear Programming

Fuzzy Network Profiling for Intrusion Detection

locuz.com Professional Services Security Audit Services

A Vague Improved Markov Model Approach for Web Page Prediction

Threat Modeling. Frank Piessens ) KATHOLIEKE UNIVERSITEIT LEUVEN

Chapter 4 DECISION ANALYSIS

Real-time hybrid analysis:

CRYPTUS DIPLOMA IN IT SECURITY

Measuring the Performance of an Agent

arxiv: v1 [cs.cr] 17 Jun 2013

PASTA Abstract. Process for Attack S imulation & Threat Assessment Abstract. VerSprite, LLC Copyright 2013

On the Deficiencies of Active Network Discovery Systems

Information Security Attack Tree Modeling for Enhancing Student Learning

Modelling cyber-threats in the Airport domain: a case study from the SECONOMICS project. Alessandra Tedeschi, Deep Blue S.r.

Using Web Security Scanners to Detect Vulnerabilities in Web Services

How to Detect and Prevent Cyber Attacks

F5 Silverline Web Application Firewall Onboarding: Technical Note

INTRODUCTION: PENETRATION TEST A BUSINESS PERSPECTIVE:

Architecture of distributed network processors: specifics of application in information security systems

Using Nessus In Web Application Vulnerability Assessments

Decision Trees and Networks

How To. Instreamer to Exstreamer connection. Project Name: Document Type: Document Revision: Instreamer to Exstreamer connection. How To 1.

White Paper. Managing Risk to Sensitive Data with SecureSphere

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Running A Fully Controlled Windows Desktop Environment with Application Whitelisting

Network Machine Learning Research Group. Intended status: Informational October 19, 2015 Expires: April 21, 2016

Firewalls (IPTABLES)

Symantec Endpoint Protection Analyzer Report

IMPROVING VULNERABILITY MANAGEMENT EFFECTIVENESS WITH APPLICATION SECURITY MONITORING

Network Security and Risk Analysis Using Attack Graphs

How To Predict Web Site Visits

Transcription:

POMPDs Make Better Hackers: Accounting for Uncertainty in Penetration Testing By: Chris Abbott

Introduction What is penetration testing? Methodology for assessing network security, by generating and executing possible attacks exploiting know vulnerabilities of Operating Systems and applications. Why Allows for regular and systematic testing without a prohibitive amount of human labor. More accessible to non-experts

Introduction Attack Planning How to automatically generate attacks? Very technical, addresses the low-level system configuration details. Commercial Software Core Insight Enterprise Does not handle uncertainty (SW upgrades, etc) Difficult to keep updated

Introduction COTS : Attack Planning Encoded using PDDL, using a variant of Metric-FF. Uncertainty Limited by ability to handle Cannot be up-to-date with details of configuration of every machine in the network

Introduction Scanning: Addresses machine configuration Scanning methods as a pre-process to planning Drawbacks: Incurs significant costs in terms of running time, network traffic Scans have a residual uncertainty

Introduction This paper proposes solutions to: A solution to scanning run time A solution to scanning uncertainty

Introduction Incomplete Knowledge: Encode uncertainty of state Modeling the possible network configurations in terms of a probability distribution

Introduction Scans and Exploits: Are deterministic (outcome depends only on the state they are executed in) Rewards: Negative rewards encode the cost The duration Positive rewards encode the value of targets attained

Introduction POMDPs fail to scale to large networks Input model grows exponentially in the number of machines

Introduction Networks are viewed as graphs Vertices are fully-connected subnetworks Arcs encode the connections between these, filtered by firewalls Graph is decomposed into biconnected components

Introduction We approximate the attacks on these components by combining attacks on individual subnetworks We approx this by combining attacks on individual machines Attacks on individual machines are modeled and solved as POMDPs Solutions are propagated back up

Preliminaries Network Structure Viewed as directed graphs whose vertices are given by the set M of machines Arcs are connections between pairs of m M Network graphs tends to consist of subnetworks (i.e. clusters)

Preliminaries Penetration Testing: Impossible to keep track of all the configuration details

Preliminaries POMDPs: Define as a tuple <S,A,0,T,O,r,b0> states S, actions A, Observations 0, reward r Transition function T, Observation function O Agent must find a decision at each step, based on past observations, in order to maximize reward Agent reasons about hidden state of system using a belief state b, a prob distribution over S

POMDP Model States: Network Structure and Firewall filtering rules are static POMDP variables that encode these aspects. Pre-processed and not included in the model

POMDP Model States: Capture the status of each machine Controlled, reached, not reached Terminal state Giving up the attack State space is huge S = O( C ^ M ) Will run POMDPs on single machines M =1

POMDP Model Actions: Two main types Scans: gains knowledge about configuration OS detection, ports Exploits: make use of a vulnerability to gain control over a machine Buffer overflow

POMDP Model Rewards: Reward depends on the scan/exploit action r(s, a, s' ) = re (s, a, s' ) + rt (a) + rd (a) re is the value of the attacked machine exploit rt is a cost that depends on the action's duration rd is a cost that reflects the risk of detection

POMDP Model Designing the Initial Belief: Initial belief is a concrete configuration Future belief: Knowledge of network depends on previous Uncertainty arises from software updates Encoded in terms of Markov chain

4AL Decomposition Algorithm Overview: 4AL algorithm using decomposition and approximation POMDPs do not scale to large networks POMDPs used only to attack individual machines Is a POMDP solver specialized to attack planning Input: a logical network and POMDP model encoding attacks on individual machines Output: policy for the global POMDP encoding

4AL Decomposition Algorithm Level 1: Decompose the logical network into a tree of biconnected components More than one path to attack a subnetwork

4AL Decomposition Algorithm Level 2: Given a component C, for each rewarded subnetwork N C, all paths in C that reach N Considers individual attack paths within C Any single path P is a sequence of attacks on individual subnetworks

4AL Decomposition Algorithm Level 3: Given subnetwork N and a firewall F through which to attack N, for each machine m N Approximate the reward for attacking m first After breaking m we are behind F

4AL Decomposition Algorithm Level 4: Given machine m and a firewall F Model a single-machine attack planning problem as a POMDP Has low-order polynomial runtime

Experiments Test Scenario: Composed of three areas: exposed, sensitive and user

Experiments Approximation Loss Relative loss of quality when running 4AL instead of a global POMDP solution (a) Attack quality comparison. (b) Runtime of 4AL.

Experiments Scaling Up Scaling up to larger values of M shows that 4AL is polynomial Scaling to larger values of E yields more challenging single-machine POMDPs, resulting in steep growth of runtime.

Conclusion Devised a POMDP Model that represents Incomplete knowledge about the network configuration Dependencies between different attack possibilities and firewalls. Intelligently mix scans with exploits While accurate Decomposition algorithm, with small loss in quality