Topic 1 Flashcards

1
Q

What does Confidentiality assure?

A

Assures that only authorized individuals are able to view information.

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

What does Availability assure?

A

Assures that the data or the systems, are available for the authorized user when required.

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

What does Integrity assure?

A

Assures that only authorized individuals are able to change information.

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

List the two CIA extension

A

Non-repudiation (assures non-denial of communication) and Authenticity (assures the identity of the communicating party.)

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

Define vulnerability

A

Weakness in an information system, system security procedures, internal controls, or implementation that could be exploited or triggered by a threat source.

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

Define threat

A

Any situation with the potential to adversely impact organizational operations and assets, or individuals through an information system via unauthorized access, destruction, disclosure, modification of information, and/or denial of service.

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

What is Applications Security?

A

Measures taken to improve the security of an application often by finding, fixing and preventing security vulnerabilities.

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

List the Secure Design Considerations

A

** Least Privilege*
– Allow each user/process minimum privileges to do their work.
** Separation of Duties*
– Assign different people as programmer and code reviewer.
** Defense in Depth*
– Design software that will not break down even if one security mechanism has been broken(redundant).
** Fail Secure*
– Design your program to recover or terminate safely upon
any form of failure.
** Psychological Acceptability*
– Security protection mechanism should be easy to use.

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

Example of a Secure Design Processes

A

Threat Modelling is to systematically identify and rate the threats that are most likely to affect your system.

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

Threat Modeling Steps

A
  1. Defining security requirements
  2. Creating an application diagram
  3. Identify the threats (STRIDE)
  4. Mitigating threats
  5. Validating that the threats have been mitigated
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

List some of the Common Software Vulnerabilities

A

– Buffer overflows
– Unvalidated input
– Race conditions
– Access-control problems
– Weaknesses in authentication, authorization, or cryptographic implementations

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

List some examples of Defensive Coding Practices

A
  1. Attack Surface Evaluation and Reduction
  2. Input Validation
  3. Canonicalization
  4. Use of Recommended Cryptographic Algorithms
  5. Exception Management
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Secure Software Processes (during Implementation)

A

** Version Control*
– When code is checked out by someone for changes, no one else can make changes to the code until it has been checked in
** Code Analysis*
– Inspecting code for exploitable weaknesses
– Static Code Analysis: inspection without code execution (e.g. Fortify)
– Dynamic Code Analysis: inspection during code execution (e.g.BoundsChecker)
** Code/Peer Review*
– Inspecting for insecure code and inefficient code

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

List Secure Software Testing

A
  • Threat modeling
  • Automated tools
  • Manual source code analysis and review
  • Brute force testing (e.g. fuzzing)
  • Penetration testing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Microsoft SDL Practices

A
  1. Provide Training
  2. Define Security Requirements
  3. Define Metrics and Compliance Reporting
  4. Perform Threat Modeling
  5. Establish Design Requirements
  6. Define and Use Cryptography Standards
  7. Manage the Security Risk of Using Third-Party
    Components
  8. Use Approved Tools
  9. Perform Static Analysis Security Testing (SAST)
  10. Perform Dynamic Analysis Security Testing (DAST)
  11. Perform Penetration Testing
  12. Establish a Standard Incident Response Process
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

The Software Assurance Maturity Model (SAMM)

A
  1. Flexible open framework to meet different risks and sizes of organization
  2. Four critical Business Functions
  3. Three Security Practices per Business functions
  4. Three maturity levels for each of the twelve security practices
17
Q

OWASP Proactive Controls

A

C1 Define Security Requirements
C2 Leverage Security Frameworks and Libraries
C3 Secure Database Access
C4 Encode and Escape Data
C5 Validate All Inputs
C6 Implement Digital Identity
C7 Enforce Access Controls
C8 Protect Data Everywhere
C9 Implement Security Logging and Monitoring
C10 Handle All Errors and Exceptions