Software security Flashcards

1
Q

sdlc

A

software development life cycle

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

what is the sdlc process

A
risk assessment (requirements)
threat modelling and design review (design)
security testing and code review(testing)
static analysis (development)
static assessment and secure configuration (deployment)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

SDLC process

A
requirements
design
development
testing
deployment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

defensive programming

A

when a programmer anticipates problems and writes code to deal with them

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

different forms of defensive programming

A
input validation
heed compiler warnings
architect and design for security policies
keep it simple
default dent
adhere to principle of least privelage
sanitize data sent to other systems
practice defense in depth
use effective quality assurance techniques
adopt secure coding standard
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

principle of least privilege

A

every process should execute with the least set of privilages necessary to complete the job. Any elevated permission should only be accessed for the least amount of time required to complete the privileged task

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

what does it mean to practise defense in depth

A

manage risk with multiple defensive strategies so that if one layer of defense turns out to be inadequate, another layer of defense can prevent a security flaw from becoming exploitable vulnerability

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

what does default entry refer to

A

base access decisions on permission rather than exclusion. By default, access should be denied

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

owasp

A

open web application security project

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

owasp top 10 web application security risks

A
injection flaws
broken authentication
sensitive data exposure
xml external entries
broken access control
security misconfiguration 
cross-sire scripting
insecure deserialization
using components with secure vulnerabilities
insufficient logging and monitoring
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

what are the consequences of non secure development?

A

??

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

Threat modelling

A

structured process with these objectives:

  • identify security requirements
  • pinpoint security threats and potential vulnerabilities
  • quantify threat and vulnerability critically and
  • prioritize remediation methods
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

artifacts created by threat modelling

A

abstraction of system
profiles of potential attackers - including goals and methods
a catalog of threats that could arise

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

what is STRIDE

A

evaluates system detail design.
Models the in place system by building data flow diagrams
identify system entries, events and the boundaries of the system
Stride applies the general set of known threats

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

general set of threats that Stride applies

A

Threat, definition, property violated
spoofing - pretending to be someone/thing other than self, authentication
tampering - modifying something, integrity
repudiation - claiming that you did not do something/were not responsible, non-repudiation
information disclosure - providing information to someone that is not authorized to access that information, confidentiality
denial of service - exhausting resources needed to provide service, availability
elevation of privilege - allowing someone to do something that they are not authorized to do, authorization

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

CVSS

A

Common vulnerability scoring system

captures the principle vulnerability and produces a numerical severity score

17
Q

SAST vs DAST

A

sast – static security tests
dast - dynamic security tests

SAST and DAST are application security testing methodologies used to find security vulnerabilities that can make an application susceptible to attack.

Static application security testing (SAST) is a white box method of testing. It examines the code to find software flaws and weaknesses such as SQL injection and others listed in the OWASP Top 10.

Dynamic application security testing (DAST) is a black box testing method that examines an application as it’s running to find vulnerabilities that an attacker could exploit.