Domain 4 - Software Development Security Flashcards

1
Q

An agile development method that uses pairs of programmers who work off a detailed specification

A

Extreme Programming (XP)

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

In Software Development Security, a black box that combines code and data and sends and receives messages

A

Object

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

Changes the older procedural programming methodology and treats a program as a series of connected objects that communicate via messages

A

Object-Oriented Programming

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

Programming Languages that use subroutines, procedures, and functions

A

Procedural Languages (eg. Basic, C, Fortran, Pascal)

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

A software development model designed to control risk.

A

Spiral Model

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

A development model that focuses on security in every phase

A

Software Delevelopment Life Cycle

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

An application development model that uses rigid phases; when one phase ends, the next begins

A

Waterfall Model

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

Is a software that is executed directly by the CPU

A

Machine Code or Machine Language

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

Is a comput prgramming language instructions that are written in text that must that must be translated to machine code before execution by the CPU

A

Source Code

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

Is low level programming language

A

Assembly Language

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

This converts assembly language into machine language

A

Assembler

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

This attempts to convert machine language into assembly

A

Disassembler

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

This take source code, such as C or Basic and compile it into machine code

A

Compilers

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

A code that is compiled on the fly each time the program is run

A

Interpreted code. (eg. Perl, Object-Oriented Programming

Object-Oriented Programming

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

Is a platform independent code that is converted into machine code by the Java Virtual Machine (JVM)

A

Java Bytecode

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

These are computr languages that are designed to increase a programmer’s efficiency by automating the creation of computer programming code.

A

Fourth Generation Language (4GL)

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

This uses programs to assist in the creation and maintenance of other computer programs

A

Computer-Aided software engineering (CASE)

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

Is programming method where it starts with the broadest and highest level requirements (the concept of the final program) and works down toward low-level technical implementation details

A

Top Down

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

Reverse of Top Down approach in programming

A

Bottom-up

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

Is a software that is typically released in excutable form while the source code is kept confidential.

A

Closed Software

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

Is software where its source code is published publicly

A

Open Source

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

Is a software that is subject to intellectual property protections such as patents and copyrights

A

Proprietary Software

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

A software that is free of charge to use

A

Freeware

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
A fully proprietary software that maybe initially use free for a period of time
shareware
26
Is partially functioning proprietary software, often with key features disable. User typically make a payment to unlock those features
Crippleware
27
Its a development model that has highly overlapping steps
Sashimi (like japanese overlapping of fish)
28
What are the XP core practices?
Planning Paired Programming Forty hour workweek Total Customer Involvement Detailed Test Procedures
29
A rapidly develops software via the use of prototypes, dummy GUI's, back end databases and more. It's aim is to quickly meeting business needs of the system; technical concerns are secondary.
Rapid Action Development
30
is an iterative approach that breaks projects into smaller tasks, creating multiple mockups(prototypes) of system design features
Prototyping
31
Steps of SDLC Process
1. Inititation 2. System Concept DEvelopment 3. Planning 4, Requirements Analaysis 5. Design 6. Development 7. Integration and Test 8. Implmentation 9. Operations and Maintenance 10. Disposition
32
This describes the process of having a third party store an archive of computer software
Software Escrow
33
In OOP. this has the ability of performing different methods depending on the context of the input message
Polymorphism (many forms)
34
In OOP, a method where two instances (specific objects) with the same names that contain different date
Polyinstantiation (many instances)
35
A concept used to describe an object that reuires losts of otehr objects to perform basic jobs
Coupling
36
A concept used to describe an object that can perform most functions independently
Cohesion
37
A middleware that connect programs to programs. They can be udr to locate objects acting as object search engine.
Object Request Broker (ORB)
38
Common Object brokers (ORB) includes
COM, DCOM, CORBA
39
Two object broker technologies by Microsoft
COM - Component Object Model DCOM - Distributed Component Object Model
40
What is the difference betwween Microsoft COM and DCOM?
COM locates objects on a local system DCOM can locate objects over a network
41
Is an opem vendor neutral networked object broker framework by the Object Management Group (OMG). Its objects communicate via a message interface, described by the interface definition language (IDL)
CORBA - Common Object Request Broker Architecture
42
Two software development methodologies that take the concept of of obects to a higher , more conceptual design than OOP.
Object Oriented Analysis (OOA) Object Oriented Design (OOD)
43
Vulnerabilities that allow an attacker with (typically limited) access to be able to access additional resources.
Privilege Escalation
44
Is a software testing method that test code passively, that is the code is not running. This includes walkthroughs, syntax checking, and code reviews.
Static Testing
45
is a softwaretsting method that test the code while executing it.
Dynamic Testing
46
is a software testing method that gives the tester access to program source code , data structures, variables etc.
White Box Software Testing
47
Is software testing method where tester have no internal details; the software is treated as a blackbox that receives input.
Black Box Testing
48
This can be use to map customer's requirements to the software testing plan: It traces the requirements and ensures that they are being met.
Traceability Matrix
49
What are the software testing levels?
1. Unit Testing 2. Installation Testing 3. Integration Testing 4. Regression Testing 5. Acceptance Testing
50
In software testing, it is a low level tests of software components, such as functions, procedures or objects
Unit Testing
51
Testing software as it is installed and first operated
Installation Testing
52
In software testing, testing multiple software components as they are combined into a working system; substes maybe tested, or Big Bang integration testing tests all integrated software components
Integration Testing
53
Testing software after updates, modification or updates
Regression Testing
54
Testing to ensure the software meets the customer's operational requirements; when this testing is done directly by the customer, it is called "User Acceptance Testing"
Acceptance Testing
55
Is a type of blackbox testing that enters random, malformed data as inputs into software programs to determine if they will crash
Fuzzing or Fuzz testing
56
Is a black box testing method that seeks to identify and test all unique combinations of software inputs
Combinatorial Software Testing A good example of this is the Pairwise Testing
57
This describes the action taken by a security researcher after discovering a software vulnerability
Disclosure
58
It is the controversial practice of releasing vulnerability details publicly.
Full Disclosure
59
Is the practice of privately sharing vulnerability information with a vendor and withholding public release until a patch is available
Responsible Disclosure
60
Is a maturity framework for evaluating and improving the software development process
Software Capability Maturity Model (CMM)
61
What are the five levels of Software Capability Mature Model?
1. Initial 2. Repeatable 3. Defined 4. Managed 5. Optimizing
62
Is a structured collection of related data
Database
63
Databases are managed by ______ which controls all access to the database and enforces the database security
Database Management System (DBMS)
64
Is a mathematical attack where an attacker aggregates details at a lower classification to determine information at higher classification
Aggregation
65
Is a simillar attack to aggragation but the attacker must logically deduced missing details
Inference
66
What are the formal database types?
Relational (two dimensional) Hierarchical Object Oriented
67
The simplest form of database, a text file that contains multiple lines of data , each in a standard format
Flat File
68
A table in database is also called \_\_\_\_
Relation
69
A row is a database record which is also called \_\_\_\_\_
Tuple
70
A column in database table is called \_\_\_\_\_
Attribute
71
A single cell (intersection of row and column) in a database is called \_\_\_\_
value
72
Relational database requires a unique value called ____ in each tuple in a table
Primary Key
73
Is a key in related database table that matches a primary key in the parent database
Foreign Key
74
75
Databases must ensure the integrity of of the data in the tables; this is called \_\_\_\_\_
Data Integrity
76
\_\_\_\_\_\_\_\_\_\_\_\_ means that every foreign key in a secondary table matches a primary key in the parent table
Referential Integrity
77
\_\_\_\_\_\_ means that each attribute (column) value is consistent with the attribute data type
Semantic Integrity
78
\_\_\_\_ means each tuple has a unique primary key that is not a null
Entity Integrity
79
This seek to make that data in a database table logically concise , organised, and consistent. It removes redundant data and improves the integrity and availability of database
Database Normalisation
80
Normalisation has three rules called Forms. What are these?
First Normal Form(1NF)- Divide data into tables Second Normal Form (2NF) - Move data that is partially dependent on the primary key to another table Third Normal Form (3NF) - Remove data that is not dependent on the primary key
81
The results of database query
Database View
82
This contains a description of the database tables
Data Dictionary
83
A data about data
Metadata
84
A critical data dictionary component which describes the attributes and values of the database table
Database Schema
85
\_\_\_\_\_\_ is a log of all database transactions
Database Journal
86
\_\_\_\_ mirrors live database., allowing simulataneous reads and writes to multiple replicated databases by clients
Database Replication
87
Its similar to a replicated database but all changes is made to a primary database, but clients do not access this. It serves as a live data backup of the primary
Shadow Database
88
Is a large collection of data may store even petabytes (1000) terabytes of data
Data Warehouse
89
This is use to search for patterns in a data warehouse. Commonly sought patterns includes signs of fraud
Data Mining
90
The science of programming electronic computers to think more intelligently, sometimes mimicking the ability of mammal brains
Artificial Intelligence
91
Simulate neural networks found in humans and animals
Artificial Neural Networks
92
Creates Random Programs and assigns them a task of solving a problem
Genetic Programming
93
Is a form of aritificial intelligence that uses knowledge base and inference engine
Expert System
94
Is a form of artificial intelligence normally use to identify spam
Bayesan Filtering
95