msr2011 zaman

26
Security versus Performance Bugs: A Case Study on Shahed Zaman, Bram Adams, Ahmed E. Hassan Software Analysis and Intelligence Lab (SAIL), Queen’s University 1

Upload: sailqu

Post on 13-Jan-2017

99 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Msr2011 zaman

1

Security versus Performance Bugs:

A Case Study on

Shahed Zaman, Bram Adams, Ahmed E. HassanSoftware Analysis and Intelligence Lab (SAIL), Queen’s University

Page 2: Msr2011 zaman

2

Costly

Bugs have a high impact on companies

Affect reputation

482 bugs/weekFirefox

Page 3: Msr2011 zaman

3

Most research treats all bugs equally Does this make sense?

Page 4: Msr2011 zaman

4

Performance Security Other bugs

Page 5: Msr2011 zaman

5

Our Study Dimensions

Are security bugs fixed by more experienced

developers?

Are security fixes more complex?

Time People Fix

Are security bugs fixed faster?

Page 6: Msr2011 zaman

6

Study Overview

Bugzilla

CVS

Bug Type And Bug Fix

Identification

Performance

Security

Other Bugs

Metric Extraction

Analysis

Page 7: Msr2011 zaman

7

https://bugzilla.mozilla.org/show_bug.cgi?id=640339

Identification of Security Bugs

Page 8: Msr2011 zaman

8

Identification of Performance Bugs‘slow’, ‘perf’,

‘hang’

Our heuristics have:100 ± 5% precision

80 ± 5% recall

Page 9: Msr2011 zaman

9

Reported Bugs in Firefox

Timeframe of our study

Page 10: Msr2011 zaman

10

Our Study Dimensions

Are security bugs fixed by more experienced

developers?

Are security fixes more complex?

Time People Fix

Are security bugs fixed faster?

Page 11: Msr2011 zaman

11

The lifetime of a Bug

FIXEDNEW ASSIGNED CLOSED

TRIAGE

Page 12: Msr2011 zaman

12

Security bugs are triaged faster

Log(1 + triage time)

46629

179870

Ratio

of B

ugs

X 3.8

Page 13: Msr2011 zaman

13

The lifetime of a Bug

FIXEDNEW ASSIGNED CLOSED

FIXING

TRIAGED

FASTER

Page 14: Msr2011 zaman

14

Security Bugs are fixed faster

Log(1 + time between assignment and fix)

Ratio

of B

ugs

Page 15: Msr2011 zaman

15

Rework in the lifetime of a Bug

REOPENED

FIXEDNEW ASSIGNED CLOSEDFIXED

FASTER

TOSSING

TRIAGED

FASTER

Page 16: Msr2011 zaman

16

Security Bugs: tossed & re-opened more often

# of times bug tossing

tossed more !

Ratio

of B

ugs

# of times bug reopened

Ratio

of B

ugs

reopened more !

Page 17: Msr2011 zaman

17

Our Study Dimensions

Are security bugs fixed by more experienced

developers?

Are security fixes more complex?

Time People Fix

Are security bugs fixed faster?

YES!

Page 18: Msr2011 zaman

18

Security bugs are fixed by more experienced developers

Experience in # of days

Ratio

of B

ugs

More experienced

Page 19: Msr2011 zaman

19

Our Study Dimensions

Are security bugs fixed by more experienced

developers?

Are security fixes more complex?

Time People Fix

Are security bugs fixed faster?

YES!YES!

Page 20: Msr2011 zaman

20

Entropy as a measure of Complexity

V W X Y Z0

2

4

6

Fix 2

File

# of

cha

nged

line

sA B C D E

0

2

4

6

Fix 1

File

# of

cha

nged

line

s

More Complex

Page 21: Msr2011 zaman

21

Security fixes are more complex

entropy

Ratio

of B

ugs

Page 22: Msr2011 zaman

22

Our Study Dimensions

Are security bugs fixed by more experienced

developers?

Are security fixes more complex?

Time People Fix

Are security bugs fixed faster?

YES!YES! YES!

Page 23: Msr2011 zaman

23

Security Perf. Security Perf.Fix time +Triage time + ? ?# of reopening +# of tossing +# of developer assigned + = =

Experience +# of files changed + = =Entropy +

more(+) no difference (=) studying (?)

Chrome

+

+

+

+

+

Page 24: Msr2011 zaman

24

Security Perf. Security Perf.Fix time +Triage time + ? ?# of reopening +# of tossing +# of developer assigned + = =

Experience +# of files changed + = =Entropy +

more(+) no difference (=) studying (?)

Chrome

+

+

+

+

+

Page 25: Msr2011 zaman

25

Threats to Validity• Focused on one domain• Use of heuristics in bug type identification• Bug disclosure policies

Non-disclosed security bugs

Page 26: Msr2011 zaman

26YES!