CSE 403 Lecture 14 Safety and Security Requirements

  • Slides: 16
Download presentation
CSE 403 Lecture 14 Safety and Security Requirements

CSE 403 Lecture 14 Safety and Security Requirements

User requirements Business Requirements User Study Requirements Documentation Use Cases User Requirements Functional Requirements

User requirements Business Requirements User Study Requirements Documentation Use Cases User Requirements Functional Requirements Non-functional Requirements

Non-functional requirements n n Requirements beyond user interaction with the system Kulak and Guiney

Non-functional requirements n n Requirements beyond user interaction with the system Kulak and Guiney n Availability, cost of ownership, maintainability, data integrity, extensibility, installability, reuse, operability, performance, portability, quality, robustness, scalability

Non-functionality requirements n Wiegers n n Performance requirements Safety requirements Security requirements Software quality

Non-functionality requirements n Wiegers n n Performance requirements Safety requirements Security requirements Software quality attributes

Software Safety n Safety critical applications n n Where bugs can kill Famous cases

Software Safety n Safety critical applications n n Where bugs can kill Famous cases n n Therac-25 radiation therapy machine US Air traffic control which failed in UK n n Reflected map on Greenwich Median US Aviation software failed in Israel n Encountered negative altitudes over Dead Sea

Safety critical systems n n Very high cost of failure Software component of a

Safety critical systems n n Very high cost of failure Software component of a large system n n n e. g. nuclear reactor Characteristics of software lead to failures Safety requirements n n Low probability of failure (risk analysis) Understood failure modes

Software Safety n Safety vs. Reliability Safety n System hazard analysis n n n

Software Safety n Safety vs. Reliability Safety n System hazard analysis n n n Reliability High risk tasks Safety critical operator errors Design of Human-Machine Interface

Specifying safety requirements n n n Component reliability Fail to safe state Formal guarantees

Specifying safety requirements n n n Component reliability Fail to safe state Formal guarantees or validation Positive measures Decouple safety critical components n n Safety kernel Redundancy

UI for Safety n n n System failures generally complex with humans involved Hard

UI for Safety n n n System failures generally complex with humans involved Hard to clarify degree of user error Very complicated design space n n n Design for very boring environment Design for crisis operation Take into account human cognitive abilities

Security requirements n n n Applications are run in a hostile world Application compromise

Security requirements n n n Applications are run in a hostile world Application compromise vs. system compromise Example requirements n n Only authenticated users can change data Application can change security permissions or execute programs Malicious user cannot crash system with bad data Threat analysis

Threat modeling n The STRIDE Threat Model n n n Spoofing identity Tampering with

Threat modeling n The STRIDE Threat Model n n n Spoofing identity Tampering with data Repudiation n n Allow users to deny having performed actions Information disclosure Denial of service Elevation of privilege

Approaches to security requirements n n Security audit / validation Implementation limitations n n

Approaches to security requirements n n Security audit / validation Implementation limitations n n No use of ‘gets’ No use of unsafe calls on user input Restricted operation modes Safe defaults

Security requirements for multiplayer games n n Cheating ruins game play (and consequently market)

Security requirements for multiplayer games n n Cheating ruins game play (and consequently market) Threats n n n Players introducing counterfeit weapons Sending packet of death across network Using profiling tools to detect areas of activity in dungeons

Threat analysis for Classroom Presenter

Threat analysis for Classroom Presenter

Classroom Presenter

Classroom Presenter

Useful references n Writing Secure Code, Michael Howard and David Le. Blanc (2 nd

Useful references n Writing Secure Code, Michael Howard and David Le. Blanc (2 nd Edition) n n Good book, but strongly oriented towards Windows Safeware: System Safety and Computers, Nancy Leveson n Defines the field of software safety