Chapter 8: Software Development Security Flashcards
Abstraction
Information Hiding - focus on big picture….
aggregation
pulling bits of different data together then make an assumption via inference…
Agile Model
most common
very flexible in nature
requirements to change throughout. good for when projects requirements change a lot.
Pros:
- fewer defects
- greater flexibility
- immediate feedback
cons:
- Less Documentaion
- Less focus on system design.
Atomicity
A transaction is fully complete or it is rolled back All or Nuthin looking for the “commit message”
Attributes - Object Oriented Technology
Descriptors for each class
auditing
create audit policy to track actions to a subject.
audits can be use to :
- ensure policies are being followed/are effective
- marke sure hat individual user accounts aren’t unntentinoally being allowed to accumulate rights/permissions.
- check the accuracty and completeness of transactions that are authorized
- privileged actions are restriced to authorized personnnel.
Backdoor
Usually created by software developers for an emergency entry into a system. Example may be a hotkey in the event that a password is not available for access. Obviously can be used by anyone with such knowledge to gain access into the system. A trapdoor is rather created via malicious activity.
brocken auth & session mgmt
applications fuctions related to authentication and session managment are often no implemented correctly.
Capability Maturity Model Integrated - CMMI
from carnegie mellon an organization’s project management’s process can be ranked on their maturity and can be ranked 5 levels. 5 best most orgs want a level3 “i really don’t mind oranges” 5 levels: Initial-caotic and heroic effort Repeatable- trying to get processes going…time, scop Defined: Project management office Managed- good understanding of process and product Optimized - associated with Kiazen, CPI continue process improvent.
Cardinality
the number of rows in a relation one to many (such as customer to orders made)
CGI
common gateway interface
does the input validation.
Classes - Object Oriented Technology
Defines attributes, characteristics, and behaviors
Code Injection
Looking at language of database and issuing commands.
Entering malicous code into webforms. no brackets, drop-table..input validation
make sure no data control language entered.
data type… only specific data
drop downs etc…
Cohesion
Singleness of purpose - you want HIGH cohesion both have H’s :)
Consitencey
Enforce any rules that are system defined or Administrator define
Coupling
the dependency between modules - sharing same code for other apps. LOOSE coupling both have L’s in them
CSRF
Cros site request forgery
takes advantage of a webite’s trust in a user
two sessions going on across user’s computer.
Data Marts
Often regional collection of info from database
Data Mining
process of pulling info from data warehouse by utilizing meta-data. police mining info about perps…
Data Warehouse
collection of information from data marts….think of meth..example.. law enforments pull mull all store info into warehouse
Database Design - ACID test
Atomicity Consistency Isolation Durability
DB Aggregation & Inference
a way of gathering information and coming to a conclusion based on that. code injection is only computer based
Degree
the number of columns in a relation
Distributes Databases
Client-server type of DB located on more than one server distributed in several locations Synchronization accomplished via a two-phase commit or replication methods Data accessible in a single search function despite separate location DNS Data Base Is an example
Due Diligence
is reseach
due care is action… enact policies etc…
Durability
You can’t roll back a transaction you got to start over
elite
high level database peeps…
Entity Integrity
Primary Key field can’t be null
Foreign Key
Primary key from one table appears in a secondary table
Hacker
Someone that is very good with computers…
white hat hackers - PEN testers
black hat - ill intent
grey hat - in the middle…
Hierarchical Database
Stores related info in a tree-like fashion. Info traced from major group to sub-group Predetermined access paths to data data traced through parents (hierarchy) “inverted tree”