Soutenance de thèse
Présentée par : Loukmen REGAINIA
12 Juin 2018
Sous la direction de :
2
CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
CVE-2018-8045 (Joomla 3.5.0 - 3.8.5)
CAPEC-66: SQL Injection
In depth defense
Relying on user input
3
A pattern is a generic solution to a recurrent problem
4
A pattern is a generic solution to a recurrent problem
security
security
4
Context
Problem
Solution
Schumacher et al. 2001
5
A pattern is generic
Must be integrated
Difficult and error prone task
6
7
Pattern
Application model
Pattern Integration
8
8
A security pattern is not an island M. Schumacher et al.
9
K.Yskout et al.
10
11
12
Where:
M
V
SP
Wants to protect
Against
Using
Dev
13
1. SP choice
2.SP integration
3.structural
4.behavioral
5.Measure the Integration quality
6.M still vulnerable
Vulnerability coefficient
Vulnerabilities V
14
15
16
With the Disclosure Coefficient of the Pattern i
17
18
Generic :
Instantiated :
19
where:
20
K. Yoon 1995
Simple Additive Weighting
A Pattern Sp
The set SP
where
21
Overall vulnerability coefficient
22
Open issues :
M
V
SP
Wants to protect
Against
Using
Dev
23
Published in :
24
25
3 Security Patterns classifications WRT:
26
27
28
29
Weakness
Principle
Pattern
S
Split
S.Ardi et al. 2006
30
31
An ADTree can be expressed with :
Opponent "o"
Proponent"p"
Algebra (ADTerms):
Graphical:
32
B.Kordy et al. 2014
33
We presented :
Perspectives:
Knowledge base
34
Published in :
35
We propose:
36
37
38
Initial ADTree
ADTree for each CAPEC attack
step 1
step 2
step 3-4
Final ADTree
Test Suite (Stubs)
step 5
Test Suite (Completed)
Application Under Test
Test Verdicts
step 6
step 7
39
The form of the tree depends on the Knowledge base
40
Basic Attack Defence Step (BADStep)
st
sp
41
Attack Scenario
Test Suite
42
43
Given
When
Then
Procedure
Completed using pentesting tools
A procedure is generic if reusable in a context
Local test verdicts
44
Final test verdicts
45
46
Part 1 (1h30):
Part 2(1h30):
| Comprehensibility | Part 1 | Part 2 |
|---|---|---|
| Pattern choice | 00.0% | 33% |
| Understanding Attacks | 41.7% | 87.5% |
| Understanding Patterns | 37.5% | 87.5% |
| Writing test cases | 33.3% | 58.3% |
47
| Accuracy | Part 1 | Part 2 |
|---|---|---|
| Pattern choice (correct) | 00.0% | 62.5% |
| Writing test cases (correct) | 0.1% | 78.1% |
48
| Efficiency | Part 1 | Part 2 |
|---|---|---|
| Pattern choice | 32 m | 14 m |
| Writing test cases | 46 m | 60 m |
49
50
We proposed :
Issues :
Published in :
We presented approaches and tools to assist developers :
Security Pattern integration
Security pattern classification
Security and Pattern testing
51
52
Keep security pattern conjunctions
Test case (TC) example :
BADStep
Test scenario extraction from ADTree using ADTerms