36
Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Keepers of the Machines:Examining How Sys Admins Manage Software Updates

Frank Li Nathan Malkin Lisa Rogers

Arunesh Mathur Marshini Chetty

Page 2: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Source: https://www.xkcd.com/1328/

Page 3: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty
Page 4: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Prior Work: End User Patching

Page 5: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Prior Work: End User Patching

What about sys admins?

Page 6: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Update Processes

What are the update steps, processes, and workflows of admins?

Impact On Effectiveness

What are the consequences of admin

actions / decisions?

Research Questions

Page 7: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Multi-part user study1. Pilot interviews (n=7)2. Online Survey (n=102)3. Semi-structured interviews (n=17)

Recruitment: social media, email lists, Reddit, LISA

Screening: 18+ yrs old, US residents, employed as admin for 1+ yr at org with 5+ employees

Analysis Approach: inductive thematic analysis

Study Method

Page 8: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Update Process Stages

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Page 9: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

Page 10: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Prioritize by update type

•Proactive search•Update info

spread out

Page 11: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

•Prioritize by update type

Page 12: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

3. Preparing For Installation

Prepare Host Setup or Configs

Make Backups or Snapshots

Test Updates

Page 13: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

3. Preparing For Installation

Prepare Host Setup or Configs

Make Backups or Snapshots

Test Updates

• No Testing (� 10% in survey)

• Dedicated Test Environment (1/3 in survey, 1/2 in interview)

• Staggered Deployment (1/2 in survey, 2/3 in interview)

Developer Machines Production MachinesAdmin Machines

Page 14: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

3. Preparing For Installation

Prepare Host Setup or Configs

Make Backups or Snapshots

Test Updates

• No Testing (� 10% in survey)

• Dedicated Test Environment (1/3 in survey, 1/2 in interview)

• Staggered Deployment (1/2 in survey, 2/3 in interview)

Developer Machines Production MachinesAdmin Machines

Update Stage 1

Page 15: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

3. Preparing For Installation

Prepare Host Setup or Configs

Make Backups or Snapshots

Test Updates

• No Testing (� 10% in survey)

• Dedicated Test Environment (1/3 in survey, 1/2 in interview)

• Staggered Deployment (1/2 in survey, 2/3 in interview)

Developer Machines Production MachinesAdmin Machines

Update Stage 2

Page 16: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

3. Preparing For Installation

Prepare Host Setup or Configs

Make Backups or Snapshots

Test Updates

• No Testing (� 10% in survey)

• Dedicated Test Environment (1/3 in survey, 1/2 in interview)

• Staggered Deployment (1/2 in survey, 2/3 in interview)

Developer Machines Production MachinesAdmin Machines

Update Stage 3

Page 17: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

3. Preparing For Installation

Prepare Host Setup or Configs

Make Backups or Snapshots

Test Updates

• No Testing (� 10% in survey)

• Dedicated Test Environment (1/3 in survey, 1/2 in interview)

• Staggered Deployment (1/2 in survey, 2/3 in interview)

Developer Machines Production MachinesAdmin Machines

Update Stage 3

Patch dev/test servers first. Let the systems run for a few weeks

before patching production.

Install on non-important machines and let them bake

for 1+ months.

Page 18: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

Page 19: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

Page 20: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

4. Deploying Updates%

Res

pond

ents

0

25

50

75

100

Top Deployment Methods

3rd-Party Update Managers

Survey Interview

Page 21: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

4. Deploying Updates%

Res

pond

ents

0

25

50

75

100

Top Deployment Methods

3rd-Party Update Managers

CustomScripts/Programs

Survey Interview

Page 22: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

4. Deploying Updates%

Res

pond

ents

0

25

50

75

100

Top Deployment Methods

3rd-Party Update Managers

CustomScripts/Programs

AutomaticUpdates

Survey Interview

Page 23: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

4. Deploying Updates%

Res

pond

ents

0

25

50

75

100

Top Deployment Methods

3rd-Party Update Managers

CustomScripts/Programs

AutomaticUpdates

ManualUpdates

Survey Interview

Page 24: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

4. Deploying Updates%

Res

pond

ents

0

25

50

75

100

Top Deployment Methods

3rd-Party Update Managers

CustomScripts/Programs

AutomaticUpdates

ManualUpdates

Survey Interview

Challenges in Automation: •High implementation cost •Managing configs/dependencies •Host heterogeneity •Disruptions (more on timing in paper)

Page 25: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

Page 26: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

Page 27: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

98% in survey have dealt with buggy updates.I stopped applying updates because it was becoming

more of a problem to apply them than not to. Production machines, they don’t get updates.

5. Handling Post-Update Issues

Page 28: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Most rollback to snapshot or revert update.5-15% try to work around update issues.

5. Handling Post-Update Issues

98% in survey have dealt with buggy updates.I stopped applying updates because it was becoming

more of a problem to apply them than not to. Production machines, they don’t get updates.

Page 29: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

•Most undo update, vulnerable

Page 30: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

Update Process Stages

Organizational / Management Influences

Autonomy Policies / Compliance

Resources / BudgetCoordination

Page 31: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

•Most undo update, vulnerable

Organizational / Management Influences

Where Next?

Page 32: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

•Most undo update, vulnerable

Organizational / Management Influences

Where Next?

Improve information retrieval:• Centralized source• Outreach campaigns

Page 33: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

•Most undo update, vulnerable

Organizational / Management Influences

Where Next?

• Standardize available info

• Split updates by type?

Page 34: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

•Most undo update, vulnerable

Organizational / Management Influences

Where Next?

Improve technical & usability aspects of update tools/systems

Improve technical & usability aspects of update tools/systems

Advance technical + usability aspects of update tools/systems

Page 35: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Stage 1 Learning

about updates

Stage 2 Deciding to update

Stage 3 Preparing

for installation

Stage 4 Deploying updates

Stage 5 Handling post-update issues

•Proactive search•Update info

spread out

•Prioritize by update type

•Widespread testing•Testing can

delay update

•Deploying + automation hard

•Most undo update, vulnerable

Organizational / Management Influences

Where Next?

Evaluate organizational influences in depth

Page 36: Keepers of the Machines - USENIX · Keepers of the Machines: Examining How Sys Admins Manage Software Updates Frank Li Nathan Malkin Lisa Rogers Arunesh Mathur Marshini Chetty

Where Next?Further investigate sys admins specificallyMake information retrieval + processing easier:• Centralized source• Outreach campaigns• Standardize available info• Split update types (?)

Advance technical + usability aspects of update technologyEvaluate org influences Thanks!

[email protected] @frankli714