sth to rem Flashcards
(562 cards)
Atomicity
Isolation
Consistency
Durability
Atomicity – Transaction must be rolled back if not complete (committed).
Isolation – One transaction must complete before other can modify the same data.
Consistency – Transactional changes must ensure that the DB is consistent to the rules (unique primary key etc.)
Durability – Transactions once committed must be durable. Backups such as transaction logs ensure durability.
Concurrency
Lost Updates
Dirty Reads
Concurrency – enables users to lock the database to prevent changes by others during a transaction.
Lost Updates – two different processes make updates to the DB without being aware of each others transactions causing errors. Isolation solves this.
Dirty Reads – Process reads from a transaction that did not commit. Atomicity solves this.
Polyinstantiation
Polyinstantiation –tuple’s having multiple values with identical primary keys based on Security Clearance, to prevent lower-level inference attacks.
Cell Suppression
Cell Suppression – Hide individual fields based on security clearance.
Aggregation
Aggregation – Use access to multiple low-level database to gain information. Basically, person asks every question, receives every answer and thus gains information. (No deduction needed) (One DB has Employee ID and name, other has Employee ID and Salary. Aggregation allows to identify Salary of each employee)
Inference
Inference – speculation of information based on some information. (Weapon shipment increase in DB records can infer a possible mission)
Referential Integrity
Semantic Integrity
Entity Integrity
Referential Integrity – every foreign key matches a candidate key in the parent table.
Semantic Integrity – each column attribute value is consistent with the attribute data type. (Date in date column)
Entity Integrity – every tuple has a primary key which is unique and not NULL
Software Escrow Agreement
Software Escrow Agreement
Archive Source code with a third-party repository, to protect the customer in case the software vendor goes out of business..
Change Management Process
Request Control: Organized framework for users to request modifications, managers conduct cost/benefit analysis and developers prioritize tasks.
Change Control: Framework for multiple developers to develop and test a solution before rolling into production.
Quality Control restrictions
Documenting code changes
Restrict new code to minimize security
Develop tools for deployment of change.
Release Control: Review code before release. Review includes:
Remove any backdoors.
Approval of change
User Acceptance Testing
Configuration Control: Ensures that changes to software versions are made in accordance with change control and configuration management process.
Updates can only be made from authorized distributions.
Configuration Management Process
Configuration Identification: Documentation of all software configuration within organization.
Configuration Control: Configuration changes follow change management.
Configuration Accounting: Track all authorized configuration changes.
Configuration Audit: Configuration documentation meets actual configuration
SEI SW-CMMI
Measures Software Development Maturity.
Required by US Agencies and Contractors
Initial: Processes are chaotic, unpredictable, poorly controlled, reactive.
Repeatable: Processes are characterized for projects but reactive. Basic lifecycle mgmt.
Defined: Processes are defined (written) and proactive.
Quantitatively Managed: Processes are defined and measured.
Optimizing: Processes are measured and improved.
Defect Prevention, Technology Change Management, Process Change Management
SEI IDEAL
IDEAL model for software development and Change management.
Initiating: Business reasons behind change, approval/support, requirements in place.
Diagnosing(診斷): Engineers analyze current state and make recommendations.
Establishing: Recommendations are developed into plan of actions.
Acting: Develop, test, refine and implement solution.
Learning: Continuous analysis of desired goals, new plans for achieving goals.
AGILE
Developed in response to rigid Development processes like Waterfall.
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Sashimi
Overlapping Waterfall Model.
Steps overlap, leading to faster-integrated development cycle.
NIST SP 800-14
Generally Accepted Principles and. Practices for Securing Information. Technology Systems Initiation Development/ Acquisition Implementation Operation / Maintenance Disposal
SECURE SOFTWARE DESIGN
Fail-Open
Fail-Open: bypasses security at failure to allow operations to continue.
SECURE SOFTWARE DESIGN
Fail-Secure
Fail-Secure: puts system in high-security state at failure and does not allow operations until administrator diagnoses and resolves problems.
Database Backup
Electronic Vaulting
Electronic Vaulting: Remote site database backup using bulk transfers. Smaller time to backup to remote site, then sending tape.
Significant delay to recover as backup has to be obtained from vault and then restored.
Database Backup
Remote Journaling
Remote Journaling: Transaction logs backed up remotely. Some delay (ex.hourly), technicians retrieve logs transaction logs and apply to production DB.
Database Backup
Remote Mirroring
Remote Mirroring: Live Backup via copying any changes to the production database to the backup. (also called Shadowing)
No delay. Can be migrated as is.
Recovery Types
Trusted Recovery
Trusted Recovery: System is as secure as before failure or crash.
Recovery Types
Manual Recovery
Manual Recovery: If system does not fail in a secure state, an admin has to manually implement security before recovery.
Recovery Types
Automated Recovery
Automated Recovery: System performs trusted recovery activities against failure. Ex: RAID.
Recovery Types
Automated Recovery with Undue Loss
Automated Recovery with Undue Loss: System performs trusted recovery activities against failure, but also protects specific objects against loss.