Secure Software Development Flashcards

1
Q
is an organized
process of developing
a secure application
throughout the life of
the project
A

SDLC Software Development Life Cycle

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

Helps prioritize vulnerabilty identification and patching

A

Threat modeling

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

Users and processes should be run using the least amount of access necessary to perform a given information

A

Least Privilege

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

Layering of a security controls is more effective and secure than relying on a single control.

A

Defense in Depth

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

Occurs when tester is not provided with any information about the system or program prior to conducting the test

A

Black box testing

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

Occurs when a tester is provided full details of a system including the source code, diagram and user credentials in order to conduct the test

A

White box testing

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

Provides control over what the application should do when faced with a run time or syntax error. Programs should use input validation when taking data from users

A

Structured exception handling

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

Applications verify that information received from a user matches a specific format or range values.

A

Input Validation

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

Analysis and testing of a program occurs with it being executed and run

A

Dynamic analysis

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

Injection of randomize data into a software program in an attempt to find a system failures, memory leaks, error handling issues and improper input validation.

A

Fuzzing

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

Code placed in computer programs to by pass normal authentication and other security mechanism.

A

Backdoors

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

Method of accessing unauthorized directories by moving through the directory structure on a remote server

A

Directory traversal

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

Occurs when an attacker is able to execute or run commands on a victim’s computer. When the user is away from computer.

A

Arbitrary Code Execution

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

Occurs when an attacker is able to execute or run commands on a remote computer

A

Remote code execution

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

Attack against a vulnerability that is unknown to the original developer or manufacturer

A

Zero day

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

Occurs when a process stores data outside the memory range allocated by the developer.

A

Buffer overflow

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

A temporary storage area that a program uses to store data

A

Buffer

18
Q

Reserved area of memory when the program saves the return address when a function call instruction is received.

A

Stack

19
Q

Occurs when an attackers fill up the buffer with NOP so that the return address may hit an NOP and continue on until it finds the attacker’s code to run

A

Smash the stack

20
Q

Series of NOPs is hit by a non malicious program

A

NOP Slide

21
Q

Method used by programmers to randomly arrange the different address spaces used by a program or process to prevent buffer overflow exploit

A

Address space layout randomization ASLR

22
Q

Occurs when an attacker embeds malicious scripting commands on a trusted website

A

Cross-site scripting (xss)

23
Q

Attempts to get data provides by the attacker to be saved on the web server by the victim.

A

Stored/persistent attack

24
Q

Attempts to have a non persistent effect activated by a victim clicking a link on the site

A

Reflected

25
Q

Attempts to exploit the victim’s web browser

A

Document Object Model (DOM) based

26
Q

Occurs when an attacker forces a user to execute actions on a webserver for which they are already authenticated

A

Cross-Site Request Forgery

27
Q

Attacking consisting of the insertion or injection of an SQL query via input data from the client to a web application

A

SQL injection

28
Q

Insertion of additional information or code through data input data from the client to a web application

A

Injection attack

29
Q

Data submitted without encryption or input validation is vulnerable to spoofing, request forgery and injection of arbitrary code

A

XML vulnerability

Extensible Mark up Language

30
Q

Xml encodes entities that expand to exponential size, consuming memory on the host and potential crashing it.

A

XML Bomb ( Billion Laugh Attack)

31
Q

An attack that embeds a request for a local resource

A

XML external entity

32
Q

A software vulnerabilty when the resulting outcome from execution process is directly dependent on the order and timing of certain events and those events fail to execute on the order and timing intended by the developer

A

Race Conditions

33
Q

A software vulnerability that occurs when the code attempts to remove the relationship between a pointer and the thing itnpoints to.

A

Dereferencing

34
Q

The potential vlnerability that occurs when theres a change between when an app checked a resource and when the app used the resource

A

Time of check to Time of use - TOCTOU

35
Q

Vulnerabilities often arise from the general design of the Software Code

A

Design Vulnerabilities

36
Q

Any code that is used or invoke outside the main program development process

A

Insecure Component

E.g
Code reuse
Third Party Library
SDK

37
Q

Any program that does not properly record or log detailed enough information for an analyst to perform their job

A

Insufficient Logging and Monitoring

38
Q

Any program that uses ineffective credentials or configurations, or one in which defaults have not been changed for security

A

Weak or Default Configuration

39
Q

Software development is performed in time-boxed or small increments to allow more adaptivity to change

A

Agile

40
Q

Software development and information technology operations

A

DevOps