CISSP Domain 8 Flashcards
Aggregate Vs Inference
Aggregate requires multiple small pieces
Inference requires a single data point
Waterfall method
Very linear, each phase leads
Once phase done can’t go back
Sequential steps
Can be improved by adding validation and verification
Type of program language
Machine language
Assembly language
High level language
Machine language
Man had to manually calculate and allot memory address
Complete binary
Assembly language
Users mnemonic like ADD, PUSH, POP instead of binary codes
Uses assemblers to convert assembly codes to binary codes
High level language
Uses abstract statements like Excel IF - Then- ELSE function
It’s processor independent
Code written in high level language can be converted to machine language using compiler and interpreters
4 Gen - Very high level language
More abstraction
Natural language
Eliminate need of programming expertise like AI
Assemblers Vs Compilers Vs Interpreters
No matter what language is used institutions and data have to end up in binary for processor to understand
Interpreter - Convert high level to machine level code
What is libraries used for?
Software libraries contains reusable code
Integrated development environment
Environment where they can write their code, write it, test it, debug it and compile it
What happens in OOP ? And how does it work?
Devloper doesn’t develop each and every object
Works with class, subject and objects
Class - Set of attributes associated with it, when an object is generated, it inherits these attributes example: Furniture
From security pov provides a black box
Polymorphism
Characteristic of an object that allows is to respond with different behaviours to same message or method because of change in external conditions
Properties of OOP
Encapsulation
Messaging - Communication between objects
Reusability
Abstraction
Cohesion
How many different types of tasks a module carry out
Should high in nature
Coupling
How much interaction one module requires to carry out it’s tasks
Should be low in nature
Steps in OOP ( FYI)
Devloper creates a class which outlines specifications
Object is initiated it inherits these attributes
User inputs in a software - Addition
Objects is initiated
Object A interacts with B using API
Input validation - Limit check and Escaping input
Remove risky inputs
Always occurs on the server side
Properties of session management
Cookies to be secure
Expire after a certain time and user to authenticate again
Identifiers to be long and randomly generated
Error handling
Devloper love long detailed error messages but those might contain sensitive info hence disable it
SDLC steps
Conceptual definition
Functional requirements determination
Control specifications devlopment
Design review
Coding
Code Review walk through
System test review
Maintanence and change management
Conceptual definition
Project charter - Top level understanding
Designers identity classification of data to be processed
Functional requirements determination
How parts of system interoperate
Characteristics:
Input
Behaviour
Output
Control specifications determination
Analyse system from security perspective
- Access control
- Confidentiality using data encryption
- Audit trail - Accountability
- Availability and fault tolerance