Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Secure Software Development: Security Use Cases & Model-Driven Security with UML, Slides of Software Engineering

An in-depth exploration of secure software development, focusing on the application of touchpoints such as requirement and use cases, architecture and design, test plans, code tests and test results, feedback from the field, and abuse cases. It also covers security requirements, risk analysis, and the use of secureuml for role-based access control and mandatory access control. The advantages and limitations of model-driven software development integrated with security, as well as the importance of formal semantics for security considerations.

Typology: Slides

2012/2013

Uploaded on 04/26/2013

sharad_984
sharad_984 🇮🇳

4.5

(13)

146 documents

1 / 39

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Secure Software Development
Security Use Cases
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27

Partial preview of the text

Download Secure Software Development: Security Use Cases & Model-Driven Security with UML and more Slides Software Engineering in PDF only on Docsity!

Secure Software Development

Security Use Cases

Application of Touchpoints

Requirement and Use cases

Architecture and Design Test Plans^ Code^

Tests and Test Results

Feedback from the Field

5. Abuse cases 6. Security Requirements 2. Risk Analysis

External Review

4. Risk-Based Security Tests 1. Code Review (Tools) 2. Risk Analysis 3. Penetration Testing 7. Security Operations

SecureUML

• Lodderstedt, Basin, and Doser

• Role-Based Access Control, MAC

• Use UML to specify access control

  • Security is “horizontal” to software

development

  • Ad-hoc and “after-the-development” security

integration is error prone, can be costly, and

may have negative impact

SecureUML

  • Model-driven software development integrated with

security

  • Advantages:
    • Security is integrated during software design, using high- level of abstraction
    • Modeling information can be used to detect design errors and verify correctness
  • Limitations: need precise semantics of modeling

language for security assurance

UML Elements

• Actors

• Business processes

• Logical components

• Activities

• Programming language statements

• Database schemas

• Reusable software components

UML Diagrams

Source: Wikipedia, http://en.wikipedia.org/wiki/Unified_Modeling_Language

RBAC

• Intuitive and easy to administer

• Well established and supported by a large

number of software platform

• Limitation: expressing access conditions based

on system state  Authorization Constraints

(Object Constraint Language)

RBAC 3

U

Users

R

Roles

P

Permissions

S^.

Sessions

User assignment

Permission assignment

Constraints

Lecture 17^13

Mandatory Access Control Security Labels: (A,C) , where A: total order, e.g., Top-Secret > Secret > Public C: domain (subset), e.g., subsets of the set {5, 7} are: {5,7}, {5}, {7}, {} and {5,7} ⊇ {5,7}|{5}|{7}|{}, {5} ⊇{5}|{}, {7}⊇{7}|{}, {} ⊇{} but {7} NOT ⊇ {5} Dominance (≥): label l=(A,C) dominates l’=(A’,C’) iff A ≥ A’ and C ⊇ C’ e.g., (confidential,{student-info}) ≥ (public,{student-info}) BUT

(confidential, {student-info}) NOT ≥ (public,{student-info, department-info})

Lecture 17^14

Bell-LaPadula Axioms

  • Simple-security property : a subject s is allowed to read an object o only if the security label of s dominates the security label of o - No read up - Applies to all subjects
  • *-property : a subject s is allowed to write an object o only if the security label of o dominates the security label of s - No write down - Applies to un-trusted subjects only

Model Driven Architecture

Model Driven Security

Model Driven Architecture

Source: D. Basin et a., ACM Trans. On Software Engineering and Methodology, 15(1), 2005

Model Driven Security

  • Security modeling

language

  • System design modeling

language

  • Dialect: connection

point for integrating

security and system

models

Source: D. Basin et a., ACM Trans. On Software Engineering and Methodology, 15(1), 2005

SecureUML

  • Defines vocabulary for annotating UML-based

models with access control information

  • Abstract syntax: formal definition, e.g., grammar
  • Concrete syntax: notation (UML profile)
  • Host language: a modeling language that uses

SecureUML

  • SecureUML dialect: SecureUML specifications are

refined in the host language

  • E.g., syntactic elements of the modeling language are transformed into constructs of the target platform

Need capability to combine sub-expressions from

different languages!