2.3 Summarize secure application development, deployment, and automation concepts Flashcards

(29 cards)

1
Q

The 4 Computing Environments

A

Development, Test, Staging, and Production. Needs to be separated so you test each stage for untested code.

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

Development Environment

A

Where new software code is being made. OS type and version needs to match.

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

Test Environment

A

Mimics the production environment. Test environment is to ensure that it is bug free.

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

Staging Environment

A

You ensure quality assurance and validate security and baseline config.

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

Production Environment

A

The product does what it is designed to do. Is working with real data.

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

Quality Assurance (QA)

A

Evaluation process that test security and quality. (Happens in the Staging environment)

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

Provisioning

A

Making apps. and services available. May be related to lifecycle of a app.

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

Deprovisioning

A

Application end of life. Should be deprovision with HIPPA or GDPR.

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

Integrity management

A

Maintaining control over the copies of code. Also placing a hash on the code to reference it to a table to which version you have.

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

Normalization

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

Stored Procedures

A

Precompiled scripts in the production. Benefit is speed and code is less flexible.

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

Obfuscation/Camouflage code

A

Masking source code with XOR and ROT 13 from attackers.

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

Code Reuse

A

Also referred to Legacy code. The cold stills needs to go through security.
Saves money in the development environment.

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

Dead Code

A

Code that isn’t used anywhere in software.

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

Server-Side vs. Client-Side Execution and Validation

A

Sever-side checks data on the server side, only safe way
Client-side, can’t validate any inputs. Can inject malicious code, JavaScript, HTML, or URLs

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

Memory Management

A

Process: Use memory, return memory back to the system if not used.
If not managed correctly it could cause a memory leak.

17
Q

SDK

A

(Software development kit)
Third party set of software programs and tools to create apps.

18
Q

Data Exposure

A

Losing data or control of data during operations

19
Q

OWASP

A

(Open Web Application Security Project)
Non-profit that has update list on he most common application vulnerabilities

20
Q

Software Diversity

A

Taking the “High-level language” (readable English code) and converting into Machine language (1&0). Can be done instantly or scripted.

21
Q

Complier

A

Take High level Language and converts it into Machine code.

22
Q

Continuous monitoring

A

Auto detecting security issues and sending alerts to security personnel. Uses Scripts

23
Q

Continuous Validation

A

Testing code to see if the code functional with the existing codebase.

24
Q

Continuous Integration

A

Allows for testing and updating parts of the codebase without uploading the entire codebase.

25
Continuous Delivery
Allows automated testing and is a automated release that you allow updates when they are complete.
26
Continuous Deployment
Release if the update automatically without you enabling it. Just like Continuous Delivery but you don't control it.
27
Version Control
Documenting software updates and having a list of what is what. Good for reverting back to the previous versions.
28
Elasticity
The ability of a system to automatically grow and shrink based on app demand
29