Tag: Integrity

  • CIA Triad

    CIA Triad

    The CIA Triad is a fundamental cybersecurity model that encompasses three key principles for protecting information systems and data: Confidentiality, Integrity, and Availability. This model provides a straightforward framework for designing security controls and assessing risks, ensuring that information remains protected, accurate, and accessible when needed. These principles guide organizations in securing their systems, responding to threats, and managing data protection across various environments.

    Confidentiality

    Confidentiality is the principle of protecting information from unauthorized access, use, or disclosure. It ensures that data is accessible only to individuals who have been explicitly granted permission to view or handle it. This protection applies whether the data is stored, processed, or transmitted. 

    To maintain confidentiality, organizations store data in secure locations and use access controls such as passwords, file permissions, encryption, and authentication systems. They implement policies and technical safeguards to prevent sensitive information from being accessed by unauthorized users, accidentally exposed, or intentionally leaked. 

    Overall, confidentiality ensures that private or sensitive data remains “hidden” from unauthorized users, keeping it safe in a controlled, secure environment.

    Example

    Access is restricted so that only the file owner can read and write the file.

    chmod # change file permissions command
    600 # owner read/write only, no permissions for group or others
    file.txt # target file to apply permissions

    chmod 600 file.txt

    Integrity

    Integrity is the principle that ensures data remains accurate, complete, and trustworthy throughout its lifecycle. It means that information should not be altered, deleted, or manipulated by unauthorized users, whether intentionally or accidentally. When data integrity is maintained, users can trust that the information is correct and consistent. 

    To protect integrity, systems employ controls such as permissions, checksums, hashing, audit logs, and version control. These mechanisms help detect or prevent unauthorized changes, ensuring that any data modifications are tracked and approved. 

    Overall, integrity guarantees that data remains reliable and unchanged unless properly authorized, making it trustworthy for decision-making and operations.

    Example

    A hash value is generated to verify that the file contents have not changed..

    sha256sum # command to compute SHA-256 hash of a file
    message.txt # target file whose integrity is being checked

    sha256sum message.txt

    Availability

    Availability is the principle that ensures data and systems are accessible to authorized users whenever necessary. This means that information, applications, and services should be reliably accessible without unnecessary delays or downtime. 

    To maintain availability, organizations implement measures such as backups, redundancy, failover systems, load balancing, and disaster recovery plans. These controls ensure that even if hardware fails, networks go down, or unexpected incidents occur, users can still access the data they are authorized to use. 

    Overall, availability ensures that information is readily accessible to the right people at the right time, supporting continuous, reliable operations.

    Example

    The status of a web service is checked to ensure it is running and available for users.

    systemctl # systemd command to control and manage services
    status # check the current state of a service
    apache2 # the Apache web server service being checked

    systemctl status apache2

    Authenticity

    Authenticity is the principle that guarantees data, users, or systems are genuine and verifiable as coming from a trusted and legitimate source. It ensures that information has not been falsified or impersonated and that communication or data originates from the claimed sender.

    To maintain authenticity, systems employ various methods such as digital signatures, certificates, multi-factor authentication, cryptographic keys, and identity verification protocols. These mechanisms help validate identities and ensure that interactions between users and systems are trustworthy.

    Overall, authenticity enables you to trust the source of the data or user you are interacting with, preventing impersonation and the spread of fake or misleading information.

    Example

    A digital signature is verified to confirm the sender’s identity.

    gpg # GNU Privacy Guard tool used for encryption and signature verification
    –verify # option to verify a digital signature
    signed_message.txt.sig # signature file used to confirm authenticity
    message.txt # original file being verified against the signature

    gpg --verify signed_message.txt.sig message.txt

    Non-repudiation

    Non-repudiation is a security principle that guarantees an individual or system cannot deny having performed a specific action. It provides proof of both origin and integrity, allowing actions such as sending messages, approving transactions, or modifying data to be reliably attributed to a specific actor.

    To achieve non-repudiation, systems employ mechanisms like digital signatures, cryptographic keys, audit logs, timestamps, and secure authentication records. These tools generate verifiable evidence that a particular user or system executed a specific action and that the action has not been altered afterward.

    Overall, non-repudiation ensures accountability by making it impossible for someone to credibly deny their actions within a system.

    Example

    A digital signature is created to prove who signed the file.

    gpg # GNU Privacy Guard tool for encryption and signing
    –sign # create a digital signature to prove authorship and ensure integrity
    message.txt # file being signed to provide proof of origin and non-repudiation

    gpg --sign message.txt