Section 2.3 Secure Application development, deployment, and automation concepts Flashcards

1
Q

What do you call the ability to add, remove, or reconfigure hardware and software resources to handle an increase in usage. Requires manual intervention

A

Scalability

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

What do you call automatically scaling resources up or down to meet user demands. Completely automatic

A

Elasticity

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

What SDLC method goes through each step one by one until they are completed?

A

Waterfall method

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

Developers use ____________ to make sure an application does not contain security issues and is resistant to application errors and crashes.

A

Secure Coding Concepts

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

What do you call a nonprofit foundation that works to improve the security of software?

A

OWASP

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

What does OWASP stand for?

A

Open Web Application Security Project

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

Who produces a top 10 vulnerabilities list that has the most common vulnerabilities, how they are exploited, and how to prevent them?

A

OWASP

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

What brings together management, development, and operations groups to swiftly release software into production

A

DevOps

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

What do you call infrastructure that can not be changed once it is placed?

A

Immutable Infrastructure

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

What tools check the various courses of action within the code, validate inputs, and plays a role in integration, delivery, deployment, and monitoring while providing reporting and analytics?

A

Automation/Scripting Tools

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

What do you call the surrounding infrastructure that supports software applications?

A

Data Center

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

What manages and provisions data centers through machine readable files to support software and user requirements?

A

Infrastructure as Code

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

What control keeps multiple developers from overwriting changes that were written by other developers?

A

Version Control

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

What ensures everyone associated with a software change understands what changes will be made, when they will be made, and any 2nd or 3rd order effects?

A

Change Management

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

What refers to the process of coding applications to accept only certain valid input for user-entered fields?

A

Input Validation

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

What concept recognizes specific types of command characters and parses them as simple data rather than executing the text as a command?

A

Escaping

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

What is the practice of using either predetermined processes or synthetic processes to create diversity within the software development process?

A

Software diversity

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

What analysis is conducted by executing software on a real or virtual processer, with inputs to allow the tester to determine how the software will behave in a potentially negative environment?

A

Dynamic code analysis

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

What dynamic technique enters random data into application fields to see how the software program reacts to test for input validation and exception handling?

A

Fuzzing

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

What analysis is performed without executing the code, but uses either an automated tool or manual reviewing?

A

Static code analysis

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

What checks the ability for a piece of software to undergo large amounts of stress or extremely heavy operating loads by pushing the software beyond its normal or best-scenario operating environments?

A

Stress testing

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

What testing provides key performance indicators of software integrity to help measure how effectively software is developed and how efficiently it is tested prior to deployment?

A

Integrity Measurement

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

What is largely determined by the OS and programming language environment in use because they can offer varying levels of tools?

A

Error and Exception Handling

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

What uses up memory resources needed to execute actions associated with applications?

A

Resource Exhaustion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What occurs when you have access permissions or systems of trust between different components of a software application that allow users to pass through unexpectedly and without proper authorization to access another software component?
Transitive Access
26
Which type of validation responds to users quicker but the client must have compatible software with the server?
Client-side validation
27
Which type of validation is more compatible but responds slower and is safer because the application code isn't shared?
Server Side validation
28
What is prevented by verifying a request came from an authorized user by requiring a second identifying value saved saved in a cookie to authenticate an authorized session?
CSRF
29
What is CSRF
Client Side Request Forgery
30
What do you call the use of existing source code for a new purpose?
Code Reuse
31
What is a SDK?
Software Development Kit
32
What entails using a certificate to digitally sign executables and scripts to confirm that the software was developed by the appropriate author?
Code Signing
33
What hard codes and shares data?
Data exposure
34
What do you call code that is never used or executed and its removal can cause exceptions or a change in output?
Dead Code
35
What is the design of a database to remove redundancies and improve integrity through simplifying the design?
Normalization
36
What are saved subroutines that can be used within applications accessing databases?
Stored Procedures
37
In what environment is software developed? Often done in a sandbox.
Development (DEV)
38
In what environment is software tested, either in a static or dynamic manner?
Testing (TEST)
39
What environment is built for iterative testing to assure new code does not have negative impacts on the funtionality?
Quality Control/Assurance (QC/QA)
40
What environment allows the code to be subjected to final testing before being moved to production?
Staging(STAGING)
41
What is the final, live environment that users get to interact and work with?
Production (PROD)
42
In what environment is the application initially coded, often through multiple iterations?
Development
43
In what environment do the developers integrate all of their work into a single application?
Testing
44
In what environment do we ensure quality assurance before we roll it out to production?
Staging
45
In what environment does the application go live and end users have the support of the IT team?
Production
46
What do you call the process of making an application or service available? May also refer to the lifecycle of designing, preparing, creating, and managing the applications?
Provisioning
47
What process occurs when the application meets its end of life?
Deprovisioning
48
What is the measuring and identification of changes to a system, away from its expected or baseline value?
Integrity Measurement
49
What process ensures that the application performs as it should do and conforms to data industry standards and regulations?
Integrity Measurement
50
Code updates should be _______________ to ensure functionality is intact and no security vulnerabilities exist.
regression tested
51
What is the result of integrity measurement?
A secure baseline configuration
52
The goal of ________ is to reduce and eliminate redundancy to make fewer indexes per table and make searching faster.
Normalization
53
A ___________ is reusable, prepared SQL code.
Stored procedure
54
When apps use ______________, it will provide the required information while ensuring an attack will not be able to modify the code it contains.
Stored procedures
55
What is the process of obscuring source code so that if it was stolen, it could not be interpreted or reverse engineered by the attacker?
Obfuscation/Camouflage
56
What are server-side programming languages?
C# and .NET
57
__________ execution and validation includes databases, application servers, and domain controllers
Server-side/backend
58
What kind of execution and validation happen on the client in the browser?
Client-Side
59
What are the client-side languages?
JavaScript and HTML 5
60
Failure to manage memory in code may result in?
Memory Leaks
61
What is a set of software development tools that a vendor creates to make application development easier?
SDK
62
Sensitive data should be ________to prevent it from being stolen by attackers, and sometimes masked even to the user.
encrypted
63
What do you call creation of software that is different on each user endpoint/device?
Software diversity
64
What do you call the process of testing to make sure that an application is fit for its purpose and fulfills the user's requirements, and ensures security requirements are met?
Continuous validation
65
What do you call the ability of a system to automatically grow and shrink based on app demand?
Elasticity
66
What do you call the ability of a system to handle growth of users or work?
Scalability