Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

31
Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008

Transcript of Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Page 1: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Aspects of application security

Jens Jensen, STFC3rd T&S workshop, NeSC

08-09 July 2008

Page 2: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Contents

•Why•Who needs it•Where do we need it•What is it and what do we need•What do we have already?•How do we do it?

Page 3: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Why Apps Security

• Data is precious, or confidential• Work is confidential• Result is expensive, or confidential• Resources are expensive• Applications (or libraries) are

restricted• Compliance with regulations

Page 4: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Who needs it (stakeholders)

• Data owner, controller• Application owner• Resource owner• Funding body

Page 5: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Where?

• Grid? Clouds? Distributed computing?

• Desktop?• From my perspective:

– All of the above (probably)

Page 6: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Paranoid calculation...

fE(d)=Ef(d)

or fE(d)=E'f(d) Linear E

Page 7: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

manageability

ScienceApps

IDs

attrs

fabric

data

results

infra

mware

time

social

usability

availability

users

admins

authorities

Page 8: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Old Chestnuts• Security in depth• Consistency (across data replicas)• Also at application level (how to

unlock the data)– Legacy apps conversion– Unlocking data with legacy apps

• Secure programming• Trust

Page 9: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Applications – APIs

• APIs– Web services– Grid– Cloud– Local– RPC

• Fine grained access control (architecture?)

• Auditing• Protecting data• Trust in result

Page 10: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Access to Apps

• Licensing– License managers

• Commercial vs academic• Payment and subscription models

– Sustainability of service

Page 11: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Trust in Attribute Authorities

• Attributes authorise access to resources• An attribute authority issues attributes for

users• How do you know it can be trusted?• Do you understand what it says?• Is it protected? What are best practices?

Page 12: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Building blocks

• Long term signatures– Maintained against time– Changing identities– Changing crypto (vulnerabilities, apps

support)

• Algorithms

Page 13: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Trust in Service Provider

• Cloud model and grid model– Using remote resources, provided by

ext'l provider

CallingAPI

Uploadingapps

Different security aspects

Page 14: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Accounting

• Account for resource usage– By user, VO– Currently wallclock, CPU

• Available (to user? VO? others?)

Page 15: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Environment

• Sandboxes• Restricting what

students can do• Runaway jobs• Leftovers from

previous jobs

• WLCG:• Jobs running

other jobs (or forking)

• Jobs pulling in apps

• Jobs changing UID

Page 16: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Interoperability

• Standards are important– That's why there are so many to choose

from...

• Interoperation between Grids– Don't throw the baby out with the bathwater

• Interoperability is important– Work within (or hook into) users'

infrastructure

Page 17: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Levels of Assurance

• Part of Trust– Authentication– Issuing authorities (identity,

credentials, attrs)– Consider security workflows

• People seem to consider this solved

Page 18: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Existing work

• How far does existing work go?• Is it useful/usable?• Do they work together?• Do they meet the needs?

Page 19: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Existing work

• Lots known about local security– Applications running locally– But is isn't easy– And local systems are often “trusted”

• Lots known about secure programming– But many programmers are scientists

Page 20: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Existing Work (examples)

• caBIG (US cancer research)– Validation service, central trust service

• XtreemOS (EU funded secure OS)• IGTF work on trusted authorities

– Policies– Best practices for operation

Page 21: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Existing work (examples)• Policies

– JSPG (EGEE)

• Dynamic agreements– “Concertation”, “Orchestration”– TrustCoM, GridTrust

• Measure trust in projects– AssessGrid – WS-Agreement (OGF std)

Page 22: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Adapting Apps

• Adaptation libraries?• Can't tweak closed source• OS level (cf. GEMLCA)• Changing code

– Often done to make distributed– Gridifying is (often) not (much) harder

• Reuse is often difficult or expensive

Page 23: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Rethinking running apps

• Use TPM?• Consider escrowed data?• Running signed applications (like Java)• Trusted in service providers? (clouds,

grids)– “You can safely store your passwords with

us”– Banks do something like this

Page 24: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Identify the tradeoffs

• Security vs usability• Security vs performance• Revealing information: to service

provider (AUP), to VO (e.g. quotas), to other users (coordination, sharing)

Page 25: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

“Paranoid” users

• Run apps on their own closed resources

• Do they want to change that? No.• Do we want to change that? ??• What is to gain?

– Interoperability– Improved security of existing resources

Page 26: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

The role of deception

• Users– Run fake jobs

• Service providers– Honey pots

Is there a role for deception?

Consumes resources

Page 27: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

How do we do it, then?• What are the requirements• What do we have and how does it fit?• Fill in the gaps

– Industry interest?– Juicy research topics?

• Who will/should benefit• Make it easy for apps writers/porters• Most effective way to make progress

Page 28: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

How do we do it?

• Understand the risks– E.g. you secure your data but the user

takes it home on a laptop– ... or sells it to your competitor– Risk management framework– Help sell secure grid (or cloud) services

Page 29: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

How do we do it then?

• Trust requires special attention– Are current policies sufficient?– Can we test or audit trusted

components?– How do we convince the end user?– Rewards/penalities

Page 30: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

How do we do it then?

• Overcome the “security is hard” attitude– “We'll add it in later”– Locate a hole, e.g. data integrity or

confidentiality– Demonstrate? Don't put them off...

Page 31: Aspects of application security Jens Jensen, STFC 3 rd T&S workshop, NeSC 08-09 July 2008.

Which apps “most” need security?

• Apps with data security requirements– Permit workflow => security in depth

• Service provider– Calling external API => Trust

• Instruments– !!! => Flexible, manageable access

control