Download - Predictability: The Essence of Attacking Systems

Transcript
Page 1: Predictability: The Essence of Attacking Systems

Predictability: The Essence of Attacking Systems

Andrew Wilson

Page 2: Predictability: The Essence of Attacking Systems

Howdy YALL! (that’s how you say it right?!)

• Who am I?

• Recovering Developer

• Professional AppSec Pentester

• Sandan in Jiyushinkai Aikibudo

Page 3: Predictability: The Essence of Attacking Systems

Overview

• Why predictability matters

• Analyzing Systems

• Complexities In Vulnerabilities

• Approaches to Taking Advantage

Page 4: Predictability: The Essence of Attacking Systems

Historical Context

• The slides represent the life work of the above people.

Page 5: Predictability: The Essence of Attacking Systems
Page 6: Predictability: The Essence of Attacking Systems

Predictability

• The essence of science is based on predictability.

• Computer science is all about algorithms and rules.

• Computer security is all social engineering.

Page 7: Predictability: The Essence of Attacking Systems

Why Predictability

• Knowledge == Power

• Consistency leads to success

• All the cool kids are doing it!

Page 8: Predictability: The Essence of Attacking Systems

Analyzing Systems

• You can’t measure results without understanding a system

• Consistency comes from knowledge and experience

• Two categories:– General Theory– Specific Implementation

Page 9: Predictability: The Essence of Attacking Systems

• The human body is a set of complex systems– Nervous, Muscular, Cardio

Vascular, Structural• Computers are a set of

complex systems:– Processor, Disk,

Networking, Memory, Logical, Graphics

Systems in Theory

Page 10: Predictability: The Essence of Attacking Systems

Systems in Reality

• Systems don’t exist in theory

• Implementations are often different than the “ideal”

• Flaws come from:– External forces– Choice

Page 11: Predictability: The Essence of Attacking Systems

Where’s Vulndo?

• Essential components– Dependencies & Commitments– Relationships & Expectations

• Data Processing– Flow & Recovery

• What isn’t needed• What is “default”

Page 12: Predictability: The Essence of Attacking Systems

Innate Vulnerabilities

• Every system has vulnerabilities

• Everything is broken!

• Some are more likely to occur than others

Page 13: Predictability: The Essence of Attacking Systems

Complex reality

• Why don’t things get beat up more often?

• Gedan Budo: It’s not that easy.

• Functional Example

Page 14: Predictability: The Essence of Attacking Systems

Strategy Goals

• The goal in both attack & defense is the same:– Reduce possibility of being wrong– Increase possibility of being right

• To accomplish this we:– Remove variables– Increase Control– Constantly Adapt

Page 15: Predictability: The Essence of Attacking Systems

Elements of Strategy

• Target– What am I interacting with

• Distance– How far am I from it

• Timing– When to attack

Page 16: Predictability: The Essence of Attacking Systems

Target

• What is the closest target I can attack?

• How will I interact with it?

• Why choose it?– Effect of impact– Opportunities to expose other openings

Page 17: Predictability: The Essence of Attacking Systems

Relative Distance

• To-Ma (Long Distance)

• Uchi-Ma (Striking Distance)

• Chica-Ma (Short Distance)

Page 18: Predictability: The Essence of Attacking Systems

Timing / Initiative

• All cycles have a beginning, middle and end.

• Our actions related to cyclical timing is called Sen. (Initiative)

• There are three versions of Sen:– Sen Sen no Sen (Superior Initiative)– Sen no Sen (Early Initiative)– Go no Sen (Late Initiative)

Page 19: Predictability: The Essence of Attacking Systems

Taking Advantage (Waza)

“The nicety of Judo / Aikibudo technique lies not in the action of performing techniques, but rather in the skill with which the preparing is done as a preliminary” – Kenji Tomiki Sensei

Page 20: Predictability: The Essence of Attacking Systems

Unbalancing (Kuzushi)

• Altering an intended cycle : (Extending, Interrupting)

• Caused by changing any one of the components of the interaction – (target, distance, timing)

崩し

Page 21: Predictability: The Essence of Attacking Systems

Fitting (Tsukuri)

• Once a cycle has been broken, surrogacy must occur or the system will fail.

• There are two primary points to fitting:– Jibun no Tsukuri (fitting yourself)– Aite no Tsukuri (fitting the other)

作り

Page 22: Predictability: The Essence of Attacking Systems

Technique (Kake)

• Kake doesn’t mean technique per say, it means to begin.

• This is the nature of the payload itself, what does it do, how does it succeed?

掛け

Page 23: Predictability: The Essence of Attacking Systems

Story Time!

Page 24: Predictability: The Essence of Attacking Systems

Summary

• Systems, by their very nature, are vulnerable to manipulation

• Attackers and Defenders have the same toolbox

• Awareness is the essential tool attack and defense

Page 25: Predictability: The Essence of Attacking Systems

QA