Computer Security: Principles and Practice DR TAGWA ISMAIL KHALIFA Chapter 1 overview Computer Security Concepts Threats, Attacks, and Assets Security Functional Requirements Fundamental Security Design Principles Attack Surfaces and Attack Trees Computer Security Strategy Learning Objectives 1. Describe the key security requirements: CIA Triad. 2. Discuss types of security threats and attacks. 3. Summarize functional requirements and design principles. 4. Explain the concepts of attack surfaces and attack trees. 5. Understand aspects of a comprehensive security strategy A definition of computer security Computer security: Computer Security is defined as the measures and controls used to ensure the confidentiality, integrity, and availability of information system assets. This includes protecting hardware, software, firmware, and information while it is being processed, stored, or communicated NIST 1995 Three key objectives (the CIA triad) Confidentiality Data confidentiality: Assures that confidential information is not disclosed to unauthorized individuals Privacy: Assures that individual control or influence what information may be collected and stored Integrity Data integrity: assures that information and programs are changed only in a specified and authorized manner System integrity: Assures that a system performs its operations in unimpaired manner Availability: assure that systems works promptly and service is not denied to authorized users Other concepts to a complete security picture Authenticity: the property of being genuine and being able to be verified and trusted; confident in the validity of a transmission, or a message, or its originator Accountability: generates the requirement for actions of an entity to be traced uniquely to that individual to support nonrepudiation, deference, fault isolation, etc Non-repudiation: Ensuring that a sender cannot deny sending a message. Levels of security breach impact 1.Low: the loss will have a limited impact, e.g., a degradation in mission or minor damage or minor financial loss or minor harm 2.Moderate: the loss has a serious effect, e.g., significance degradation on mission or significant harm to individuals but no loss of life. 3. High: the loss has severe or catastrophic adverse effect on operations, organizational assets or on individuals (e.g., loss of life) Examples of security requirements: Confidentiality 1.Access Control: Only authorized users can view sensitive data. Example: Only HR staff can access employee salaries. 2.User Authentication: Users must verify their identity before accessing data. Example: Login using username and password or biometrics. 3.Data Encryption: Protect data by converting it into unreadable form. Example: Encrypt data using protocols like SSL/TLS when transmitting. 4.Data Classification: Classify data based on sensitivity levels. Example: Public, Internal, Confidential, Top Secret. 5.Secure Communication: Ensure data is protected during transmission. Example: Use HTTPS instead of HTTP. 6.Session Management: Automatically log out inactive users. Example: Banking apps log out after a few minutes of inactivity. 7.Least Privilege Principle: Users get only the minimum access they need. Example: A student can view grades but not access system settings. 8.Data Masking: Hide sensitive parts of data when displayed. Example: Show credit card as **** **** **** 1234. Examples of security requirements: Integrity 1. Data Modification Control: Only authorized users can modify data. Example: Only doctors can update patient medical records. 2. Input Validation: All user inputs must be validated before processing. Example: Prevent entering invalid or malicious data into forms. 3.Data Consistency: Data must remain consistent across all systems and databases. Example: A bank balance should match in all related tables. 4.Audit Trails: All changes to critical data must be logged. Example: Record who changed a file, when, and what was changed. 5.Error Detection Mechanisms: Use checks like hashes or checksums to detect data corruption. Example: File integrity verification using hash values. 6.Transaction Management: Ensure operations are completed fully or not at all (Atomicity). Example: In banking, money transfer must either fully succeed or fail completely. 7.Access Control: Restrict write/edit permissions based on user roles. Example: Students can view grades but cannot modify them. 8.Backup and Recovery: Regular backups to restore correct data if corruption occurs. Example: Restore database after accidental or malicious modification. Examples of security requirements: Availability 1.System Uptime: The system must be available most of the time (e.g., 99.9% uptime). Example: E-learning platforms should be accessible 24/7. 2.Backup and Recovery: Regular backups to restore data in case of failure. Example: Restore system quickly after a crash or data loss. 3.Redundancy: Use duplicate systems/components to avoid single points of failure. Example: Multiple servers handling the same service. 4.Disaster Recovery : PlanA clear plan to recover from major failures. Example: Recover services after fire, flood, or cyberattack. 5.Load Balancing: Distribute traffic across multiple servers. Example: Prevent system crash during high user demand. 6.Fault Tolerance: System continues working even if part of it fails. Example: One server fails, others keep running. 7.Protection Against : AttacksDefend against attacks that disrupt service. Example: Prevent DDoS attacks that overload servers. 8.Maintenance and Updates: Regular updates without long downtime. Example: Schedule maintenance during low-usage times. Challenges of computer security 1. Computer security is not simple At the beginning, security requirements seem easy because they are expressed in simple terms like: keeping data secret These words are easy to understand, but: The methods used to achieve them are complicated They require careful design and thinking 2.When designing any security system or algorithm, you must always think about possible attacks. Explanation: Attackers don’t always attack in obvious ways. Sometimes they think differently and find hidden weaknesses. A system may look secure, but there could be unexpected vulnerabilities. Example:A login system may be secure against password guessing, but vulnerable to SQL Injection. 3. unexpected attacks, security solutions are often complex and not intuitive. Explanation: • Security mechanisms are not always simple or obvious. • Sometimes the solution looks complicated or strange, but it exists for a reason. • You must consider all possible threats before deciding how to secure a system. Example: Using multi-factor authentication (password + code) may seem complicated, but it protects against multiple attack types. 4. Security Mechanisms Placement Designing security mechanisms is not enough We must decide where to apply them 1. Physical Placement: Refers to location in the network . Example :Firewalls at network entry points 2. Logical Placement: Refers to layers in system architecture Example: • Security in TCP/IP layers. • Encryption in transport layer • Authentication in application layer 5.Security Mechanisms & Secret Information Security mechanisms are not just algorithms or protocols they also depend on secret information. Participants must have confidential data Example:Encryption keys. Key Challenge Raises important questions : • How are secrets created? • How are they distributed? • How are they protected? 6. A battle of wits between attacker / admin The Attacker: Needs to find only a single weakness to succeed. The Designer: Must find and eliminate all weaknesses to achieve perfect security. This creates a fundamental imbalance in security efforts. 7.It is not perceived on benefit until fails Security is often invisible when it is working correctly The value of protection only becomes apparent after a crisis Key Challenge: Justifying costs for a benefit that is only "seen" during a failure 8.Requires constant monitoring Security is not a one-time task; it requires: • Regular monitoring • Constant supervision This is essential to detect and respond to threats in real-time. 9. Security as an Afterthought Security should be an integral part of the entire design process. Proactive Integration: Addressing threats during the initial planning and architecture stages. The Benefit: Systems designed with security in mind are more robust, cheaper to maintain, and harder to breach than those with "bolted-on" security. 10.Security as an Impediment Many users and security administrators view strong security as an impediment A model for computer security Concept of a System Resource (or Asset). Anything users and owners wish to protect. Categories of Assets: Hardware: devices, data processing, storage, and communication devices. Software: Operating systems and applications. Data: Files, databases, and security-related data (e.g., password files). Communication Facilities & Networks: LAN/WAN links, bridges, routers, etc. System Vulnerabilities Definition: Weaknesses in system resources or network assets. The system can be corrupted Effect: The system does the wrong thing or provides incorrect answers. Computer security terminology 1.Adversary (Threat Agent): An entity that attacks or represents a threat to a system. 2.Asset (System Resource): Anything of value within the system (Data, Hardware, Software, Services, or Facilities) that requires protection. 3.Attack: Any kind of malicious activity that attempts to Collect information ,Disrupt or Deny service. 4. Countermeasure: Any action, device, or procedure that reduces a threat or vulnerability. 5.Risk: The probability that a particular threat will exploit a vulnerability, resulting in a loss. 6. Security Policy: A set of rules and practices that regulate how an organization protects its critical resources. 7. Threat: A potential for a security violation, a possible danger that might exploit a vulnerability. 8.Vulnerability: weakness in a system’s design, implementation, or management that could be exploited. Security concepts and relationships Real-World Example: Online Banking System 1.The Asset (What we protect): The User's Bank Account Balance and personal data. 2. The Vulnerability (The weakness): The user is using a very weak password (e.g., "123456"). 3.The Threat (The danger): A Hacker using a "Brute Force" tool to guess common passwords. 4.The Attack (The action): The hacker runs the tool against the bank's login page specifically targeting that user's account. 5.The Risk (The probability & impact): There is a High Risk because the password is easy to guess, leading to the potential theft of all funds in the account. Applying a Countermeasure To reduce the Risk, we implement a Countermeasure: • Action: Enforcing Multi-Factor Authentication (MFA). • Result: Even if the hacker guesses the password (exploits the vulnerability), they cannot access the account without the second code. Types of Attacks 1. Active Attack Change or damage the system Examples: • Modifying student grades . • Deleting files from a server . • Shutting down a website (DoS attack) There is a change in data or system behavior 2. Passive Attack Monitor or steal information without changing anything. Examples: • Eavesdropping on Wi-Fi . • Stealing passwords silently . The attacker only observes, no changes are made Classification Based on Source 1.Inside Attack Comes from someone inside the system (has access) Example: • An employee misusing confidential data. Dangerous because the attacker already has permission. 2. Outside Attack Comes from outside the system (no authorized access). Examples: • A hacker on the internet Cybercriminals or hostile organizations Threat and attacks Type of threat consequences Unauthorized disclosure: threat to confidentiality . Deception: threat to integrity. Disruption: threat to integrity and availability. Usurpation: threat to integrity. Theats and Assist Examples of threats Security functional requirements (Technical measures) 1.Access control identification & authentication. system & communication protection. system & information integrity. 2.Awareness & training Ensuring managers and users are aware of security risks and laws. Training personnel to carry out their security-related duties. 3.Audit and Accountability: Creating and retaining audit records to monitor and investigate unauthorized activity. Tracing actions to specific users so they can be held accountable. 4. Security Assessments: Periodically assessing security controls to determine effectiveness. Implementing action plans to correct deficiencies and reduce vulnerabilities. 5. Configuration Management: Establishing baseline configurations (Hardware, Software, Firmware). Enforcing security settings throughout the system development life cycle. 5.Contingency Planning: Establishing plans for emergency response and backup operations. Ensuring Availability and continuity of operations after a disaster. Fundamental security design principles Despite years of research, it is still difficult to design systems that comprehensively prevent security flaws But good practices for good design have been documented (analogous to software engineering) good practices 1. Economy of mechanism. 2. fail-safe defaults. 3. complete mediation. 4. open design. 5. separation of privileges. 6. lease privilege. 7. least common mechanism. 8. psychological accountability. 9. Isolation. 10. Encapsulation. 11. layering. 12. least astonishment good practices Economy of mechanism: the design of security measures should be as simple as possible Simpler to implement and to verify Fewer vulnerabilities Fail-safe default: access decisions should be based on permissions; i.e., the default is lack of access Complete mediation: every access should checked against an access control system Open design: the design should be open rather than secret (e.g., encryption algorithms) good practices (con) Isolation Public access should be isolated from critical resources (no connection between public and critical information) Users files should be isolated from one another (except when desired) Security mechanism should be isolated (i.e., preventing access to those mechanisms) Encapsulation: similar to object concepts (hide internal structures) Modularity: modular structure good practices (con) Layering (defense in depth): use of multiple, overlapping protection approaches Least astonishment: a program or interface should always respond in a way that is least likely to astonish a user good practices (con) Separation of privilege: multiple privileges should be needed to do achieve access (or complete a task) Least privilege: every user (process) should have the least privilege to perform a task Least common mechanism: a design should minimize the function shared by different users (providing mutual security; reduce deadlock) Psychological acceptability: security mechanisms should not interfere unduly with the work of users Attack surfaces Attack surface: the reachable and exploitable vulnerabilities in a system Open ports Services outside a firewall An employee with access to sensitive info … Three categories Network attack surface (i.e., network vulnerability) Software attack surface (i.e., software vulnerabilities) Human attack surface (e.g., social engineering) Attack analysis: assessing the scale and severity of threats Attack trees A branching, hierarchical data structure that represents a set of potential vulnerabilities Objective: to effectively exploit the info available on attack patterns published on CERT or similar forums Security analysts can use the tree to guide design and strengthen coiuntermeasures An attack tree Computer security strategy An overall strategy for providing security Policy (specs): what security schemes are supposed to do Assets and their values Potential threats Ease of use vs security Cost of security vs cost of failure/recovery Implementation/mechanism: how to enforce Prevention Detection Response Recovery Correctness/assurance: does it really work (validation/review) Computer Security Losses Security Technologies Used Summary Security concepts Terminology Functional requirements Security design principles Security strategy
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )