Secure Software Development Flashcards

1
Q

What are the stages of the software development process?

A
  1. Requirements
  2. Design
  3. Implementation
  4. Testing and Assurance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How does security fit into the requirements phase?

A

Security requirements (relating to CIA)
Abuse cases (how system can be misused)
Architectural risk analysis (identifies flaws and associated risks, and involves threat modelling)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How does security fit into the design phase?

A

Architectural risk analysis, security-oriented design

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How does security fit into the implementation phase?

A

Security-oriented design (implementation based on design, ensuring security requirements are met)
Code review (use tools to assess bugs, vulnerabilities and flaws)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How does security fit into the testing/assurance phase?

A

Risk-based security tests, penetration testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is Leslie Lamport’s Gold Standard?

A

Defines mechanisms provided by a system to enforce its requirements, includes
1. Authentication (verifying someone is who they claim to be)
2. Authorisation (granting access right in relation to verified identity)
3. Audit (logging and monitoring activities of a system)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the capabilities in the threat model for network user?

A

Can connect to a service via the network
- Measure the size and timing of requests and responses
- Run parallel sessions
- Provide malformed input, malformed messages
- Drop or send extra messages
SQL Injection, XSS, buffer overrun/ROP payloads, CSRF

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the capabilities in the threat model for snooping user?

A

User on the same network as other users of some service
- Read/measure other’s messages
- Intercept, duplicate and modify messages
Session hijacking, privacy violating side channel attack, denial of service

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the capabilities in the threat model for co-located user?

A

User on the same machine as other users of some service
- Read/write users files and memory
- Snoop on key presses and other events
- Read/write the users display
Password theft

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the practical security design principles?

A

Favour simplicity(use fail safe defaults and don’t expect expert users)
Trust with reluctance (employ small, trusted computing base, grant least privilege, promote privacy, compartmentalise)
Defend in depth (use community resources, avoid security by obscurity)
Monitor and trace (detect and understand an attack and its sources)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the categories of protection from security flaws?

A

Prevention (eliminate software defects by preventing them from happening)
Mitigation (reduce harm from the exploitation of unknown defects)
Detection/recovery (identify and understand an attack, and undo damage)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly