diff --git a/package-lock.json b/package-lock.json index 0b0adc4..fb82ad7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,6 +23,7 @@ "react-markdown": "^9.0.1", "remark-gemoji": "^8.0.0", "remark-gfm": "^4.0.0", + "remark-mdx-disable-explicit-jsx": "^0.1.0", "sass": "^1.81.0", "sharp": "^0.33.5", "winston": "^3.17.0" @@ -8415,6 +8416,29 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", @@ -13562,6 +13586,129 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/remark-mdx-disable-explicit-jsx": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/remark-mdx-disable-explicit-jsx/-/remark-mdx-disable-explicit-jsx-0.1.0.tgz", + "integrity": "sha512-NC7NUbu4bExZnsWDTJE3UhBRZujW3gyqMufhTHn2GHhZ5LetWzyieyuZerBPdSniLx4d7QKDbf+d3u/qmMGyaQ==", + "license": "MIT", + "dependencies": { + "@types/hast": "^2.3.4", + "unified": "^10.1.1", + "unist-util-visit": "^4.1.0" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/@types/hast": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", + "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx-disable-explicit-jsx/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/remark-parse": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", diff --git a/package.json b/package.json index 9806e64..b5967ca 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ "react-markdown": "^9.0.1", "remark-gemoji": "^8.0.0", "remark-gfm": "^4.0.0", + "remark-mdx-disable-explicit-jsx": "^0.1.0", "sass": "^1.81.0", "sharp": "^0.33.5", "winston": "^3.17.0" @@ -63,4 +64,4 @@ "tailwindcss": "^3.4.15", "typescript": "^5.6.3" } -} \ No newline at end of file +} diff --git a/src/pages/guides/_meta.ts b/src/pages/guides/_meta.ts index d034cea..3f06ac7 100644 --- a/src/pages/guides/_meta.ts +++ b/src/pages/guides/_meta.ts @@ -5,4 +5,5 @@ export default { 'software-composition-analysis': { title: 'Software Composition Analysis(SCA)', }, + iso: { title: 'ISO 27001' }, } diff --git a/src/pages/guides/iso.mdx b/src/pages/guides/iso.mdx new file mode 100644 index 0000000..6af05e3 --- /dev/null +++ b/src/pages/guides/iso.mdx @@ -0,0 +1,2338 @@ +--- +sidebar_position: 1 +--- + +### Table of Contents +| Control | DevGuard | Description | +| :----- | :---- | :---- | +| [A.8.1 User end point devices](#a81-user-end-point-devices) | ❌ | Devices that store, process, or access information must be protected. | +| [A.8.2 Privileged access rights](#a82-privileged-access-rights) | 🍋|The assignment and use of privileged access rights must be restricted and carefully managed.| +| [A.8.3 Information access restriction](#a83-information-access-restriction) |🍋 | Access to information and other related assets (such as documents, databases, and applications) must be controlled and restricted according to the established access policies.| +| [A.8.4 Access to source code](#a84-access-to-source-code) | 🍋 |Read and write access to source code, development tools, and software libraries must be appropriately managed.| +| [A.8.5 Secure authentication](#a85-secure-authentication) |❌| Secure authentication technologies and procedures must be implemented based on established access control policies and information access restrictions.| +| [A.8.6 Capacity management ](#a86-capacity-management) |🍋 |The use of resources must be monitored and adjusted to meet current and anticipated capacity requirements.| +| [A.8.7 Protection against malware](a87-protection-against-malware) | ❌| Protective measures against malware must be implemented and supported by appropriate user education.| +| [A.8.8 Management of technical vulnerabilities](#a88-management-of-technical-vulnerabilities) | ✔️ | Information regarding technical vulnerabilities in the used information systems must be gathered, the organization's exposure to these vulnerabilities must be assessed, and appropriate actions must be taken.| +| [A.8.9 Configuration management](#a89-configuration-management) | ✔️ | Configurations, including security configurations, for hardware, software, services, and networks must be created, documented, implemented, monitored, and reviewed.| +| [A.8.10 Information deletion](#a810-information-deletion) | ❌ | Data stored in information systems or on other storage media must be completely deleted when no longer required. This rule ensures that information is not kept longer than necessary, maintaining data security and confidentiality while avoiding risks.| +| [A.8.11 Data masking](#a811-data-masking) | ❌ | Data masking must be implemented in accordance with the organization's specific access control policy and other related policies, as well as business requirements, considering applicable legal regulations.| +| [A.8.12 Data leakage prevention](#a812-data-leakage-prevention) | ❌ | Measures to prevent data leaks must be applied to systems, networks, and all other devices that process, store, or transmit sensitive information.| +| [A.8.13 Information backup](#a813-information-backup) | ❌ | Backup copies of information, software, and systems must be created and regularly tested, according to the organization’s specific backup policy.| +| [A.8.14 Redundancy of information processing facilities](#a814-redundancy-of-information-processing-facilities) | 🍋 | Information processing facilities must be implemented with sufficient redundancy to meet availability requirements.| +| [A.8.15 Logging](#a815-logging) | ❌ | Logs that record activities, exceptions, errors, and other relevant events must be created, stored, protected, and analyzed.| +| [A.8.16 Monitoring activities"](#a816-monitoring-activities) | ❌ | Networks, systems, and applications must be monitored for anomalous behavior, and appropriate actions must be taken to evaluate potential security incidents.| +| [A.8.17 Clock synchronization](#a817-clock-synchronization) | ❌ | The clocks of information processing systems used by the organization must be synchronized with approved time sources.| +| [A.8.18 Use of privileged utility programs](#a818-use-of-privileged-utility-programs) | ❌ | The use of utility programs capable of overriding system and application controls must be restricted and strictly controlled.| +| [A.8.19 Installation of software on operational systems ](#a819-installation-of-software-on-operational-systems) | ❌ | Procedures and measures must be implemented to securely manage the installation of software on operating systems used in operational environments.| +| [A.8.20 Network security ](#a820-network-security) | ❌ | Networks and network devices must be secured, managed, and controlled to protect information in systems and applications.| +| [A.8.21 Security of network services](#a821-security-of-network-services) | ❌ | Security mechanisms, service levels, and service requirements for network services must be identified, implemented, and monitored.| +| [A.8.22 Segregation in networks ](#a822-segregation-in-networks) | ❌ | Groups of information services, users, and information systems must be separated within the organization's networks.| +| [A.8.23 Web filtering](#a823-web-filtering) | ❌ | Access to external websites must be controlled to reduce exposure to harmful content.| +| [A.8.24 Use of cryptography ](#a824-use-of-cryptography) | ❌ | Policies and rules should be defined and implemented for the effective use of cryptography, including the management of cryptographic keys.| +| [A.8.25 Secure development life cycle](#a825-secure-development-life-cycle) | ✔️ | Guidelines and rules should be established and applied for the secure development of software and systems to ensure security throughout the entire development life cycle.| +| [A.8.26 Application security requirements ](#a826-application-security-requirements) | ✔️ | Information security requirements must be defined, specified, and approved when developing or procuring applications.| +| [A.8.27 Secure System Architecture and Engineering Principles](#a827-secure-system-architecture-and-engineering-principles) | 🍋 | Principles for the secure development of information systems must be established, documented, and maintained. These principles should be applied to all development activities to ensure the security of information systems.| +| [A.8.28 Secure Coding ](#a828-secure-coding) | ✔️ | Secure coding principles must be applied to software development to ensure that the software is protected against potential vulnerabilities from the very beginning.| +| [A.8.29 Security Testing in Development and Acceptance](#a829-security-testing-in-development-and-acceptance) | ✔️ | Security testing processes must be defined and implemented in the development cycle to ensure that potential security gaps are identified and addressed early.| +| [A.8.30 Outsourced Development](#a830-outsourced-development) | ❌ | The organization must lead, monitor, and review activities related to outsourced system development to ensure that the outsourced development meets the internal security and quality requirements.| +| [A.8.31 Separation of development, test, and production environments](#a831-separation-of-development-test-and-production-environments) | 🍋 | Development, testing, and production systems should operate in separate environments, each properly secured to ensure that unauthorized changes are not made to the production systems and the integrity of the entire system is maintained.| +| [A.8.32 Change management](#a832-change-management) | ❌ | Changes to information processing facilities and information systems must undergo a structured change management process. This process ensures that changes are implemented in a controlled and transparent manner to avoid errors and security risks.| +| [A.8.33 Test information](#a833-test-information) | ❌ | Test data used for development, testing, or qualification processes must be treated with the same care as actual production data. It should be appropriately selected, protected, and managed to ensure the security and confidentiality of information and minimize the risk of data loss or misuse.| +| [A.8.34 Protection of information systems during audit testing](#a834-protection-of-information-systems-during-audit-testing) | ❌ | During audit tests and other security reviews of operating systems, the tests must be carefully planned and aligned with the appropriate management level. The goal of this rule is to ensure that audits do not create security gaps or disturbances in the operation of systems, and that the protection of the tested information is guaranteed at all times.| + + + + + + +
+ + +### A.8.1 User end point devices + + + +

Explanation:

+ + +The Rule refers to user end devices such as laptops, smartphones, tablets, or other devices that are connected to an information system. + + + +

What does this mean in practice?

+ + + +**Protection of stored information** +Data on the devices must be protected from unauthorized access. This can be achieved through: +- Encryption of data (e.g., disk encryption) +- Use of secure passwords or biometric authentication (e.g., fingerprint, face recognition) + +**Protection during information processing** +When devices process data (e.g., opening sensitive documents), this data must not be left unprotected. Examples include: +- Devices should be regularly updated with security patches. +- Security software (antivirus, firewall) should be enabled. + +**Protection when accessing information** +End devices that access central systems or cloud services must have secure connections: +- Secure connections (e.g., VPN, TLS) +- Access controls and authentication measures + +**Loss or Theft** +Measures to protect information in case of loss or theft: +- Remote wipe functions to delete data remotely. +- GPS tracking to locate devices. + +**Policies and Training** +Users should be aware of and follow policies for securely handling their devices. Training on secure behaviors (e.g., avoiding public Wi-Fi without VPN) is important. + +

Objective of this rule:

+ +The rule aims to ensure that all information stored, processed, or accessed on user end devices is protected from threats such as loss, theft, or cyberattacks. + +
+ +
+ + + +### A.8.2 Privileged access rights + + + +

Explanation:

+ +The Rule refers to privileged access rights within an information system. +Privileged access rights are special permissions that allow a user to make extensive changes to the system or access sensitive data. + + +

What does this mean in practice?

+ + + +**Restricted Assignment** +Privileged access rights should only be granted to individuals who absolutely need them to perform their tasks. This includes, for example, administrators or individuals who have access to particularly sensitive areas of a system. +- Assign rights only to trusted employees. +- Follow the principle of least privilege (only grant rights that are absolutely necessary). + +**Control and Management** +The management of privileged rights must be regularly reviewed and documented to ensure their correctness and justification. For example: +- Monitoring and logging the use of privileged rights. +- Regularly reviewing access rights to revoke outdated or unnecessary privileges. + +**Risk Minimization** +To prevent abuse or errors, privileged access rights should be minimized. Measures include: +- Applying the principle of least privilege: Grant only the minimal rights necessary for a task. +- Using temporary privileges: Assign rights only for a specific time or task, then revoke them automatically. + +**Use of Specialized Access Management Systems** +Access to privileged rights should be controlled through specialized access management systems. These systems can ensure that only authorized individuals gain access to privileged functions. +- Use multi-factor authentication (MFA) for access to privileged rights. +- Log the use of privileged rights to detect and trace misuse or errors. + +**Training and Awareness** +Individuals granted privileged access rights should receive training to understand the responsibilities and security risks associated with these rights. + + +

Objective of this rule:

+ + +The rule aims to ensure that privileged access rights are not misused and are only used by those who genuinely require them. This minimizes risks such as unauthorized access to sensitive data or unintended system changes. + +
+ + +
+ + +### A.8.3 Information access restriction + + + +

Explanation:

+ +This Rule refers to the restriction of access to information and other related assets that should be controlled according to established, topic-specific access policies. + + +

What does this mean in practice?

+ + + +**Established Access Control Policies** +There must be a clear access policy for each type of information and resource. These policies define who can access what information and under what conditions. +- Policies should be created based on the protection needs of the information (e.g., confidentiality, integrity, availability). +- They should include specific rules for different types of information (e.g., personal data, financial data, trade secrets). + +**Access Permissions Based on Necessity** +Access should be granted according to the need-to-know principle: Only those who need the information to perform their work should be granted access. +- Confidential data should be accessible only to authorized users. +- Access should be restricted by time and location, depending on necessity. + +**Access Control on Different Levels** +Access can be restricted at various levels within the system and organization: +- **Physical Level**: Access to server rooms or hardware. +- **Technical Level**: Access to databases, applications, and files. +- **Organizational Level**: Defining roles and responsibilities to determine who within the organization can view or edit certain data. + +**Access Monitoring and Logging** +It should be monitored and logged who accesses which information to ensure unauthorized access can be detected and stopped. +- All access attempts should be recorded in logs. +- Irregularities, such as unusual access to sensitive data, should be immediately reviewed. + +**Protection of Assets** +In addition to information, other related assets (such as software, hardware, or databases) should also be protected. Access to these assets must be controlled according to the same principles. + +**Regular Review of Access Rights** +Access rights should be regularly reviewed to ensure they remain justified: +- Remove access rights for users who no longer need the information (e.g., when an employee leaves). +- Adjust permissions when requirements or responsibilities change. + + +

Objective of this rule:

+ + +The rule aims to ensure that access to information and other assets is controlled in a way that guarantees data protection and information security. This minimizes the risk of unauthorized access or data loss and ensures that only authorized individuals can access confidential or sensitive information. + +
+ + +
+ + +### A.8.4 Access to source code + + + + +

Explanation:

+ +This Rule refers to access to source code and the management of development tools and software libraries necessary for software development. + +

What does this mean in practice?

+ + + +**Access Control for Source Code** +Source code is the backbone of any software development and often contains sensitive information about the functionality of a system. Access to the source code should be strictly controlled: +- Only authorized developers and team members should have access to the source code. +- Read access allows users to review the code, but write access (i.e., making changes) should be granted only to those who genuinely need it. + +**Access to Development Tools** +Development tools, such as integrated development environments (IDEs), version control systems (e.g., Git), debugging tools, and build tools, enable developers to create and maintain software. Access to these tools should also be controlled: +- Only authorized users should be able to install and use development tools. +- Access to critical tools that directly impact or create code should be limited and monitored. + +**Access to Software Libraries** +Software libraries and frameworks used by developers to integrate functions or interfaces should only be accessible to those who need them for their work: +- Access rights to libraries should be managed in accordance with development policies and specific project requirements. +- Permissions for libraries can also be restricted by version, depending on what is required for the development environment. + +**Use of Version Control Systems** +Source code should be managed through a version control system (e.g., Git, Subversion). These systems provide a structured way to track changes and control who can make modifications: +- Branching and pull request workflows can be used to review changes before integrating them into the main code. +- Logging and documenting changes are crucial to ensure traceability. + +**Secure Storage of Source Code** +Source code should be stored in a secure repository: +- Access to the repository should be regulated by authentication (e.g., username/password, multi-factor authentication) and authorized user groups. +- Source code should be stored in encrypted form and regularly backed up to prevent data loss or theft. + +**Access Based on the “Need-to-Know” Principle** +Access to source code and development tools should follow the need-to-know principle, meaning only individuals actively working on the development or maintenance of specific code should have access: +- Development teams should be organized into distinct groups to control access based on their respective areas of responsibility (e.g., front-end developers, back-end developers). + +**Monitoring and Logging Access** +Access to source code and associated tools should be continuously monitored and logged: +- All access and changes should be logged to detect misuse and ensure accountability. +- Irregularities, such as unauthorized access or unusual changes, should be promptly investigated. + + +

Objective of this rule:

+ + +The rule aims to ensure that source code, as well as the tools and libraries required for development, are used only by the right people at the right times. This preserves the integrity of the code and minimizes the risk of errors, security vulnerabilities, or misuse. + +
+ + +
+ + +### A.8.5 Secure authentication + + + +

Explanation:

+ +This Rule refers to the secure authentication of users and systems necessary to control access to information and systems. + + + +

What does this mean in practice?

+ + + +**Secure Authentication Methods** +Secure authentication ensures that only authorized users can access information systems. Common secure authentication technologies include: +- **Password Security**: Passwords should be complex and sufficiently long (e.g., a combination of uppercase and lowercase letters, numbers, and special characters). +- **Multi-Factor Authentication (MFA)**: Users must use more than one factor for identification, such as a password combined with a token or biometric factor (e.g., fingerprint, facial recognition). +- **Biometric Methods**: Use of fingerprints, facial recognition, or iris scanning as a second layer of authentication. +- **One-Time Passwords (OTP)**: Use of temporary passwords valid for only a short period. + +**Access Control Policies and Authentication** +Authentication must align with existing access control policies and information access restrictions: +- Access to information should follow the principle of necessity (need-to-know) and the sensitivity levels of the information. Users should be authenticated only for the information they need to access. +- Authentication procedures should reflect the protection needs of the information—stronger authentication measures are required for particularly sensitive data. + +**Password Security and Management Policies** +Passwords must be regularly updated and not remain unchanged for extended periods: +- Enforce long and complex passwords (e.g., at least 12 characters, combining letters, numbers, and special characters). +- Use password managers for secure password storage and management. +- Lock accounts after multiple failed login attempts to prevent brute-force attacks. + +**Access Rights Following Authentication** +After successful authentication, users should gain access to the appropriate resources based on predefined access rights: +- Access to system resources must be governed by established policies. +- Role-Based Access Control (RBAC) can assign different permissions to users based on their roles. + +**Monitoring and Logging** +All authentication attempts should be monitored and logged to ensure that only authorized users gain access and to detect suspicious activities: +- Logs of successful and failed authentication attempts help identify attacks or misuse quickly. +- Regular reviews of authentication methods and procedures ensure their continued security. + +**Avoiding Insecure Authentication Methods** +Insecure methods, such as simple passwords or storing passwords in plaintext, must be avoided: +- Passwords should be stored in encrypted form. +- Tokens or access keys should be regularly renewed and stored securely. + +**Training and Awareness** +Users should be regularly informed about the importance of secure authentication methods and trained in their application: +- Security training aims to make users aware of the need for strong passwords and vigilance against phishing attacks or other security threats. + + +

Objective of this rule:

+ + +The rule aims to ensure that access to information systems is only possible through secure authentication methods. This protects against unauthorized access, data theft, or manipulation while ensuring that only authorized users can access sensitive information and systems. + +
+ + + +
+ + +### A.8.6 Capacity management + + + +

Explanation:

+ +This Rule relates to capacity management, focusing on monitoring and adjusting resource usage within a system or infrastructure to ensure that available capacities meet current and future requirements. + + + +

What does this mean in practice?

+ + + +**Monitoring Resource Usage** +It is essential to continuously monitor resource utilization (e.g., CPU, memory, disk storage, network bandwidth): +- **Performance Monitoring Tools**: Use software to ensure resources are not overloaded. +- **Real-Time Monitoring**: Helps detect and address bottlenecks early. + +**Adjusting to Current Requirements** +Resource usage should be regularly reviewed and adjusted to align with current needs: +- **Scaling Resources**: Add servers or storage as needed. +- **Optimizing Efficiency**: Maximize resource use without wasting them. + +**Considering Future Requirements** +Forecasting future capacity needs is crucial: +- **Growth Projections**: Plan based on user growth, data volumes, or system usage trends. +- **Planning for Peaks**: Allocate additional resources during periods of expected higher demand (e.g., seasonal fluctuations). + +**Load Testing and Simulations** +Conduct load tests and simulations to evaluate capacity under stress: +- Identify potential bottlenecks before they occur. +- Gain insights into scalability and system performance under extreme conditions. + +**Automatic Scaling and Adjustment** +Modern infrastructures, such as cloud environments, support automatic scaling to dynamically adjust capacity based on demand: +- Add or remove resources like computing power and storage without manual intervention. + +**Capacity Planning and Budgeting** +Long-term planning and budgeting for resources should be regularly reviewed: +- Ensure adequate capacity for future requirements without over-provisioning. +- Infrastructure investments should align with growth and development forecasts. + +**Documentation and Reporting** +All capacity changes and resource usage should be documented and reviewed to support informed decision-making: +- **Regular Reports and Analyses**: Provide insights into resource utilization and future needs, enabling proactive infrastructure adjustments. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that a system's infrastructure and resources are always sufficient to meet current and future requirements. This avoids performance bottlenecks, outages, and inefficient resource utilization while ensuring system stability and scalability. + + +
+ + + +
+ + +### A.8.7 Protection against malware + + + +

Explanation:

+ +This rule relates to protection against malware (such as viruses, trojans, ransomware, etc.) and emphasizes the need to integrate both technical protective measures and user training and awareness. + + + +

What does this mean in practice?

+ + + +**Technical protective measures against malware** +Specific technologies must be implemented to protect systems and data from malware: +- **Antivirus software**: Detects, blocks, and removes malware from endpoints and servers. +- **Firewall**: Monitors network traffic and blocks malicious software from spreading through the network. +- **Antimalware tools**: Complements antivirus solutions to protect against targeted attacks, such as trojans or ransomware. +- **Email security**: Scans attachments and links for malware before they reach the inbox. +- **Sandboxing**: Tests suspicious files in isolated environments before they are executed. +- **Patch management**: Regular updates and patches for operating systems, applications, and software to close known security vulnerabilities. + +**User training and awareness** +Users should be regularly trained to act with security awareness: +- **Phishing protection**: Recognizing phishing emails and avoiding interaction with them. +- **Avoiding suspicious links and attachments**: Users should be cautious not to open unexpected email attachments or click on unsafe links. +- **Security-conscious behavior**: Using devices securely and avoiding insecure Wi-Fi networks. +- **Password security**: Using strong passwords and avoiding insecure password sharing. + +**Proactive malware detection** +Systems should proactively detect malware and monitor for suspicious behavior: +- **Behavior-based detection**: Monitoring software activities to identify abnormal patterns. +- **Signature-based detection**: Identifying known malware using updated signatures. +- **Heuristic analysis**: Analyzing the behavior of new or unknown malware before it can cause harm. + +**Continuous updates of protective measures** +Since malware evolves constantly, protective measures must be regularly updated: +- Regular updates and patches for antivirus software and other protection systems. +- Threat monitoring and analysis to identify new malware variants early. + +**Backup strategies for recovery after malware attacks** +Despite protective measures, attacks may occur, so backup strategies are crucial: +- Regular backups of important data and systems. +- Regular testing of backups to ensure recoverability in case of an attack. + +**Access control and risk minimization** +Strict control over access to systems and data to reduce the risk of malware infections: +- **Minimizing user privileges**: Grant only the minimum necessary rights to limit potential damage. +- **Network segmentation**: Isolating critical systems from less secure network areas. + + +

Objective of this rule:

+ + +This rule aims to ensure that systems and data are protected against malware attacks. By combining technical protective measures and user training, the risk of infections is minimized, and IT infrastructure security is maintained. + +
+ + + + + +
+ + +### A.8.8 Management of technical vulnerabilities + + + +

Explanation:

+ +The "Management of Technical Vulnerabilities" rule refers to the identification, assessment, and mitigation of technical vulnerabilities in information systems. It involves understanding the risks associated with these vulnerabilities and taking appropriate actions to address or mitigate them. + + + +

What does this mean in practice?

+ + + +**Identification of technical vulnerabilities** +The first step is to identify all relevant technical vulnerabilities in the deployed information systems: + +- Security gaps in software (e.g., applications, operating systems) or hardware must be regularly uncovered. +- Vulnerability databases (e.g., CVE - Common Vulnerabilities and Exposures) should be used to identify and track known security vulnerabilities. +- Security audits and penetration tests can be used to identify vulnerabilities that attackers could exploit. + +**Assessment of exposure to vulnerabilities** +It is crucial to assess how vulnerable the organization is to these weaknesses: + +- **Risk analysis**: Each vulnerability must be evaluated regarding its potential impact on confidentiality, integrity, and availability. +- **Severity of the vulnerability**: The seriousness of the vulnerability should be assessed, for example, whether it could lead to system failure or data loss. +- **Attack surface**: Which systems are most vulnerable, based on the architecture and external connections (e.g., publicly accessible servers). + +**Prioritization of actions** +Once vulnerabilities have been identified and assessed, appropriate actions should be taken, considering the associated risks and impacts: + +- **Patch management**: One of the most critical actions is installing patches and updates for software and systems to close known security gaps. +- **Workarounds**: If an immediate patch is unavailable, temporary security solutions or workarounds can be used to minimize the threat. +- **Access control**: Vulnerabilities can be mitigated through stricter access policies, ensuring that only authorized users have access to vulnerable systems. + +**Implementation of protective measures** +Depending on the type and severity of the vulnerability, appropriate protective measures should be implemented: + +- **Firewalls and Intrusion Detection Systems (IDS)** can be used to detect and block attacks exploiting vulnerabilities. +- **Encryption** can help protect data even if a vulnerability is exploited. +- **Network segmentation** can prevent the spread of an attack across the network. + +**Regular review and updates** +The management of technical vulnerabilities should be ongoing, not just a one-time task: + +- Regular vulnerability scans should be performed to detect new or modified security gaps. +- Security policies and procedures should be reviewed to ensure they align with the latest threats and vulnerabilities. + +**Training and awareness** +Users and administrators must be educated and made aware of the importance of vulnerability management: + +- **Awareness programs**: Training on secure practices when handling software and systems can help prevent vulnerabilities. +- Administrators should be regularly made aware of new threats and vulnerabilities and trained in best practices. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that the organization proactively and regularly identifies vulnerabilities in its information systems and responds accordingly. By assessing and addressing vulnerabilities, the risk of attacks or security breaches is minimized, contributing to the stability and security of the IT infrastructure. + + +
+ + + + + + + + + + +
+ + + +### A.8.9 Configuration management + + + +

Explanation:

+ +This rule pertains to configuration management, particularly managing and monitoring configurations for hardware, software, services, and networks, with special consideration for security configurations. + + + +

What does this mean in practice?

+ + + +**Creating and defining configurations** +First, the correct configurations for all relevant systems and components must be established: +- Standardized configurations for hardware, software, and networks must be developed to meet security requirements. +- Specific, secure configuration settings should be defined for operating systems, applications, databases, and network devices (e.g., disabling unnecessary services, enforcing strong authentication requirements, network segmentation). + +**Documentation of configurations** +All configurations must be thoroughly documented: +- Clear documentation ensures configurations are consistent and traceable. +- The documentation should include all configuration parameters, versions, changes, and applied security measures. +- This documentation also facilitates later reviews and audits. + +**Implementation of configurations** +The defined configurations must be implemented across the relevant systems and devices: +- Automated configuration management tools can be used to enforce configurations across the infrastructure. +- The management process should ensure that all systems are set up according to the defined configurations, with no deviations or insecure settings. + +**Monitoring configurations** +It is crucial to monitor configurations regularly to ensure they continue to comply with established security policies: +- Monitoring tools can be used to continuously verify that systems are operating according to the defined security configurations. +- Unplanned changes or deviations from configurations should be detected immediately so that corrective actions can be taken swiftly. + +**Review of configurations** +Configurations must be reviewed regularly to ensure they meet current requirements: +- Audits and reviews help ensure systems remain secure and stable. +- When changes to infrastructure or new technologies are introduced, configurations should be reviewed and updated accordingly. + +**Managing configuration changes** +Changes to configurations should be controlled and traceable: +- A change management process should be implemented to ensure configuration changes are properly approved and documented. +- Critical changes should be tested in controlled environments to assess potential impacts before they are applied in production. + +**Security configurations** +Security-specific configurations must be considered across all areas: +- Firewalls, Intrusion Detection/Prevention Systems (IDS/IPS), and encryption should be configured on network and server systems. +- Security settings for user rights, password policies, and access controls should be regularly reviewed and correctly implemented. +- Standardized security configurations for software and hardware (e.g., secure baseline images for servers) should be created and applied. + + +

Objective of this rule:

+ + +The objective of this rule is to ensure that all system configurations, particularly security-related ones, are managed in a standardized, documented, and reviewed manner. This helps avoid errors that could lead to security vulnerabilities and ensures that systems are operated in a stable and secure manner. Effective configuration management contributes to maintaining the integrity and confidentiality of systems and data while minimizing the risk of security incidents. + + +
+ + + + + + + +
+ + +### A.8.10 Information deletion + + + +

Explanation:

+ + +The "Information Deletion" rule refers to the secure deletion of information stored in information systems, devices, or other storage media when it is no longer needed. This practice is critical to minimizing the risk of data breaches, unauthorized access, and non-compliance with data protection requirements. + + + +

What does this mean in practice?

+ + + +**Why is deleting information important?** + +- **Preventing data misuse**: If sensitive or confidential data is not deleted, it may be misused or accessed by unauthorized individuals. +- **Compliance with data protection requirements**: Various data protection regulations, such as the General Data Protection Regulation (GDPR), require personal data to be deleted when it is no longer necessary for the purpose it was stored. Organizations must ensure they can prove the legality of data retention and avoid keeping personal data longer than necessary. +- **Avoiding storage waste**: Unnecessary data occupies valuable storage resources. Regularly and intentionally deleting unneeded data contributes to efficiency and better utilization of IT infrastructure. + +**When should information be deleted?** + +- **Data that is no longer needed**: Information that has fulfilled its purpose and is no longer relevant must be deleted. This includes data that is no longer required after the completion of a project, the end of a contract, or the expiration of a legal retention period. +- **Contractual or legal requirements**: Sometimes, data must be kept for certain periods due to legal obligations before it can be deleted. After these periods have passed, it should be completely removed. +- **Outdated or duplicate data**: Duplicate, outdated, or unnecessary data should be regularly deleted from systems to maintain the integrity and quality of stored information. + +**Secure deletion of data** + +- **Data deletion methods**: There are various methods to securely delete data. A simple deletion removes references to data but leaves the data on the disk, which theoretically can be restored. Complete data deletion uses specialized tools to overwrite data, making recovery practically impossible. +- **Data destruction on physical media**: When deleting data from physical devices like hard drives, USB sticks, or backup media, it is essential that the data is physically destroyed or overwritten to ensure it cannot be recovered. +- **Encryption before deletion**: A common method to protect data before deletion is encryption. This ensures that even if data is accidentally not fully deleted, it becomes unusable due to the encryption mechanism. + +**Procedures and responsibilities** + +- **Documented policies and procedures**: Clear policies and procedures for data deletion should be established, specifying how and when data must be deleted, which tools should be used, and how the deletion process is verified. These procedures should be regularly updated to reflect new technological developments and legal requirements. +- **Accountability for data deletion**: Responsibility for proper data deletion should be clearly assigned. This includes overseeing the deletion process, verifying the deletion, and documenting the procedure. + +**Access and audit logs** + +- **Logging deletion activities**: All deletion activities should be logged to track which data was deleted and why. These logs also serve to verify compliance and ensure that data deletion is complete and proper. +- **Audit and review**: Regular audits and reviews of the deletion process ensure that deletion policies are followed and that no data is accidentally retained or accessible. + +**Legal aspects** + +- **Compliance with legal requirements**: Organizations must ensure they comply with all relevant legal regulations regarding data deletion. Many countries have strict data retention and deletion laws, such as the General Data Protection Regulation (GDPR) in the EU. +- **Retention periods**: In some cases, data must be stored for a specific period for legal or regulatory reasons (e.g., tax or financial documents). After these periods expire, the data must be deleted. + + +

Objective of this rule:

+ + + +The main goal of the "Information Deletion" rule is to ensure that data is deleted securely and responsibly when it is no longer needed. This reduces the risk of unauthorized access, ensures compliance with data protection laws, and optimizes storage usage. The deletion process must be documented, regularly reviewed, and conducted using appropriate deletion methods. + + +
+ + + + + + + + + + + + + + + +
+ + +### A.8.11 Data masking + + + +

Explanation:

+ +This rule pertains to the use of data masking to protect sensitive information in a way that ensures it is only accessible to authorized users, while also meeting legal and business requirements. + + + +

What does this mean in practice?

+ + + +**Use of data masking** +Data masking is the process by which sensitive data (e.g., credit card information, social security numbers, personal identification data) is altered so that it becomes unusable or unintelligible to unauthorized users, while remaining accessible to authorized users: +- Data is obscured by replacing parts of the original data with unrecognizable characters or data (e.g., showing only the last four digits of a credit card number: "1234---5678"). +- Data masking techniques can make data usable for testing, development purposes, or in non-production environments, without exposing sensitive information. + +**Compliance with access control policies** +The use of data masking must align with the organization's access control policies: +- Only authorized users should be allowed to access the "unmasked" or full data. +- Mechanisms must be in place to ensure that only authorized users can view the complete, original data, while all others receive only the masked versions of the data. + +**Consideration of business requirements** +Data masking must be implemented with the specific business needs in mind: +- In some cases, developers or testers may only need a masked version of the data to test system functionality, while in other cases, full data might be necessary to support business processes. +- The masking should align with operational needs, ensuring no unnecessary exposure of sensitive information while still allowing business operations to continue without disruption. + +**Consideration of legal requirements** +When implementing data masking, applicable legal regulations must also be taken into account: +- Privacy laws such as GDPR (General Data Protection Regulation) in Europe or HIPAA (Health Insurance Portability and Accountability Act) in the U.S. dictate how personal data must be protected and processed. +- Data masking should be done in a way that complies with legal requirements to minimize the risk of data breaches or legal consequences. + +**Data masking in different environments** +Data masking is commonly used in non-production environments, such as development, testing, or training environments, where full production data is not required: +- Developers and testers can work with masked data without having access to the full, real data. +- This helps mitigate the risk of data leaks and preserves confidentiality, even in environments that are not directly related to business operations. + +**Continuous review and adjustment** +Data masking policies should be regularly reviewed and adjusted to reflect changing business or legal requirements: +- Audits and security reviews should be conducted to ensure that data masking processes are effective and that no sensitive information is inadvertently exposed. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure the protection of sensitive data by masking it in certain contexts, allowing only authorized individuals to access the full data. The rule helps fulfill privacy requirements, minimizes the risk of data breaches, and ensures that data can still be used for business purposes. + + +
+ + +
+ + +### A.8.12 Data leakage prevention + + + +

Explanation:

+ +This rule pertains to measures to prevent data leaks (Data Leakage Prevention, DLP), which must be applied to systems, networks, and all devices that handle, store, or transmit sensitive information. + + + +

What does this mean in practice?

+ + + +**Protection of sensitive data** +The main purpose of this rule is to ensure that sensitive information (e.g., personal identification data, financial data, intellectual property) does not unintentionally or intentionally leave the organization’s system: +- Data leaks can occur due to employees, inadequate security measures, or unsecured devices that transmit or store sensitive data. +- Protection mechanisms must be established to safeguard data from loss, theft, or unauthorized access. + +**Technical measures to protect against data leaks** +Various technical solutions can be used to ensure the security of sensitive data: +- **Data Leakage Prevention (DLP) software**: This software monitors data flows and blocks the unauthorized transfer of sensitive data. +- **Encryption**: Data should be encrypted both at rest (on disks, servers) and during transmission (e.g., email transmission or cloud transfers) to prevent unauthorized access in the event of an incident. +- **Access control**: Only authorized users should have access to sensitive data. Role-based access control (RBAC) or other methods can be used to regulate access to confidential information. + +**Monitoring and control of data flows** +All data that leaves the organization or is transferred between devices and systems should be monitored: +- **Monitoring systems** can check data flows for suspicious activities, such as sending sensitive information via email or uploading files to unsecured cloud storage. +- **Leak detection**: These systems can attempt to detect and prevent accidental or intentional sending of data outside the company’s network. + +**Protection on all devices and networks** +DLP measures must be applied not only on servers and networks but also on end devices like laptops, smartphones, and tablets: +- **Endpoint protection**: Security solutions like antivirus software, firewalls, and DLP tools must be installed on all devices that store or process sensitive data. +- **Mobile device management (MDM)**: Devices using mobile applications to process sensitive data should be managed with MDM solutions to ensure their security. + +**Review and awareness** +The organization should regularly review whether DLP measures are effective and ensure all employees understand data security policies: +- **Awareness training**: Training for all employees is important to understand the risks of data leaks and to learn how to handle sensitive data responsibly and securely. +- **Audits and assessments**: DLP measures should be regularly reviewed to ensure they cover current threats and technologies. + +**Incident response** +If a data leak is detected, clear procedures for incident response should be established: +- **Incident response plan**: A well-defined plan must exist to quickly respond to data leaks, identify the cause, and mitigate the impact. +- **Notifications and reporting**: In the event of a severe incident, affected parties, including customers and regulatory authorities, should be informed in accordance with legal regulations (e.g., under GDPR). + +**Compliance with legal requirements** +Measures to prevent data leaks must also comply with legal regulations governing the handling of personal or sensitive data: +- Privacy laws such as GDPR or national regulations may impose specific requirements for the protection of sensitive data and penalties for violations. +- **Compliance reviews**: The organization must ensure that its DLP measures meet all relevant privacy and security requirements. + + +

Objective of this rule:

+ + +The goal of this rule is to protect the integrity and confidentiality of sensitive information by implementing mechanisms to prevent data leaks. It aims to ensure that no confidential data is unintentionally or intentionally leaked from the organization or falls into the wrong hands, thus preventing legal and business harm. + +
+ + + +
+ + +### A.8.13 Information backup + + + +

Explanation:

+ +This rule pertains to the backup of information, software, and systems to ensure that data can be restored in the event of a failure or disaster. + + + +

What does this mean in practice?

+ + + +**Creation of backup copies** +Backup copies must be created for all critical information, software, and systems: +- **Data backup**: All business-critical and sensitive data (e.g., databases, customer data, transaction records) must be regularly backed up. +- **System backup**: Not only the data but also the systems and software (e.g., operating systems, applications) should be backed up regularly to enable full restoration in case of an emergency. +- **Backup of configurations**: System configurations, network settings, and security policies should also be part of the backup to ensure that all relevant components are correctly configured during a restoration. + +**Regular testing of backups** +The backup copies must be regularly tested to ensure that they can actually be restored in the event of data loss: +- **Restoration tests**: The backed-up data should be restored in an isolated environment (e.g., a test environment) to ensure that all data is intact and the systems are functional. +- **Frequency of tests**: The frequency of tests depends on the business importance and risks, but a regular testing schedule should exist to ensure the backups remain reliable over time. + +**Backup strategy according to the backup policy** +The creation and management of backups must follow a clearly defined backup policy: +- This policy should define the frequency of backups, the storage locations for backups, and the security requirements for backups. +- The policy should also include specific recovery requirements (e.g., recovery time objectives and recovery point objectives) and procedures for handling critical data loss scenarios. +- Procedures for encrypting backups should also be defined to prevent data from being compromised during transport or storage. + +**Security measures for backups** +Backups must be protected from unauthorized access and tampering: +- **Encryption** of backup data is crucial, especially when backups are stored offsite or transmitted over unsecured networks. +- **Access control**: Only authorized employees should have access to the backups to prevent misuse or theft. +- **Backup locations**: Backups should be stored in secure locations, both on-premises and offsite (e.g., cloud storage, external data centers), to minimize the risk of data loss due to disasters. + +**Retention and management of backups** +Backups must be properly retained and managed: +- **Backup lifecycle**: A clear policy should exist regarding how long backups should be retained and when they should be deleted or archived. +- **Recovery point**: Data should be kept for a clearly defined period, ensuring that the required versions are available in case of an emergency. + +**Disaster recovery plan** +A disaster recovery plan should be regularly reviewed and updated: +- The plan should describe the procedures for restoring data from backups, including responsibilities and step-by-step processes. +- The restoration process must be well documented to ensure fast and accurate responses in the event of an incident. + +**Compliance and legal requirements** +Backup measures must also comply with applicable laws and regulations: +- For example, regulations may mandate how long personal data must be retained or how data must be secured (e.g., under GDPR in the EU). +- Audits and regular reviews must ensure that backup policies and processes comply with the relevant legal requirements. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that all critical data and systems of the organization are protected through regular backups. This enables quick restoration in the event of failure, disaster, or security incident and ensures that the organization can maintain business continuity even if data is lost or damaged. + + +
+ + + + + + + +
+ + +### A.8.14 Redundancy of information processing facilities + + + +

Explanation:

+ +This rule pertains to the redundancy of information processing facilities to ensure that the availability of information systems is maintained even in the event of failures or disruptions. + + + +

What does this mean in practice?

+ + + +**Redundant systems and components** +Information processing facilities (e.g., servers, networks, data centers) must be designed so that when a component or system fails, a backup solution is available to continue operations without interruption: +- **Hardware redundancy**: Key hardware components (e.g., hard drives, power supplies, servers) should be redundantly designed. This means that there are backup parts or systems that can be automatically or manually activated when a part fails. +- **Network redundancy**: Multiple network connections and routes should be provided to ensure communication remains possible even if a network failure occurs. +- **Power supply**: Backup power sources like UPS (Uninterruptible Power Supply) or generators ensure that no data is lost and systems continue to operate during power outages. + +**Geographical redundancy** +Redundancy should be implemented not only within a single data center but also at geographically distributed locations to minimize the risk of failures due to local disasters: +- **Disaster recovery sites**: The organization can set up a secondary data center at a different geographic location that hosts the same data and applications. In case of failure at the primary data center, operations can quickly switch to the secondary site. +- **Cloud redundancy**: The use of cloud services can also provide geographical redundancy by storing data and applications in multiple data centers worldwide. + +**Availability requirements and Service Level Agreements (SLAs)** +The implementation of redundancy must align with the organization’s availability requirements: +- The availability of systems should meet the business needs, such as 99.9% uptime (or higher). +- **Service Level Agreements (SLAs)**: Contracts with service providers should specify redundancy and recovery time requirements to ensure a quick recovery in case of failure. + +**Failover mechanisms** +Redundancy is not just about providing backup hardware or locations, but also automating failover processes: +- **Automatic failover**: When a system fails, there should be an automatic switch to a redundant resource or an alternative site, without any service interruption. +- **Manual failover**: In some cases, the administrator may need to trigger the failover process manually. This should be done quickly and efficiently to minimize downtime. + +**Regular testing of redundancy** +The effectiveness of redundancy solutions should be regularly tested: +- **Disaster recovery tests**: The organization should conduct regular tests to ensure that redundant systems can seamlessly take over in case of failure. +- **Testing failover processes**: It’s crucial to test if the failover mechanisms function smoothly and maintain system availability. + +**Cost-benefit analysis** +Redundancy should be balanced with the associated costs: +- Implementing redundancy requires additional investment in hardware, software, and possibly infrastructure. The organization should weigh the costs against the availability needs and the potential risks of a failure. +- For less critical systems, lower redundancy may be sufficient, while for business-critical applications (e.g., financial systems, customer databases), high availability may be essential. + +**Compliance with legal and regulatory requirements** +The implementation of redundancy must also comply with legal and regulatory requirements: +- In some industries, such as finance or healthcare, there may be legal requirements for the availability and redundancy of IT systems. +- The organization must ensure that its redundancy measures meet the relevant legal standards to avoid legal and financial risks. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that the organization’s information processing facilities remain available even in the event of disruptions or failures. By employing redundancy, the availability and continuity of business processes are ensured, which is crucial to minimize downtime and protect the organization from the risks of operational interruptions. + +
+ + + +
+ + +### A.8.15 Logging + + + +

Explanation:

+ +This rule pertains to the creation, storage, protection, and analysis of logs that document important events in information systems to ensure that activities and incidents can be traced, and security incidents or errors can be addressed if necessary. + + +

What does this mean in practice?

+ + + +**Creation of Logs** +Logs (log files) must be created to record all relevant activities and events in the information systems: +- **Activities**: Every interaction or change in the system, such as user logins, data changes, system configurations, or settings. +- **Errors and exceptions**: All occurring errors, system failures, or unexpected events (e.g., software crashes or failed system processes) should be logged. +- **Security-related events**: Entries for security events, such as unauthorized access attempts, failed password entries, or suspicious network activities, should also be logged. +- **System and application logs**: Logs can be captured at various levels, such as at the operating system level (e.g., security events), application level, or network layer (e.g., firewall logs). + +**Storage of Logs** +The generated logs must be securely stored to ensure they are available for analysis in case of failures or attacks: +- **Centralized storage**: It is advisable to store logs centrally so that they can be easily accessed for evaluation and security analysis. +- **Long-term retention**: Logs should be retained for a defined period to allow for later reference during investigations. The retention period may vary depending on legal requirements and internal security policies. +- **Data integrity**: The integrity of the logs must be protected to prevent them from being manipulated or deleted. Mechanisms such as digital signatures or encrypted storage can be used to protect logs. + +**Protection of Logs** +Since logs may contain sensitive information, they must be protected from unauthorized access and manipulation: +- **Access control**: Only authorized individuals should have access to the logs. Clear access control and user rights management are necessary to prevent misuse. +- **Encryption**: Logs should be encrypted when stored or transmitted over networks to ensure they cannot be intercepted or viewed without authorization. +- **Log management software**: Specialized software solutions can be used to automate the logging and protection of logs. + +**Analysis of Logs** +Logs should be regularly analyzed to ensure that potential issues or security incidents are detected early: +- **Automated monitoring**: Systems should be set up to automatically monitor logs for suspicious activities or anomalies (e.g., using Intrusion Detection Systems (IDS) or Security Information and Event Management (SIEM) software). +- **Manual and regular review**: In addition to automated monitoring, manual review of logs by IT administrators or security teams should be performed to identify critical events. +- **Pattern recognition**: During analysis, recurring patterns such as repeated error messages or frequent login attempts may indicate potential problems or security incidents. + +**Compliance and Legal Requirements** +Logging must also comply with relevant legal and regulatory requirements: +- **Data protection laws**: In certain industries, laws like GDPR (General Data Protection Regulation) may govern how logs should be created, stored, and processed, especially when they contain personal data. +- **Security standards**: Certain standards, such as ISO 27001 or NIST, have logging requirements that must also be adhered to. +- **Legal retention requirements**: Many countries have legal requirements for the retention of logs, such as in the financial or healthcare sectors. Logs must be retained for a specific period to be available for review if necessary. + +**Incident Response** +Logs play a crucial role in responding to security incidents: +- **Forensic investigation**: In the event of an incident (e.g., data breach, cyber attack), logs can be used to reconstruct the incident and determine its causes. +- **Audit logs**: They help establish a clear trail of who performed what action in the system and when, which is essential for identifying whether an incident was caused internally or externally, and how it unfolded. + +**Ensuring Completeness and Accuracy of Logs** +To ensure that logs are meaningful and complete, they must be comprehensive and accurate: +- **Completeness**: All relevant activities and events must be captured without omitting important information. +- **Accuracy**: It must be ensured that the events recorded in the logs are accurate and that no errors or tampering occur. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that activities and events within the information systems are properly logged to assist in monitoring, troubleshooting, security analysis, and forensics. Well-managed and analyzed logs can not only help detect problems early but also serve as crucial evidence when investigating security incidents or legal matters. + + +
+ + + + + + + +
+ + + +### A.8.16 Monitoring activities + + + +

Explanation:

+ +This rule pertains to monitoring networks, systems, and applications to detect anomalous behavior and take appropriate action in case of suspected security incidents. + + + +

What does this mean in practice?

+ + + +**Monitoring of Networks and Systems** +All networks, systems, and applications must be continuously monitored to detect suspicious activities and anomalies that could indicate security incidents or technical issues: +- **Network monitoring**: The network must be monitored for unusual traffic, unexpected connections, or unauthorized access attempts. +- **System monitoring**: Servers and endpoints must be monitored for unusual system activities, such as unauthorized software installations or unusually high CPU or disk usage. +- **Application monitoring**: Applications should be monitored for security-relevant events, such as error messages, login attempts, and database access. + +**Detection of Anomalies and Suspicious Behavior** +The monitoring systems should be able to detect anomalies or suspicious behavior that could indicate potential security incidents: +- **Anomalies**: Examples of anomalies include unusual login times, login attempts from atypical geographical regions, or the occurrence of unknown processes in the system. +- **Behavioral analysis**: Continuous monitoring can detect changes in the normal usage patterns of systems or users, which may indicate possible security incidents. +- **Signatures and pattern recognition**: Security software can look for known threats or attack vectors, such as viruses, ransomware, or denial-of-service attacks. + +**Real-Time Monitoring and Alarms** +To respond quickly to threats, monitoring should occur in real time: +- **Automatic alarms**: When anomalies or security-critical events are detected, the system should automatically trigger alarms to alert the IT security team or administrators. +- **Immediate notifications**: For severe security incidents, there should be real-time notifications to the responsible individuals to initiate immediate actions. + +**Response to Security Incidents** +When a potential security incident is detected through monitoring, appropriate response measures must be taken: +- **Escalation**: A reported incident should be escalated if it is deemed to be a threat. This means that experts or a security team should be immediately notified to analyze the issue. +- **Initial investigation**: The first steps involve analyzing the cause of the incident and determining if it is a legitimate security incident requiring further actions. +- **Immediate isolation**: In some cases, such as ransomware or other malware attacks, the affected infrastructure may need to be immediately isolated to prevent the spread of the threat. + +**Documentation and Analysis of Incidents** +Every action taken in response to an incident must be carefully documented and analyzed: +- **Documentation of response**: All steps taken to respond to the incident should be documented in detail. This includes the actions taken, the individuals involved, and the communication within the team. +- **Forensic analysis**: After the incident, a forensic analysis should be conducted to determine how the threat entered, how it spread, and which systems were affected. +- **Reporting**: The analysis results should be communicated to relevant stakeholders, such as management or regulatory authorities. + +**Security and Performance Metrics** +Security metrics and performance key performance indicators (KPIs) are used to evaluate the efficiency of systems and security: +- **Security metrics**: Key indicators such as the number of detected security incidents, the number of thwarted attacks, or the response time to incidents are important measures of the effectiveness of security measures. +- **Performance metrics**: These measure how well the system can perform monitoring without affecting performance (e.g., by causing delays or system failures due to monitoring software). + +**Continuous Improvement** +Monitoring activities must be regularly reviewed and improved: +- **Regular assessments**: The monitoring strategy should be regularly assessed for its effectiveness and adaptability to new threats. +- **Adapting to new threats**: Security policies and monitoring strategies must be continuously adjusted to respond to emerging threats, new attack vectors, or technological changes. +- **Team training**: IT and security teams should be regularly trained to stay familiar with new technologies and threats and to know how to properly respond to incidents. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that potential security incidents are detected early so that quick and effective action can be taken. Continuous monitoring and analysis of systems, networks, and applications are crucial to identifying unauthorized access, data leaks, or attacks and ensuring the security of IT infrastructure. + + +
+ + + + + +
+ + +### A.8.17 Clock synchronization + + + +

Explanation:

+ +This rule pertains to the time synchronization of information processing systems within an organization to ensure that all systems and devices are aligned with approved time sources. + + + +

What does this mean in practice?

+ + + +**Centralized Time Source** +All information processing systems must synchronize their time with a reliable and approved time source to ensure that the time is consistent across all devices and systems: +- A common time synchronization source is the Network Time Protocol (NTP) server, which provides accurate time. +- In many cases, a GPS system or atomic clock service can also serve as a precise time source. + +**Why is Time Synchronization Important?** + +- **Avoiding Errors**: Synchronizing system time helps prevent errors in event logging, data storage, and report generation. If systems have different times, important events cannot be properly correlated. +- **Security**: Accurate time is crucial for identifying and tracking security-related events. Many security protocols and audits rely on timestamps. Unsynchronized systems can lead to discrepancies and issues when identifying security incidents. +- **Consistency and Coordination**: In distributed systems or cloud environments, accurate timestamps are essential to ensure consistency between different systems and applications. + +**Approved Time Sources** +The time source with which the systems are synchronized must be reliable and approved: +- **Internal Time Servers**: An organization can operate its own time servers synchronized with external, reliable sources, such as via the internet. +- **External Time Sources**: Commonly, internet services such as NTP servers are used to obtain time. These servers synchronize their time with atomic clocks or GPS time sources, which are extremely accurate. + +**Time Synchronization Verification** +It must be ensured that time synchronization is regularly checked: +- **Automatic Synchronization**: Systems should automatically synchronize their time without requiring manual intervention. +- **Error Reporting**: If synchronization fails or a discrepancy is detected, the system must immediately send an error message to administrators. +- **Monitoring Software**: Specialized software can be used to ensure that all systems are regularly synchronized and no deviations occur. + +**Compliance with Legal and Regulatory Requirements** +In certain industries, there are regulatory requirements that mandate exact time synchronization: +- **Audits and Forensics**: When incidents like security breaches or data loss are investigated, accurate timestamps are necessary to reconstruct the event correctly. Inaccurate timestamps can cause issues with evidence preservation. +- **Legal Requirements**: Some legal requirements (e.g., in the financial industry) stipulate that transactions and other critical events must be dated and documented precisely. + +**Avoiding Time Deviations and Security Gaps** +Different time zones or deviations between systems can lead to various issues: +- **Log Collisions**: If different systems use different times, logs from different devices may collide, making troubleshooting and tracking incidents more difficult. +- **Attack Risks**: Attackers could attempt to manipulate system timestamps to falsify logs or obscure attacks. Accurate and reliable synchronization helps prevent such manipulations. + +**Redundant Time Sources** +To ensure that the time is always accurate, even in the event of a source failure, an organization can use multiple redundant time sources: +- **Backup Servers**: If a primary time source fails, a backup time server should be available to continue synchronization. +- **Global Time Sources**: For large, international organizations operating in multiple geographic regions, it might make sense to use multiple time sources from different regions. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that time on all information processing systems within the organization is accurate and synchronized, enabling consistent, traceable, and secure handling of events, data, and processes. Precise time synchronization is critical for the correct functioning of systems, particularly with regard to security, troubleshooting, and audit processes. + + +
+ + + + + + + +
+ + + +### A.8.18 Use of privileged utility programs + + + +

Explanation:

+ +This rule pertains to the use of privileged utility programs that have the ability to override system and application controls. Such programs must be restricted and strictly controlled to ensure they are not misused or used without authorization. + + + +

What does this mean in practice?

+ + + +**What are Privileged Utility Programs?** + +Privileged utility programs are tools or applications that have elevated system rights and allow deep modifications to a system’s infrastructure, often beyond normal user rights. +These programs might be capable of changing system configurations, overriding file permissions, manipulating user rights, or bypassing security controls. +Examples of such programs include system administration tools, backup software, database management systems, or recovery tools. + +**Why must these programs be strictly controlled?** + +- **Security Risks**: If these programs are used by unauthorized individuals or under improper conditions, they can create severe security risks such as data manipulation, unauthorized access, or system compromises. +- **Abuse of Privileged Rights**: Attackers who gain access to these programs can take full control of the system, leading to damage to systems or data loss. +- **Misuse**: Even legitimate administrators could inadvertently open security gaps or compromise system settings through improper use of privileged programs. + +**Restrictions and Controls** +The use of privileged programs must be restricted by various measures: + +- **Access Control**: Access to such programs must be strictly controlled. Only authorized users (e.g., administrators) should have access to these programs. +- **Minimization of Rights**: Only the necessary access should be granted, and users should not have more rights than they actually need to perform their job. +- **Least Privilege Principle**: According to the principle of least privilege, access to privileged programs should only be granted for the specific tasks that are necessary. An administrator should not have elevated rights continuously but only when required for a particular task. + +**Monitoring and Logging** + +- **Monitoring of Usage**: The use of these programs should be continuously monitored to ensure that they are only being used by authorized individuals and in accordance with security policies. +- **Logging**: All activities performed using privileged utility programs must be logged comprehensively to trace any potential abuse or misconduct. These logs should be securely stored and regularly reviewed. +- **Alerts for Suspected Misuse**: The system should be designed to trigger immediate alerts if there is suspicion of misuse of privileged programs. + +**Security Measures and Restrictions** + +- **Use of Multi-Factor Authentication (MFA)**: Multi-factor authentication should be required for access to privileged programs to ensure that only authorized users can access them. +- **Time Restrictions**: Access to privileged utility programs can be time-limited, allowing them to be accessible only at specific times or under certain conditions. +- **Use of Specialized Security Modules**: Programs that execute privileged actions should be further protected by specialized security mechanisms like containerization, virtual machines, or Privileged Access Management (PAM) tools. + +**Training and Awareness** + +- **Training for Administrators**: Individuals using privileged programs should be regularly trained to raise awareness of potential risks and best practices in handling these tools. +- **Regular Audits**: Regular audits and security assessments should be conducted to ensure that privileged programs are used securely and in accordance with established policies. + +**Use of Virtual Environments and Isolation** + +- **Isolation of Programs**: In some cases, it may be beneficial to run privileged programs in an isolated environment to minimize the risk of inadvertent or unauthorized usage. +- **Virtual Machines**: Privileged programs can be run within virtual machines separated from the main infrastructure to reduce security risks. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that privileged utility programs, which have the potential to override critical system and application controls, are used only by authorized and trained individuals, and that their usage is strictly controlled, logged, and monitored. This helps prevent misuse, misconfigurations, and security incidents that could have severe consequences for the entire IT infrastructure and data security. + + +
+ + + + + + +
+ + +### A.8.19 Installation of software on operational systems + + + +

Explanation:

+ +This rule pertains to the installation of software on operating systems, particularly those used in production. It mandates that procedures and measures must be implemented to securely manage software installation. + + + +

What does this mean in practice?

+ + + +**Why is secure management of software installation important?** + +- **Security Risks**: Installing software on operational systems presents potential security risks. Unsecured or uncontrolled software installations can lead to malware, vulnerabilities, or unauthorized access. +- **System Stability**: Faulty or incompatible software can impair the stability and availability of the operating system, causing outages that disrupt normal IT infrastructure operations. +- **Compliance**: Many industries have regulations and standards that require careful control of software installations to ensure that only authorized and trusted software is executed on the systems. + +**Procedures for Software Installation** +Clear procedures for software installation should be developed and documented: + +- **Approval Process**: Before software is installed on an operational system, a formal approval process should be followed. This could involve the review and approval of the software by the IT department or security management. +- **Centralized Control**: Software installation should be centrally managed to ensure that it is performed only by authorized personnel with the appropriate permissions. +- **Testing Software**: Before installation on production systems, software should be tested in a non-production environment to ensure that it does not cause compatibility issues with the system and does not introduce security vulnerabilities. + +**Measures for Secure Installation** +To ensure secure installation, various measures should be taken: + +- **Trusted Sources**: Software should only be installed from trusted sources, such as certified vendors or official repositories. Downloads from untrusted sources should be avoided, as they may contain harmful software (e.g., malware). +- **Signed Software**: Software packages should be digitally signed to ensure that they have not been altered or tampered with. +- **Automated Installations**: Where possible, software installation should be automated using tools to minimize human error and ensure consistent installation. + +**Access Control for Installation** + +- **Access Rights Restriction**: Only authorized users, such as system administrators or specially authorized personnel, should have the rights to install software on operational systems. +- **Principle of Least Privilege**: Software installation should only be granted the minimum necessary permissions to reduce the risk of misuse or errors. Administrators should not have unnecessary rights that are not needed for the installation task. + +**Monitoring and Documentation of Installation** +Every software installation should be monitored and documented: + +- **Logging Installations**: All software installations should be logged to ensure traceability of who installed what software and when. +- **Unauthorized Installations Monitoring**: A process should be in place to monitor systems for unauthorized installations and prevent them. +- **Regular Audits**: Regular audits of installed software are necessary to ensure that no unauthorized programs are present and that security policies are being followed. + +**Security Reviews of Software** + +- **Security Assessment**: Before installing software on a production system, a security assessment should be performed to ensure that the software does not contain known vulnerabilities or weaknesses. +- **Patch Management**: All software installations must be regularly checked for patches and updates to close known security vulnerabilities. + +**Traceability and Recovery** + +- **Backups**: Before installing new software, a backup of the current system configuration and data should be created. This ensures that the system can be restored to its previous state in case of issues after installation. +- **Rollback Strategy**: A strategy for rolling back software installations should be in place in case the software causes problems or does not function as expected. + + +

Objective of this rule:

+ + +The objective of this rule is to ensure that software installation on operational systems is performed in a controlled, secure, and responsible manner. The security measures prevent the risks of insecure installations that could affect system stability and introduce vulnerabilities. Proper procedures and controls ensure that only trusted, tested software is installed, and all installations are documented and traceable. + + +
+ + + + + + + + + + + +
+ + + +### A.8.20 Network security + + + +

Explanation:

+ +This rule pertains to the security of networks and network devices, which are essential for protecting information in systems and applications. It ensures that networks and devices are secured, managed, and controlled through appropriate security measures. + + + +

What does this mean in practice?

+ + + +**Why is network security important?** + +- **Protection of Information**: Networks are the primary means by which information is transmitted in modern IT systems. Unsecured networks can lead to data being intercepted, manipulated, or stolen. +- **Attacks on Networks**: Networks are frequently targeted by cyberattacks, such as DDoS attacks, Man-in-the-Middle attacks, or network hacking, which can enable access to confidential information or compromise the availability of systems. +- **Availability and Integrity**: An unprotected network can jeopardize the availability and integrity of systems and applications by allowing disruptions or unauthorized access. + +**Security Measures for Networks** +Several measures must be taken to ensure network security: + +- **Firewalls**: The use of firewalls to monitor and filter traffic helps block unauthorized access and potentially harmful connections. +- **Intrusion Detection/Prevention Systems (IDS/IPS)**: Systems designed to detect and prevent intrusions can help identify and block unusual or malicious traffic. +- **VPNs (Virtual Private Networks)**: VPNs allow secure transmission of data over insecure networks (e.g., the internet) by encrypting communication and securing access to sensitive systems. +- **Encryption**: All sensitive data transmitted over the network should be encrypted to ensure that it cannot be read or tampered with in case of eavesdropping. +- **Segmentation**: Networks should be segmented so that critical systems and data are protected by specialized security measures and are not accessible to all users. + +**Management and Control of Network Devices** + +- **Access Control for Network Devices**: Network devices (such as routers, switches, firewalls) should be protected with strong access control mechanisms to ensure that only authorized personnel can access them. +- **Strong Authentication and Authorization**: Methods like multi-factor authentication (MFA) should be used for accessing network infrastructure to prevent unauthorized access. +- **Secure Configurations**: Network devices must be configured according to best security practices to minimize vulnerabilities and ensure that they are not inadvertently exposed to attackers. + +**Monitoring and Logging** + +- **Continuous Monitoring**: Networks and network devices must be continuously monitored to quickly detect anomalies in traffic or unauthorized access attempts. +- **Logging of Network Activities**: All relevant network activities should be logged so that suspicious events can be tracked and analyzed. Logs must be securely stored to prevent tampering. +- **Alerting on Security Incidents**: The system should be designed to trigger immediate alerts when security incidents or attacks are detected to allow for a rapid response. + +**Access Controls and Network Segmentation** + +- **Access Rights**: Permissions for accessing network resources should be granted strictly according to the principle of least privilege. Only those who truly need access for their tasks should be granted it. +- **Network Segmentation**: Critical applications and systems should be isolated in separate network segments to prevent the spread of attacks. For example, the internal network might be separated from the public network. +- **DMZ (Demilitarized Zone)**: A DMZ can be used to separate public services, such as web servers or email servers, from internal systems, adding extra layers of security. + +**Security in Wireless Networks** + +- **Secure Wireless Networks**: Wireless networks are particularly vulnerable to eavesdropping attacks. They should be protected by strong encryption (e.g., WPA3) and strong passwords. +- **Access Controls**: Only authorized users and devices should be allowed to access wireless networks. The use of MAC address filtering and access control lists (ACLs) can provide additional security. + +**Regular Security Testing and Audits** + +- **Penetration Testing**: Regular penetration tests should be conducted to identify potential vulnerabilities in the network that could be exploited by attackers. +- **Security Assessments**: Networks should be regularly assessed for security gaps to ensure that all current threats are addressed. + +**Security Policies and Training** + +- **Network Security Policies**: The organization should develop clear security policies that govern the management and protection of networks, including the use of firewalls, VPNs, and access controls. +- **Staff Training**: Administrators and all employees working with networks should be regularly trained on network security to recognize and prevent potential risks. + + +

Objective of this rule:

+ + +The objective of this rule is to ensure that networks and network devices are designed, secured, and managed in a way that ensures the confidentiality, integrity, and availability of the information stored and transmitted through them. By implementing appropriate security measures, the risk of unauthorized access, data loss, attacks, and security incidents is reduced. Network security is crucial to protect an organization's entire IT infrastructure and ensure the proper functioning of systems and applications. + + +
+ + + + + + + + +
+ + +### A.8.21 Security of network services + + + +

Explanation:

+ +This rule pertains to the security of network services, which includes both mechanical security measures as well as service levels and service requirements. It ensures that the security mechanisms, requirements, and service levels for all network services are defined, implemented, and monitored to ensure the security and availability of services. + + + +

What does this mean in practice?

+ + + +**Why is the security of network services important?** + +- **Protection from Attacks**: Network services (such as DNS, email, web services, or file transfers) are often targeted by cyberattacks. Inadequate protection of these services can lead to data loss, availability issues, or unauthorized access. +- **Service Availability**: Network services must be available 24/7. Interruptions or outages can cause business disruptions that negatively impact operations. +- **Ensuring Compliance**: Many industries have regulatory requirements concerning the security of network services. Without adequate security measures, businesses may violate data protection laws or industry regulations. + +**Identifying Security Mechanisms for Network Services** +Security mechanisms must be identified that are necessary to protect the various network services: + +- **Encryption**: The transmission of sensitive data should be protected with strong encryption to ensure data confidentiality and integrity. +- **Authentication and Authorization**: Only authorized users or systems should have access to network services. Access controls and strong authentication methods (such as Multi-Factor Authentication) are necessary to prevent unauthorized access to services. +- **Firewalls and Intrusion Prevention Systems (IPS)**: Network infrastructures should be protected by firewalls and IPS that monitor access to and from services and block potentially harmful activities. +- **Security Policies**: Security policies should be defined for the operation and use of network services, such as policies for access control, data transmission, and endpoint security. + +**Defining Service Levels and Service Requirements** +Clear service levels (SLAs) and service requirements for network services must be established: + +- **Availability**: The desired availability of network services should be defined (e.g., 99.9% availability). This helps set clear expectations and ensures the service meets the organization's needs. +- **Response Times**: The response times for incidents and requests related to network services should be defined to ensure problems are addressed promptly. +- **Performance**: The performance of services (e.g., data transmission speed or response times) should be specified to manage expectations regarding the operation of network services. +- **Security Requirements**: Network services should meet specific security requirements, such as protection against DDoS attacks, defense against malware, or ensuring data integrity. + +**Implementing Security Mechanisms** +Once the security mechanisms and requirements are defined, they must be integrated into the network services: + +- **Security Software**: Appropriate security solutions should be implemented to support the defined security requirements (e.g., antivirus software, DDoS protection, or encryption technologies). +- **Redundancy and Fault Tolerance**: To ensure availability, redundancy mechanisms and failover systems (e.g., load balancing or failover systems) must be integrated. +- **Patches and Updates**: Network services should be regularly checked for security updates and patches to ensure known vulnerabilities are addressed. + +**Monitoring Network Services** + +- **Real-Time Monitoring**: Network services should be continuously monitored to detect anomalies or security incidents. Monitoring can be done through Intrusion Detection Systems (IDS), logging systems, or network monitoring tools. +- **Logging Security Events**: All security-related events (e.g., access attempts, attack attempts, error messages) should be logged to allow for follow-up in case of security incidents. +- **Alerting**: In the event of a security incident, immediate alerts should be triggered to notify the security team so that a prompt response can be made. +- **Audits and Regular Reviews**: Regular security audits and reviews of network services should be conducted to ensure that security mechanisms are up-to-date and all requirements are being met. + +**Maintenance and Continuous Improvement** + +- **Risk Assessments**: Regular risk assessments should be conducted to identify potential vulnerabilities or threats to network services and address them. +- **Training**: Personnel responsible for managing and operating network services should receive ongoing training on current security threats and best practices. +- **Testing Security Mechanisms**: It should be ensured that the implemented security mechanisms are regularly tested for effectiveness, such as through penetration tests or simulated attacks. + + +

Objective of this rule:

+ + +The objective of this rule is to ensure that network services are operated with secure mechanisms, clearly defined service levels, and service requirements. This guarantees that services are available, maintain data integrity, and are protected, while security incidents can be promptly detected and handled. Continuous monitoring and regular maintenance are crucial to safeguard services against emerging threats and ensure a high level of service quality. + + +
+ + + + + + + + + + + + + +
+ + + +### A.8.22 Segregation in networks + + + +

Explanation:

+ +This rule pertains to the segregation of networks to increase the security of information services, users, and information systems within the network infrastructure. It ensures that different groups of information services, users, and systems are separated within the network to minimize potential security risks. + + + +

What does this mean in practice?

+ + + +**Why is network segregation important?** + +- **Risk Reduction**: Network segregation helps minimize the risk that an attack on one part of the network spreads to others. If one network segment is compromised, access to other parts of the network remains protected. +- **Protection of Sensitive Data**: Certain information or systems that are particularly sensitive (e.g., customer data, financial information, intellectual property) require enhanced protection. Through network segregation, these can be isolated and specifically secured. +- **Better Control and Monitoring**: By separating networks, specific security policies and monitoring mechanisms can be applied to different segments depending on their importance or security requirements. + +**Groups of Information Services and Users** + +- **Information Services**: Different applications and services (e.g., web servers, database services, email servers) should be isolated in separate network subnets. This allows traffic between these systems to be controlled and restricted to authorized connections only. +- **User Groups**: Users within the organization should be divided into separate network segments based on department or role. This prevents employees without appropriate permissions from accessing systems or data intended for other departments or tasks. +- **Permissions**: Access controls should be implemented to ensure that users can only access the systems and data required for their work. This reduces the risk of internal threats or access violations. + +**Segregation of Information Systems** + +- **Critical Systems**: Critical information systems (e.g., financial systems, healthcare systems) should be separated from less critical systems (e.g., email servers, web applications) to reduce the risk that an attack on a less secure system spreads to a critical one. +- **Security Zones**: The network can be divided into different security zones, each with specific security requirements and policies tailored to the importance of the system or data. One zone might contain publicly accessible web services, while another houses highly sensitive financial data. +- **DMZ (Demilitarized Zone)**: Implementing a DMZ is a common method of network segregation. It separates publicly accessible services (e.g., web servers) from the internal network, ensuring that attackers who penetrate the DMZ remain isolated from internal systems. + +**Techniques for Network Segregation** + +- **Virtual LANs (VLANs)**: VLANs allow for the separation of devices within a physical network into different logical segments. For example, one VLAN could be for all employees, another for IT systems, and a third for sensitive financial systems. +- **Firewall Rules**: Firewalls can be configured to allow traffic between different network segments only under specific conditions. For example, traffic between untrusted and trusted systems can be blocked or restricted. +- **Network Segmentation with Subnets**: By dividing the network into subnets (smaller, logical network areas), traffic can be controlled and isolated. This is particularly important for controlling access to sensitive data and systems. +- **Access Control Lists (ACLs)**: ACLs can be used to control access to specific parts of the network based on origin, destination, or other criteria. This provides an additional layer of security in network segregation. + +**Monitoring and Logging** + +- **Network Monitoring**: With network separation, specific monitoring strategies can be implemented for each segment. Critical systems should be equipped with more intensive monitoring to quickly detect unusual behavior or potential security incidents. +- **Logging**: All security-related activities, such as access attempts or errors, should be logged. The logs should be reviewed regularly to identify potential security gaps or violations of network segregation. + +**Access Controls Between Segments** + +- **Firewall Policies**: Strict firewall policies should be implemented to control traffic between different network segments. Only necessary connections (e.g., between an application and a database) should be allowed, while others should be blocked. +- **Access Only When Needed**: Access to another segment of the network should only be granted when necessary for fulfilling a specific function (principle of least privilege). +- **Management of Network Access Rights**: For each network segment, clear access policies must be defined, specifying who can access which systems and resources. + +**Maintenance and Regular Review** + +- **Security Audits**: Regular reviews and audits should be conducted to ensure that network segregation is effectively implemented and that no unauthorized connections or access exist. +- **Adjustments and Updates**: If the organization’s structure or requirements change, network segregation and security policies must be adjusted accordingly. + + +

Objective of this rule:

+ + +The goal of this rule is to enhance the security of the network infrastructure by separating different groups of information services, users, and information systems. This separation helps limit the impact of security incidents, maintain data integrity and confidentiality, and prevent unauthorized access to sensitive information. Network segregation improves the monitorability, controllability, and security of the IT infrastructure. + + +
+ + + + + + + + + + + + + + + + + +
+ + +### A.8.23 Web filtering + + + +

Explanation:

+ +This rule pertains to web filtering, which controls access to external websites to minimize exposure to harmful or malicious content, thus increasing the organization’s security. + + + +

What does this mean in practice?

+ + + +**Why is web filtering important?** + +- **Protection Against Malware and Viruses**: External websites are often a source of malware, viruses, or ransomware. By blocking access to dangerous or insecure websites, the risk of infection to devices and networks is reduced. +- **Protection Against Phishing Attacks**: Web filters can also help block phishing sites that attempt to steal sensitive information such as usernames, passwords, or credit card details. +- **Minimization of Data Breaches**: By blocking potentially harmful websites, data breaches can be avoided that could result from inadvertently downloading insecure material onto company devices. +- **Prevention of Access to Inappropriate Content**: Web filtering can also help prevent access to inappropriate or non-work-related websites, such as extreme content or entertainment sites, improving productivity. + +**Implementation of Web Filtering** + +- **Category-Based Blocking**: Websites can be blocked based on categories such as malware, phishing, spam, social media, online shopping, or adult content. These categories can be updated regularly to address new threats. +- **Real-Time Filtering**: Web filters should be capable of conducting real-time analysis of websites to block malicious sites as soon as they are detected. This can involve the use of blacklists (lists of known harmful websites) and heuristic or behavior-based analysis methods. +- **URL Blocking**: Specific URLs or domain names can be directly blocked if they are deemed dangerous or inappropriate. +- **File Download Verification**: Web filters can also monitor file downloads and block potentially harmful files, such as executable files (.exe) that attackers might use to spread malware. + +**Ensuring Appropriateness** + +- **Customizing Filter Rules**: Filter rules should be reviewed regularly and adjusted to account for the current threat landscape. New threats or harmful websites need to be incorporated into the filtering process. +- **Defining Access Rights**: Certain user groups (e.g., IT administrators or executives) may have higher access rights to websites than other users, depending on their role or necessity. +- **Whitelist and Blacklist**: A whitelist (a list of trusted websites) can be used to ensure that certain sites remain accessible despite general filtering. Similarly, a blacklist can include sites that are permanently deemed harmful or inappropriate. +- **Deep Content Inspection**: Filters should be capable of analyzing the content of a website (not just the URL). They can detect and block harmful content such as JavaScript, exploits, or malware payloads before they reach end devices. + +**Logging and Monitoring** + +- **Access Logs**: All website access attempts (whether successful or blocked) should be recorded in logs for auditing purposes and to identify potentially risky access attempts. +- **Alerting**: In the event of accessing suspicious websites or attempting to download malware, alert notifications should be sent to the IT security team. +- **Reporting and Analysis**: Web filters can also generate reports that show which websites were most frequently blocked, which threats were successfully mitigated, and which users or devices were potentially exposed. + +**User Training** + +- **Awareness**: Users should be regularly educated on the importance of safe web usage. A better understanding of the risks associated with malicious websites and phishing attacks will help employees recognize and avoid threats. +- **Behavioral Guidelines**: In addition to technical filtering, clear guidelines for safe browsing and internet service usage should be established to prevent employees from accessing potentially harmful websites. + +**Exceptions and Continuous Improvement** + +- **Exception Handling**: In certain cases, users may need access to websites that are normally blocked. These exceptions should be requested and approved through a controlled process. +- **Regular Updates**: Web filtering systems should be reviewed and updated regularly with the latest threat intelligence and vulnerabilities to ensure filtering effectiveness. + + +

Objective of this rule:

+ + +The goal of this rule is to minimize exposure to harmful or malicious content from the web, thereby increasing the organization’s security. By implementing web filtering, businesses can prevent users from accessing potentially dangerous websites that might contain malware, viruses, or phishing attacks. Furthermore, it helps improve productivity by controlling access to non-work-related or inappropriate websites. + + +
+ + + + + + +
+ + +### A.8.24 Use of cryptography + + + +

Explanation:

+ +This rule pertains to the use of cryptography within an organization to ensure that sensitive information is protected both during storage and transmission. Cryptography helps ensure the confidentiality, integrity, and authenticity of information by encrypting it. This also includes the management of cryptographic keys. + + + +

What does this mean in practice?

+ + + +**Why is cryptography important?** + +- **Protection of Confidentiality**: Through encryption, sensitive data is made unreadable to unauthorized parties, ensuring that only authorized individuals or systems can decrypt the information. +- **Integrity and Authenticity**: Cryptographic methods ensure that data has not been altered or tampered with and confirm the sender's identity (e.g., via digital signatures). +- **Securing Communication**: Encryption protects communication channels (e.g., emails, data transfers) from eavesdropping and man-in-the-middle attacks. +- **Compliance with Legal Requirements**: Many legal regulations require the protection of sensitive data, especially in sectors like healthcare, finance, and when processing personal data (e.g., GDPR in Europe). Encryption ensures that these requirements are met. + +**Cryptographic Key Management** + +Key management is a critical aspect of cryptography. It involves how keys are generated, stored, distributed, used, checked, and destroyed. Poor key management can compromise the entire security of encryption. +- **Key Lifecycle**: The lifecycle of a cryptographic key includes several phases: + - **Key Generation**: The creation of secure, random, and hard-to-guess keys. + - **Key Storage**: Keys must be securely stored, such as in a Hardware Security Module (HSM) or another secure environment. + - **Key Distribution**: Keys must be securely and encryptedly distributed to authorized parties, e.g., through encrypted channels. + - **Key Rotation and Renewal**: Keys should be regularly replaced (rotated) and renewed to maintain security. + - **Key Destruction**: Old or unnecessary keys should be securely destroyed to prevent misuse. +- **Centralized Management**: A centralized key management system can be used to standardize key management, storage, and distribution, ensuring proper key management. + +**Encryption Techniques and Standards** + +- **Symmetric Encryption**: This technique uses the same key for both encrypting and decrypting data. Examples include AES (Advanced Encryption Standard) and 3DES. +- **Asymmetric Encryption**: Two keys are used here: a public key for encryption and a private key for decryption. RSA and ECC (Elliptic Curve Cryptography) are common asymmetric methods. +- **Hash Functions**: These functions generate a checksum (hash value) from input data and are often used for data integrity verification and digital signatures. Examples include SHA-256 and MD5 (though MD5 is no longer considered secure). +- **Digital Signatures**: Digital signatures allow verification of the authenticity and integrity of data. They are based on asymmetric encryption and are an important component of electronic contracts and documents. +- **Transport Encryption**: When transmitting data over networks (e.g., emails, web applications), transport encryption such as TLS (Transport Layer Security) or SSL (Secure Sockets Layer) should be used to protect the communication from eavesdropping. + +**Setting Security Policies** + +- **Encryption Policies**: Clear policies must be created outlining which data needs to be encrypted, which encryption methods are to be used, and how key management should be handled. +- **Required Encryption**: Certain data, due to its sensitivity, must be encrypted. This may include personal data, financial information, proprietary company data, or protected health information. +- **Compliance with Standards**: Encryption must comply with relevant standards and best practices. The use of proven standards like AES-256, RSA-2048, and ECC is recommended. + +**Use Cases for Cryptography** + +- **Data Storage**: Encryption should be applied to storage media (such as hard drives or cloud storage) to protect stored data. +- **Data Transmission**: When transmitting data over networks, it should be protected with secure protocols such as HTTPS or VPNs. +- **Email Encryption**: To protect emails from unauthorized access, techniques such as S/MIME or PGP (Pretty Good Privacy) should be used. +- **File Encryption**: Individual files or databases containing sensitive information should be protected with appropriate encryption techniques. + +**Audit and Review of Cryptography** + +- **Cryptographic Protocol Review**: The cryptographic protocols and methods used should be regularly checked for vulnerabilities to ensure no new security gaps have emerged. +- **Key Management Audit**: Regular audits of key management are necessary to ensure all keys are properly managed and that no keys are being misused or lost. +- **Reporting and Documentation**: All cryptographic measures, including the methods used and the management of keys, should be documented and reviewed regularly. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure the effective use of cryptography to protect the confidentiality, integrity, and authenticity of information. It ensures that encryption techniques and methods are properly implemented and that cryptographic keys are securely managed. This helps minimize security risks and ensures compliance with legal requirements. + + +
+ + + + + + + + + + + + +
+ + + +### A.8.25 Secure development life cycle + + + +

Explanation:

+ +This rule pertains to the Secure Development Life Cycle (SDLC), which ensures that software and systems are securely developed and equipped with security measures from the outset to minimize vulnerabilities and address potential threats throughout the development process. + + +

What does this mean in practice?

+ + + +**Why is a secure development life cycle important?** + +- **Early Detection of Vulnerabilities**: By implementing security measures early in the development stages, vulnerabilities and security gaps can be identified and addressed in time. +- **Avoiding Security Holes in the Final Product**: If security aspects are ignored during development, they may be carried over into the final product, offering attack surfaces to potential attackers. +- **Protection of Sensitive Data**: Securely developed software protects personal data, financial data, business-critical information, and other sensitive data from unauthorized access. +- **Compliance with Security Standards and Regulations**: A secure development process ensures that the developed systems and software meet applicable security standards and regulations, such as the General Data Protection Regulation (GDPR) or ISO 27001. + +**Phases of the Secure Development Life Cycle** +The SDLC consists of several phases, with security aspects needing to be considered at each stage: + +- **Requirements Analysis**: Security requirements should be gathered in the planning phase. This includes identifying potential threats and setting security objectives, which are integrated with the functional requirements of the software. +- **Design**: During the design phase, security-oriented design should be applied. This can include using threat modeling techniques (e.g., STRIDE or PASTA) to identify potential attack vectors. Measures like the principle of least privilege and fault tolerance should also be considered. +- **Development**: During the actual coding phase, secure coding practices must be followed. Developers should consider best practices such as avoiding SQL injection, Cross-Site Scripting (XSS), and Cross-Site Request Forgery (CSRF). The use of static and dynamic code analysis tools for early detection of security vulnerabilities is also crucial. +- **Testing**: In the testing phase, security tests should be conducted, such as penetration testing, code reviews, and vulnerability scans. Known vulnerabilities in the software are tested to ensure no undetected security gaps remain. +- **Deployment**: Before deployment, the software should be securely configured, e.g., by using secure default configurations, disabling unnecessary services, and implementing security policies for production environments. +- **Maintenance and Updates**: After deployment, the software should be continuously monitored for security vulnerabilities and regularly updated with the latest security patches. Vulnerabilities should be patched and addressed as quickly as possible. + +**Best Practices for Secure Code** + +- **Input Validation**: All user inputs should be carefully validated to prevent injection attacks (e.g., SQL injection) or buffer overflow attacks. +- **Error Handling**: Error handling should be designed in such a way that no sensitive information (e.g., stack traces or database details) is exposed in error messages. +- **Encryption**: All sensitive data should be protected by secure encryption protocols both in storage and during transmission. +- **Authentication and Authorization**: A secure system must include robust user authentication mechanisms (e.g., multi-factor authentication) and access control mechanisms (e.g., role-based access control). +- **Security Policies**: Development teams should be trained on security policy compliance, and a security-oriented organizational culture should be established. + +**Threat Modeling and Risk Management** + +- **Threat Modeling**: Threat modeling is a method to understand how an attacker could exploit the software or system. By identifying threats and vulnerabilities during the development phase, appropriate security measures can be implemented. +- **Risk Management**: Risk management strategies need to be developed to determine which threats are most likely and which would have the most severe impact. Based on this, priorities should be set for which security measures need to be implemented. + +**Training and Awareness** + +- **Security Awareness**: Developers must regularly be trained in secure coding techniques to ensure they are aware of potential risks and best practices. +- **Automated Tools**: Tools should be employed that can automatically identify security vulnerabilities (e.g., static analysis, software composition analysis). These tools can help ensure that no security gaps go undetected. + +**Regulations and Standards** + +- **Compliance with Standards**: The secure development life cycle should follow certain standards and best practices, such as the OWASP Top 10 (the ten most common security risks in web applications) or ISO/IEC 27034 (security management for software). +- **Regulations for Security Reviews**: The development process should include regular security reviews where all security practices are evaluated to ensure they meet the latest threats and standards. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure the security of software and systems throughout the entire development process by incorporating security aspects from the outset. This minimizes potential vulnerabilities and reduces the risks of security holes in the final product. A secure development life cycle helps create secure software products that comply with relevant security standards and ensure the protection of sensitive data. + + +
+ + +
+ + +### A.8.26 Application security requirements + + + +

Explanation:

+ +This rule pertains to the security requirements for applications that must be identified, specified, and approved during the development or procurement of software. The goal is to ensure that information security is considered from the very beginning of the development process to avoid security gaps and ensure the protection of sensitive data. + + +

What does this mean in practice?

+ + + +**Why are security requirements important?** + +- **Protection Against Security Gaps**: If security requirements are not defined during the development or procurement of applications, the software could contain security gaps that allow attackers to access sensitive information or compromise systems. +- **Prevention of Data Loss**: Security requirements help prevent data loss or leaks by ensuring that the application is protected during both data transmission and storage. +- **Compliance with Legal Regulations**: Applications that meet security requirements support compliance with data protection laws (e.g., GDPR) and other regulatory requirements that mandate the protection of personal and confidential data. + +**Process of Identifying Security Requirements** + +- **Requirements Analysis**: At the start of a project, whether developing new applications or procuring software, information security requirements must be established. These requirements are derived from identifying risk factors, vulnerabilities, and threats specific to the application. +- **Defining Security Objectives**: The security objectives must be clearly defined, such as the confidentiality, integrity, availability, and authenticity of data. Requirements for user authentication, access control, and data encryption should also be formulated. +- **Considering Threat Models**: Threat modeling should be performed during the definition of security requirements to identify potential attack vectors and plan security measures to mitigate those threats. +- **Adhering to Best Practices**: Proven security standards and guidelines should be followed, such as the OWASP Top 10 (the ten most common security vulnerabilities in web applications) or ISO 27034 (security management for software development). + +**Specification and Documentation of Security Requirements** + +- **Documenting Security Requirements**: All identified security requirements must be documented in a detailed specification that includes both technical and organizational measures. + - **Technical Requirements**: These may include requirements for data encryption, multi-factor authentication, access controls, or the use of firewalls and intrusion detection systems (IDS). + - **Operational Requirements**: In addition to technical requirements, operational requirements should also be defined, such as ensuring availability, error handling, or patches and updates. + +**Approval of Security Requirements** + +- **Involving Stakeholders**: The defined security requirements must be reviewed and approved by relevant stakeholders in the organization, such as security officers, IT administrators, and management. +- **Formal Approval**: A formal approval of the security requirements ensures that all parties involved understand and accept the necessity and importance of the security measures. + +**Integration of Security Requirements into the Development Process** + +- **Implementing Security Requirements**: Security requirements must be considered and implemented as part of the overall development process and also during the procurement of applications. They should be integrated into the design, coding, and testing of the software. +- **Continuous Review**: During the development or integration of the application, security requirements should be continuously monitored and reviewed to ensure they are adhered to throughout the application's lifecycle. + +**Considering Third-Party and External Applications** + +- **Security Requirements for Third Parties**: When applications are developed or procured from third parties, security requirements must also apply to this software. This includes reviewing security standards and ensuring that the third party complies with all relevant security guidelines. +- **Integration into Existing Infrastructure**: External applications must be securely integrated into the organization’s existing infrastructure and security architecture, for example, through interfaces, API security, and access rights. + +**Maintenance and Monitoring of the Application** + +- **Maintenance Requirements**: After deployment, the application must be continuously reviewed for security gaps and updated or patched regularly. This can include regular penetration tests, code reviews, and security updates. +- **Monitoring**: The application should be continuously monitored post-deployment to detect potential security incidents or anomalies and to respond accordingly. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that security requirements are defined and applied early in the development or procurement process of an application. By setting security measures at the outset, it ensures that the developed or procured applications are secure, protecting sensitive data and the organization's IT infrastructure. This also contributes to compliance with regulations and best practices, reducing the risk of security gaps or breaches. + + +
+ + + + + + + +
+ + +### A.8.27 Secure System Architecture and Engineering Principles + + + +

Explanation:

+ +This rule pertains to the principles for developing secure systems, ensuring that these principles are established, documented, maintained, and applied to all information system development activities. The goal is to incorporate security aspects into the architecture and engineering of systems to ensure a high level of security from the very beginning. + + +

What does this mean in practice?

+ + + +**Why are secure architecture and engineering principles important?** + +- **Avoiding Security Gaps**: Without clear security principles, information systems may contain vulnerabilities or security gaps that allow attackers to gain unauthorized access or manipulate data. +- **Protection of Integrity, Confidentiality, and Availability**: Security principles help protect data from unauthorized access, maintain data integrity, and guarantee the availability of systems. +- **Effective Risk Mitigation**: By applying secure principles, potential risks are identified and minimized early, leading to better overall security. +- **Compliance with Regulations and Standards**: The application of security principles helps organizations comply with legal and regulatory requirements such as GDPR or ISO 27001. + +**Principles of Secure System Architecture** + +- **Protection Needs**: When developing a secure system architecture, the protection needs of data and systems must be identified to define the necessary security measures. +- **Defense in Depth**: Security measures should be built at multiple layers (e.g., through network security, application firewalls, encryption, and access controls) to reduce the likelihood of a successful attack. +- **Minimal Access**: The architecture should ensure that only authorized users or processes have access to sensitive systems and data. Principles like Least Privilege and Need to Know should be considered. +- **Fault Tolerance and Recovery**: The architecture should be designed to tolerate faults, minimize malfunctions, and integrate redundancy to ensure high availability. + +**Principles of Secure System Engineering** + +- **Define Security Requirements Early**: Security aspects should be considered early in the development phase and integrated into system requirements to prevent security gaps from the start. +- **Correct Software and Hardware Specifications**: Software and hardware must be developed according to well-defined secure specifications, considering security standards such as ISO/IEC 27001 or OWASP. +- **Secure Code**: When programming, best security practices should be applied to avoid common vulnerabilities like SQL injection or Cross-Site Scripting (XSS). +- **Automated Testing**: Security testing, such as code reviews, penetration testing, or static code analysis, should be conducted regularly to identify and fix vulnerabilities. +- **Continuous Integration and Deployment (CI/CD)**: Security principles should also be integrated into automated processes like Continuous Integration and Continuous Deployment to ensure secure releases at every stage of development. + +**Documentation and Maintenance of Security Principles** + +- **Documentation**: All security principles and policies should be documented so that all stakeholders can access and comply with the same security standards. +- **Maintenance of Principles**: Security principles should be regularly reviewed and updated as needed to keep pace with evolving threats and new technologies. + +**Integrating Security into the Entire Development Process** + +- **Security-Oriented Design**: Security principles must not only be considered in system architecture but also in system design, system integration, and throughout the entire development lifecycle. +- **Creating a Security Culture**: Security principles should not just exist on paper; the entire organization must foster a security-conscious culture. All stakeholders should be trained in security matters and understand the importance of security. + +**Considering Threats and Vulnerabilities** + +- **Threat Modeling**: Security principles should be built upon thorough threat modeling to identify potential attack vectors. This involves analyzing potential threats and vulnerabilities and defining appropriate protective measures. +- **Risk Management**: Risk management plays a central role in deciding which security principles and measures are most important to prevent or mitigate potential threats. + +**Application of Principles to All Development Activities** + +- **Holistic Approach**: These principles should be applied to all types of information systems—whether internal systems, cloud-based applications, or third-party software. +- **Scalability and Flexibility**: The security architecture must be designed to scale with the organization's growth. This means that the architecture must be scalable and flexible to handle future threats and new technologies. + + +

Objective of this rule:

+ + +The goal of this rule is to integrate security-oriented principles and practices into the development process of information systems. By considering these principles from the start, it ensures that developed systems are secure, resilient, and scalable, protecting sensitive data and ensuring compliance with security requirements. It aims to create a secure development lifecycle that includes not only technical but also organizational security requirements. + + +
+ + + + + + + + + + + + +
+ + +### A.8.28 Secure Coding + + + +

Explanation:

+ +This rule pertains to the application of secure coding principles in software development. The goal is to ensure that the software products developed are secure and resilient against attacks by preventing vulnerabilities during the programming phase. + + +

What does this mean in practice?

+ + + +**Why is secure coding important?** + +- **Avoiding Security Vulnerabilities**: Security gaps can easily arise during programming, allowing attackers to access or compromise systems (e.g., through SQL injection, Cross-Site Scripting (XSS), or buffer overflows). Secure coding helps prevent these vulnerabilities. +- **Protection of Sensitive Data**: Applications that are not securely coded can expose sensitive data (such as passwords, personal information, or financial data) without proper protection. +- **Compliance with Legal Regulations**: Secure coding contributes to ensuring that software complies with data protection laws (e.g., GDPR) and other security standards (e.g., ISO 27001). + +**Principles of Secure Coding** + +- **Validate Input Values**: One of the key principles of secure coding is to thoroughly validate and sanitize all input values, whether they come from users or other systems, to prevent attacks such as SQL injections or Cross-Site Scripting (XSS). +- **Avoid Unsafe Code**: Developers must avoid unsafe code (e.g., unvalidated inputs, insecure function calls, or improper password storage) and instead use secure alternatives. +- **Principle of Least Privilege**: Every functionality or user interacting with the software should have only the minimum rights necessary to perform their task. This reduces the risk of unauthorized access or manipulation. +- **Use of Secure Libraries and Frameworks**: Instead of custom solutions, developers should use well-established, secure libraries or frameworks that are regularly reviewed and patched for security vulnerabilities. +- **Error Handling and Logging**: Errors should be handled securely without disclosing sensitive information. When logging errors, confidential data (e.g., passwords or internal system details) should not be written to logs. +- **Use of Secure Communication Protocols**: All data transfers should be conducted using secure protocols like TLS (Transport Layer Security) to ensure that data cannot be intercepted or tampered with during transmission. + +**Secure Coding Techniques** + +- **Avoid Hardcoded Passwords**: Passwords and other sensitive data should never be hardcoded in the code. They should be securely stored in environment variables or encrypted configuration files. +- **Secure Password Storage**: Passwords must always be stored using secure methods, such as hashing and salting, never in plain text. +- **Avoid Buffer Overflows**: Programs should be written to prevent buffer overflows by checking input sizes and providing sufficient buffers. +- **Use Secure APIs**: Developers should ensure they use secure APIs (Application Programming Interfaces) that are resistant to common security vulnerabilities. + +**Developer Training** + +- **Security Awareness Training**: Developers need to be trained in secure coding principles to ensure they are aware of potential security risks and incorporate them into their code. +- **Best Practices and Standards**: Developers should be familiar with best practices and security standards that promote secure coding, such as OWASP (Open Web Application Security Project) and CIS (Center for Internet Security). + +**Review and Testing** + +- **Security Reviews**: Code should be regularly reviewed for security vulnerabilities through code reviews, static code analysis, and penetration testing. This helps to identify and address potential weaknesses early. +- **Automated Tests**: Automated tests should be developed to detect security vulnerabilities before code is deployed to production. +- **Real-World Testing**: Software should be tested in realistic attack scenarios to ensure that it remains robust under potential attack. + +**Integration into the Development Process** + +- **Security throughout the Lifecycle**: Security principles should not only be considered during the development phase, but also during planning, design, testing, and maintenance. This is often referred to as the Secure Development Lifecycle (SDLC). +- **Continuous Integration of Security Measures**: Security measures should be part of the CI/CD process (Continuous Integration/Continuous Deployment), so vulnerabilities can be identified and addressed early. + + +

Objective of this rule:

+ + +The goal of the "Secure Coding" rule is to develop secure software from the outset by applying best coding techniques that prevent potential security vulnerabilities. By integrating secure coding principles into the development process, the risk of data loss, security breaches, and system attacks is reduced. This ensures that applications are not only functional but also trustworthy and resilient to threats. + + +
+ + + + + + + + + +
+ + +### A.8.29 Security Testing in Development and Acceptance + + + +

Explanation:

+ +This rule pertains to the definition and implementation of security testing processes throughout the entire development lifecycle, both during development and during the acceptance phase of software. It ensures that security aspects are systematically reviewed before the software goes into production or is accepted. + + +

What does this mean in practice?

+ + + +**Why are security tests important?** + +- **Early Detection of Vulnerabilities**: Regular security tests during the development process help identify potential vulnerabilities early, before the software goes live and becomes susceptible to attacks. +- **Protection of Sensitive Data**: Ensuring that no confidential or sensitive data is exposed due to insecure coding or insufficient security measures is of utmost importance. +- **Avoidance of Reputation Damage**: Security incidents or data breaches can significantly damage a company's reputation. Security testing helps prevent such incidents. +- **Compliance with Regulations**: Many industries have legal and regulatory requirements that mandate regular security reviews of software (e.g., GDPR, PCI DSS). + +**Types of Security Tests in the Development Process** + +- **Static Code Analysis**: This involves examining the source code without execution to identify possible security gaps, such as insecure coding practices or faulty implementations. +- **Dynamic Analysis**: Here, the software is tested during execution to identify runtime issues and vulnerabilities such as buffer overflows, memory leaks, or insecure API calls. +- **Penetration Testing (Pen-Tests)**: These are simulated attacks on the system where attempts are made to penetrate the system in order to identify real vulnerabilities. These tests can be automated or manual. +- **Fuzzing**: Fuzzing is a testing technique where random or unexpected data is sent to a system to provoke errors or security gaps. +- **Security Reviews**: Detailed code or architecture reviews by security experts help identify potential weaknesses that automated tools may overlook. +- **Component Testing**: Every module or component of the software should be tested for security, especially when external libraries or APIs are used. + +**Security Testing During the Development Phase** + +- **Integration of Security Tests into the Development Process**: Security tests should not only be conducted at the end of the development process but continuously throughout the entire software development cycle. This is often considered part of the Secure Development Life Cycle (SDLC). +- **Automation of Tests**: To increase the efficiency and frequency of testing, security tests should be automated. Automated tests can ensure that the code is continuously checked for vulnerabilities with every change. +- **Security Testing During Coding**: Developers should perform security testing during coding, such as using static code analysis tools or IDE plugins that immediately highlight security gaps in the code. + +**Security Testing During the Acceptance Phase** + +- **Acceptance by Security Experts**: Before software is released, it should be tested by security experts to ensure that all security requirements are met. +- **Acceptance Tests**: In this phase, both functional and non-functional tests should be conducted, with a focus on the security of the application. The tests should ensure that all security mechanisms like access controls, encryption, and authentication are correctly implemented. +- **Testing Interfaces**: At this stage, it is important to test all external interfaces (APIs, web services) for security gaps, as these can be potential entry points for attackers. + +**Testing of Security Requirements** + +- **Verification of Security Requirements**: All established security requirements, such as data encryption, access controls, or authentication mechanisms, must be tested to ensure they are correctly implemented and in line with the organization’s security policies. +- **Assess and Prioritize Security Gaps**: After the tests, all identified security gaps should be assessed and prioritized. Critical gaps must be fixed before the system is released. + +**Integration of Security Tests into the CI/CD Process** + +- **Continuous Integration (CI)**: Security tests should be part of the CI process to ensure that the software is continuously checked for vulnerabilities during development. +- **Continuous Delivery (CD)**: In the CD process, security tests should also be regularly conducted to ensure that only secure versions of the software are deployed to the production environment. + +**Documentation and Reporting** + +- **Generate Test Reports**: All security tests should be thoroughly documented, including identified vulnerabilities, their severity, and the actions taken to address them. +- **Communicate Results to Stakeholders**: The results of security tests should be communicated to relevant stakeholders (e.g., developers, project managers, security teams) to ensure that everyone is on the same page and necessary actions are taken. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that security gaps are detected and addressed early in the software development process. By integrating security tests into the development and acceptance process, the likelihood of insecure software reaching production is reduced. This contributes to ensuring that the software is resilient against attacks, data integrity is maintained, and compliance with security standards is achieved. + + +
+ + + + +
+ + +### A.8.30 Outsourced Development + + + +

Explanation:

+ +This rule pertains to the outsourcing of system development activities to external service providers or vendors. It ensures that the organization takes responsibility for overseeing and controlling outsourced development processes to ensure that security standards and quality requirements are met. + + +

What does this mean in practice?

+ + + +**Why is controlling outsourced development important?** + +- **Minimizing External Risks**: Outsourcing development processes to third-party vendors can introduce potential security and privacy risks that may not be present in internal development. The organization must ensure that all security requirements are also adhered to by external providers. +- **Ensuring Quality**: The quality of outsourced development work must be monitored to ensure that it meets the set requirements. This applies to both technical and security standards. +- **Responsibility Remains with the Organization**: Even when development is outsourced to third parties, the organization remains responsible for the final product. The organization must ensure that the vendor follows relevant regulations and best practices. +- **Avoiding Contractual and Compliance Issues**: When outsourcing, care must be taken to ensure that contractual agreements and legal regulations are followed to avoid legal or financial problems. + +**Direction and Control of Outsourced Development Activities** + +- **Contractual Agreements**: Before collaborating with an external developer or service provider, clear contractual agreements must be made that outline security requirements, quality standards, and milestones. These agreements should also include clauses regarding data protection and confidentiality. +- **Assignment of Responsibilities**: The organization must ensure that both internal responsibilities and those of the external provider are clearly defined, especially regarding security monitoring and troubleshooting. +- **Monitoring External Activities**: The organization must regularly monitor the progress and quality of work performed by the service provider. This can be done through regular reporting, meetings, and reviews. + +**Ensuring Security and Quality Requirements** + +- **Security Standards and Compliance**: The organization must ensure that the external service provider follows the same security standards and compliance requirements as those followed internally. This includes data protection requirements and industry-specific security regulations (e.g., GDPR, ISO 27001). +- **Security Reviews**: The service provider should be regularly reviewed for security vulnerabilities and violations of best practices. These reviews may include code reviews, penetration tests, or security audits. +- **Trustworthiness of the Provider**: Before assigning development tasks to a vendor, the organization must ensure that the provider is trustworthy regarding security and data protection practices and has not had any security incidents in the past. + +**Monitoring and Reporting** + +- **Monitoring Progress**: The organization must regularly review the progress of outsourced development. This includes not only technical milestones but also security and privacy requirements that must continuously be considered. +- **Adherence to Agreed Deadlines**: The deadlines and milestones set in the contract with the external service provider must be monitored to ensure that the project stays on schedule. +- **Reporting**: The external service provider should provide regular reports on the development progress and any security or compliance issues. These reports should be reviewed by internal security and quality teams. + +**Review and Acceptance of Results** + +- **Code Reviews and Security Testing**: The completed code should be reviewed by internal security and quality teams to ensure that it meets the organization’s standards. This can be done through static code analysis, penetration tests, or manual security reviews. +- **Acceptance Testing**: After development work is complete, the organization should conduct comprehensive acceptance testing to ensure that the system meets security, performance, and functionality requirements. + +**Continuous Communication and Feedback** + +- **Regular Communication**: Throughout the project, there should be continuous communication between the organization and the external service provider. This includes regular meetings to discuss project progress, security challenges, and potential changes. +- **Feedback Mechanisms**: There should be clear mechanisms for providing feedback from the organization to the external provider, particularly when it comes to improvements in security or quality. + +**Contract Termination and Follow-up** + +- **Final Audits**: At the end of the project, a final audit should be conducted to ensure that all contractual and security-related requirements have been met. +- **Data Return and Destruction**: It must be ensured that any sensitive data handled by the external provider is properly returned or securely destroyed once the project is completed. +- **Contract Termination**: If the provider fails to meet their contractual obligations, mechanisms for contract termination and damage mitigation must be in place. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that outsourced development activities are conducted under controlled conditions to minimize risks and ensure that the organization’s security standards and quality requirements are adhered to by external service providers. By carefully monitoring and managing the entire development process, the security and quality of the final product are ensured. + +
+ + + + + + + +
+ + +### A.8.31 Separation of development, test, and production environments + + + +

Explanation:

+ +This rule pertains to the separation and securing of different environments used in the software development process. Development, testing, and production environments should be separated and adequately secured to minimize risks and ensure system security. + + + +

What does this mean in practice?

+ + + +**Why is the separation of environments important?** + +- **Protecting the production environment**: The production environment is where live systems are running. Changes to this environment should be made with utmost caution and only after thorough testing to avoid disruptions, failures, or security vulnerabilities. +- **Minimizing risks**: If the development or test environment is directly connected to the production environment, unauthorized changes, errors, or security flaws from the development or test phase could be introduced into production, causing damage. +- **Avoiding unintended changes**: If development and testing processes occur in the production environment, unintended changes to live data or systems may occur. This could lead to the corruption of critical business data or functionality. +- **Controlled testing**: To check software changes and updates for security and functionality, these should be tested in a separate environment that does not impact the production environment. + +**Development Environment** + +- **Security measures**: The development environment is where new features and changes to the software are created. It should be protected by firewall rules, access controls, and encryption to ensure that the code cannot be accessed or modified without authorization. +- **Access control**: Only authorized developers should have access to this environment to prevent unauthorized changes to the code or applications. +- **Protecting the source code**: Since new software components are developed and tested here, access to the source code must be tightly controlled to minimize the risk of data leaks or code theft. + +**Test Environment** + +- **Isolation of production data**: The test environment should not use real production data. If real data is necessary, it should be masked or anonymized beforehand to prevent privacy violations. +- **Testing changes and new features**: New software components should be thoroughly tested in the test environment to ensure they work as expected without affecting the production environment. +- **Simulated production conditions**: It is important that the test environment mimics the production environment as closely as possible to conduct realistic tests. However, it should remain isolated from production to prevent unintended impacts on the system. + +**Production Environment** + +- **Maximum security**: The production environment must be secured to the highest standards, as it contains real user data and applications. Strict security measures are required to prevent failures, data loss, or unauthorized access. +- **Only tested changes**: Changes to the production environment should only be made if they have been thoroughly tested in the test environment and deemed safe. +- **Restricting access**: Access to the production environment should be strictly controlled and only authorized personnel should be allowed. Detailed logs should be kept for all changes and activities in the production environment. + +**Separation of Environments in Practice** + +- **Physical separation**: If possible, there should be physical separation between environments, such as using different servers or networks, to minimize the risk of unauthorized access or accidental changes. +- **Virtual separation**: If physical separation is not feasible, the environments can be separated through virtualization or containerization. Clear access policies and network segregation should be defined in these cases. +- **Different access controls**: Each environment should have its own specific access controls. Developers should only have access to the development and test environments, while administrators should only access the production environment. + +**Monitoring and Auditing** + +- **Logging and monitoring**: Each environment should be continuously monitored for security incidents and unauthorized access. All activities, especially changes to systems or data, should be logged and regularly reviewed. +- **Separation of administrative rights**: Personnel with administrative rights in the development or test environment should not have access to the production environment, and vice versa. + + +

Objective of this rule:

+ + +The goal of this rule is to ensure that each environment maintains its own integrity and security so that unauthorized changes or security vulnerabilities are not transferred between environments. This separation reduces the likelihood that development errors, untested software, or security gaps will make their way into the production environment and cause damage. + +
+ + + + + +
+ + +### A.8.32 Change management + + + +

Explanation:

+ +The "Change Management" rule refers to the structured management and control of changes to information systems and IT infrastructures. The goal of this rule is to ensure that changes are properly planned, documented, approved, and monitored to minimize potential risks or negative impacts on IT security and operations. + + + +

What does this mean in practice?

+ + + +**Why is Change Management important?** + +- **Minimizing risks**: Changes to information systems and IT infrastructures can cause unforeseen errors or security vulnerabilities that can impact the availability, integrity, and confidentiality of systems. A change management process ensures that changes are thoroughly reviewed and tested before being deployed into production. +- **Avoiding uncontrolled changes**: Without a structured process, changes could be made by unauthorized or inexperienced individuals, leading to instability or outages. +- **Preserving system integrity**: To ensure that all changes comply with established security policies and technical standards, it is necessary that all changes are documented and monitored. + +**Change Management Process** + +- **Request**: Every change must undergo a documented request process, describing why the change is necessary and what impact it could have on the system. This request can be initiated through a Change Request (CR). +- **Evaluation and approval**: Each request must be reviewed and approved by a Change Advisory Board (CAB) or another authorized committee. They assess whether the change is secure, delivers the desired results, and does not introduce unforeseen risks. +- **Testing**: Before being implemented into the production environment, all changes should be tested in a test environment. This helps identify potential errors or issues before they impact the live system. +- **Implementation**: Once a change is approved and tested, it is deployed to the production environment. The implementation process should also be well-documented and include clear roles and responsibilities. +- **Rollback plan**: A clear rollback plan must be in place in case a change fails or negatively impacts the system. This plan ensures that the system can be quickly restored to its stable state. +- **Documentation**: Every change must be documented in detail, including approvals, tests conducted, implementation details, and any issues or incidents during the process. + +**Control and Monitoring** + +- **Change monitoring**: It is essential that changes are continuously monitored to ensure they are properly implemented and do not have negative effects on the security or functionality of the system. +- **Traceability**: All changes should be documented in a way that they can be traced. This ensures that all stakeholders (e.g., developers, IT administrators, and auditors) have a clear overview of all changes. +- **Regular audits**: The change management process should be regularly audited to ensure it is functioning correctly and does not have any weaknesses that could compromise the security or integrity of the system. + + +

Objective of this rule:

+ + + +The main goal of change management is to ensure that all changes are made in a controlled and secure manner. This helps maintain the security, availability, and integrity of information systems, minimize errors, and ensure compliance with regulatory requirements. + +
+ + + + + + + + +
+ + +### A.8.33 Test information + + + +

Explanation:

+ +The "Test Information" rule refers to the secure handling of data used in test environments. Test data can contain sensitive or confidential information, so it is critical that this data is properly selected, protected, and managed to minimize potential security risks. + + + +

What does this mean in practice?

+ + + +**Why is the protection of test information important?** + +- **Protection of confidential data**: Test environments often contain copies of production data. This data may include sensitive information such as personal identification details, financial data, or confidential business information. If this data is not properly protected in test systems, it could lead to data leaks or theft. +- **Minimizing the risk of misuse**: Insufficiently protected test data could be misused by unauthorized personnel or third parties who have access to the test environments. Additionally, using real data in test systems could violate data protection laws. +- **Avoiding system vulnerabilities**: Changes or tests performed in test environments could unintentionally expose vulnerabilities, which could then be exploited if test data is not adequately secured. + +**Selection of Test Information** + +- **Use of anonymized or masked data**: If real production data is needed in test systems, it should be anonymized or masked to prevent sensitive information from being accessible. Identifiers such as names or account details should be replaced with random or fictitious values that realistically simulate the data without the risk of misuse. +- **Avoiding unnecessary data**: It is advisable to use only the data that is actually needed for testing. Minimizing the amount of test data helps reduce the amount of confidential information that might be exposed. + +**Protection of Test Information** + +- **Access control**: Test data should only be accessed or used by authorized individuals. Access rights to test environments and test data must be strictly controlled and regularly reviewed to prevent unauthorized access. +- **Encryption**: If test data contains sensitive information, it should be stored and transmitted securely using encryption to protect against data leaks. This applies to both data at rest (e.g., in databases) and data in transit over networks. +- **Logging and monitoring**: All access to and changes made to test data should be logged and monitored to ensure that only authorized users have access and that no unauthorized changes are made. +- **Data destruction**: When test data is no longer needed, it should be securely deleted to prevent sensitive information from being recovered by unauthorized parties. + + +

Objective of this rule:

+ + + +The main objectives of protecting and managing test data are to ensure the security and confidentiality of information and minimize the risk of data misuse and breaches of data protection laws. Additionally, it is intended to ensure that the testing process does not introduce weaknesses or security vulnerabilities that could impact the production environment. + +
+ + + + + + + +
+ + +### A.8.34 Protection of information systems during audit testing + + + +

Explanation:

+ +The "Protection of Information Systems during Audit Testing" rule refers to the secure handling of information systems and data during audit and testing processes. It is critical that audits and other security activities are conducted in a way that ensures the integrity and confidentiality of systems and data are maintained. + + + +

What does this mean in practice?

+ + + +**Why is protection during audits important?** + +- **Minimizing security risks**: Audit and test processes, especially security-related audits, can have system-wide impacts if conducted unchecked. There could be unintended disruptions in operation, data losses, or security gaps if sensitive information is not sufficiently protected during testing. +- **Protection of sensitive data**: During audits, confidential or sensitive data may be accessible. It must be ensured that this information is neither accidentally nor intentionally disclosed. +- **Avoiding unauthorized interventions**: Audits and tests require access to production systems. If this access is not properly managed, there is a risk that it could be misused for unauthorized purposes. + +**Planning and Coordination of Audit Tests** + +- **Coordination with management**: Before conducting an audit or test, the process must be coordinated with management to ensure that the test does not have undesirable effects on the systems and that necessary security precautions are in place. This includes access rights, test objectives, and risk assessments. +- **Defining test boundaries**: It should be clearly defined which systems and data can be tested during the audit and which cannot. Test boundaries should be set to ensure that the integrity of the system and data is not compromised. + +**Access Control and Permissions** + +- **Restricted access**: Access to the systems to be tested should be strictly regulated. Only authorized auditors or testers should have access to the relevant systems and data. Even after coordination, security-relevant access restrictions must be followed to avoid potential misuse. +- **Monitoring access**: All activities during the audit must be monitored and logged. This ensures that any unauthorized interventions or changes to the systems during the tests are detected immediately. + +**Conducting Audits and Tests** + +- **Test plan**: The test plan should precisely outline which tests will be conducted, how the systems will be examined, and what results are expected. The plan should also include measures to protect systems and data during the test. +- **Non-intrusive testing**: Auditors must ensure that test processes are designed in such a way that they do not have a negative impact on the systems. Testing methods should be used that do not cause disruptions or data alterations. + +**Security Measures during Audit Testing** + +- **Data protection**: During the audit, sensitive or confidential information must be protected. This includes measures like data encryption and access controls to ensure that only authorized individuals can access the data. +- **Avoiding disruptions**: To prevent affecting operations, audits should be conducted in such a way that production systems and business processes are not disrupted or interrupted. It may be necessary for audits to take place only at specific times or under certain conditions. + +**Post-Audit Activities and Reporting** + +- **Reporting results**: After the audit, a detailed report must be created documenting the audit results, identified risks, potential vulnerabilities, and the tests conducted. The report should be provided to management to make decisions about necessary security improvements. +- **Remediation of security gaps**: If a security gap or issue is identified during the audit, a plan must be created to address these issues. Management should initiate the necessary steps to rectify weaknesses. + +**Risk Assessment** + +- **Assessing risks**: Before the audit, potential risks of the planned tests should be assessed. This includes both technical risks (e.g., impact on operations) as well as legal and privacy risks (e.g., data breaches due to unauthorized access to data). +- **Contingency plans**: In case something goes wrong during the audit, a contingency plan should be in place to respond quickly to issues and ensure that systems are restored promptly. + + +

Objective of this rule:

+ + + +The main goal of the "Protection of Information Systems during Audit Testing" rule is to ensure that the security, integrity, and confidentiality of information systems are maintained during audit and testing activities. It requires careful planning, coordination with management, controlled access to systems, and implementation of security measures to protect systems and data. Auditors should minimize the risk of disruptions while identifying security gaps and weaknesses. + + +
\ No newline at end of file diff --git a/src/styles/globals.scss b/src/styles/globals.scss index c17cea3..8f6b027 100644 --- a/src/styles/globals.scss +++ b/src/styles/globals.scss @@ -7,9 +7,13 @@ } .dark\:_bg-\[linear-gradient\(1deg\,\#383838\,\#212121\)\]:is(html[class~=dark] *) { - background-image: none; + background-image: none; } .dark\:_bg-neutral-900:is(html[class~=dark] *) { - background-color: #161B23; + background-color: #161B23; +} + +summary h3 { + margin-top: 0px !important; } \ No newline at end of file