CryptoCurrency Security Standard (CCSS) - Audit and Pen-Testing Requirements
[Article Updated August 2023 for CCSS Version 8.1]
Marc Krisjanous is one of the first CCSS Auditors, assisted C4 in the development of their auditors program and is a member of the CCSS Steering Committee.
**** Free CCSS Implementation Guide! ****
Marc also co-authored the CCSS Implementation Guide for a Full System - click here to download - it's free!
In this series we will review each of the core Aspects in the CCSS and provide our interpretation for each of the Aspect's requirements and what possible evidence could provide assurance to the auditor that a requirement is in-place.?
In this article we will explore how an auditor could interpret the CCSS Aspect 2.01 Security Tests/ Audits.?
Aspect 2.01 Security Tests/ Audits addresses the importance of an independent (third-party) review of the in-scope people, process, and technology. The Aspect defines vulnerability scans, penetration tests and security audits. The Aspect’s objective defined within the CCSS?is provided below.?
"This aspect covers third-party reviews of the security systems, technical controls, and policies that protect the information system from all forms of risk as well as vulnerability and penetration tests designed to identify paths around existing controls. Regardless of the technical skills, knowledge, and experience of staff who build and maintain an information system, it has been proven that third-person reviews often identify risks and control deficiencies that were either overlooked or underestimated by staff. For the same reasons that development companies require different people to test a product from those who write it, different people than those who implement a cryptocurrency system should assess its security. Third parties provide a different viewpoint and are independent of the technical controls and can be objective without risk of retaliation."
Vulnerability Scanning and Pen-tests - there is a difference?
It's important to note the key differences between a vulnerability scan and a penetration test.
A vulnerability scan is a process where?systems are scanned for vulnerabilities. The scan can be in-depth in which the scanner has login credentials to servers/devices and systems - scanning from the operating system level and up the software stack. This type of in-depth scan is often referred to as an “internal vulnerability scan” as the scanner is scanning internal network servers, devices, and systems.
Another type of scan is an “external vulnerability scan” which just scans the publicly accessible interfaces of a system, for example a web application's public web pages and web server. The external scanner may also have login credentials and log into the web application to scan more web pages.?
A penetration test or "pen-test" comprises firstly of a vulnerability scan #1 to identify vulnerabilities in the target systems. The vulnerabilities identified are reviewed by the pen-testers who then decide what vulnerabilities to attack to gain unauthorized access to the target systems. If the attack is successful and the pen-tester gains unauthorized access to the target systems then the pen-tester, if instructed by the client, will attempt to see how much further they can get into the systems by targeting other vulnerabilities or weaknesses in the system that could not have been exploited initially.??
Code Review/Audit?
The review of code for vulnerabilities can be conducted using tools that analyze the code or are undertaken by a code reviewer who is skilled in the coding language. Often both approaches are utilized and not only are industry best practices referenced as a guide during the review process, but the assessed entities coding standards are referenced to ensure the standards have been adhered to. CCSS also requires that the review/audit include a review of the cryptographic libraries used to ensure they have been implemented correctly.??
CCSS Levels?
CCSS provides three levels of compliance - Level 1 being the base level of implementing CCSS requirements up to Level 3 being the most in-depth implementation of CCSS requirements. We shall review each compliance level and provide our thoughts on what evidence an auditor should seek to provide assurance that the requirements are in-place.
CCSS Level 1 Requirements?
CCSS Level 1 requirements for this Aspect are provided below.??
Requirement: 2.01.1.1 - A developer who is knowledgeable about digital asset security has assisted in the design and implementation of the information system and documentation of an internal assessment exists.
There are two parts to this requirement:
The first part of the requirement requires that a developer, skilled in the cryptocurrency protocol being implemented, assists in the design and implementation of the information system using the cryptocurrency. Evidence that provides assurance this requirement is in-place could be:?
The second part of the requirement requires that documentation of an internal assessment exists. It is generally considered that an internal assessment is undertaken by internal personnel to ensure that the information system (people, process and technology components) meet the requirements of an external standard. For example, the Governance, Risk and Compliance (GRC) team of an organization may conduct an internal assessment every quarter to ensure that they remain compliant with the requirements of a standard or certification program such PCI DSS. This ensures that when an audit, undertaken by external third-party auditors, is performed when the current certification expires, that the organization does not fail to meet the requirements.
The CCSSA should review the policy and procedures that define when an internal assessment is required and should include the events that would trigger an internal assessment such as a significant change to the environment and/or based on a date schedule (e.g. quarterly reviews).
The CCSSA should review all outputs of the internal assessment process conducted within the assessed period such as assessment reports and documented remediation activities to ensure they meet the requirements of the policy and ensure that the assessment was conducted by qualified and skilled personnel.
领英推荐
CCSS Level 2 Requirements?
CCSS Level 2 requirements for this Aspect are provided below.?
Requirement: 2.01.1.2 - A regular security assessment that includes vulnerability and penetration testing has been completed by an independent qualified third-party. Documentation shows that all concerns raised by the assessment have been evaluated for risk and addressed by the organization.??
As mentioned above, there is a key difference between a vulnerability scan and a penetration test. To put it another way - a vulnerability scan will detect "holes" in the system. Where a penetration test will detect the "holes" and use one or more holes to gain access into the systems behind and see what other vulnerabilities are around. The goal of most penetration tests is to see if the pen-tester can exploit the vulnerabilities to a level where they have complete control of all systems in-scope.?
Level 2 requirements state that regular security assessments are conducted which include vulnerability scanning and pen-testing. Breaking this requirement down into more manageable pieces for audit we have identified the following audit considerations:??
CCSS Level 3 Requirements?
CCSS Level 3 requirements for this aspect is provided below.?
Requirement: 2.01.1.3 - A regular security audit at a level similar to SOC2, ISAE3402, or ISO-27001, that includes vulnerability, penetration testing, and code audit (if applicable) has been completed by an independent qualified third-party. Documentation shows that all concerns raised by the audit have been evaluated for risk, addressed by the organization, and known vulnerabilities have been removed from the system. Ongoing audits are scheduled on a (minimum) yearly basis.
The Level 3 requirements provide a subtle change in the wording from Level 2. Note that for Level 2 compliance a security assessment is required but for Level 3 compliance an audit is required.
What's the difference between an assessment and an audit?
In our opinion, an audit is a process conducted by a third-party who is outside of the organization #6 that reviews evidence collected from the entity being audited and verifies their compliance to a standard or policy. An assessment process reviews the evidence provided and reaches a conclusion regarding the state of the entity at that point in time, in readiness for compliance to a standard or policy.
For example, you may have heard of a "readiness assessment for audit". This is where a person(s) internal or external to the organization, can review the environment that will be audited and determine what will be compliant and what will not. Then a remediation plan is generally created so the organization can implement changes to reach compliance.
CCSS for Level 3 provides a required frequency for audits which is at a minimum on a yearly basis. It should be noted that CCSS does not require an audit to be conducted if there are any significant changes to the CCSS in-scope environment.
Summary?
In this post we explored Aspect 2.01 Security Tests/ Audits with our auditors hat on to determine how an auditor could approach the evidence gathering required so that an opinion could be reached as to if the assessed entity is compliant to Level 1, Level 2 or Level 3 for this Aspect.
We discovered that many of the Aspect's requirements required a reasonable amount of interpretation which adds risk that the assessed entity may reach a different interpretation than the auditor which is never a good situation to be in for either party.
Ultimately, it is the auditor who risks their standing, auditing license and auditing career by signing a certification of compliance for the assessed entity. The auditor must be confident that the requirements have been meet and that the standard provides enough detail and clarity that both the assessed entity and the auditor can reach the same conclusion as to what evidence is required to prove that the requirement is in-place.?
CCSS is still a “young” information security management systems standard however, the standards objectives are very clear, and we believe CCSS will improve and mature overtime and be a highly respected standard to be compliant in.?
#1 pen-tests almost always start with a vulnerability scan to detect vulnerabilities. For some penetration test engagements, the assessed entity may provide a list of vulnerabilities to attack, or the penetration testers are aware of the vulnerabilities inherent to the systems already.?
#6 There are audits that are undertaken by internal auditors, called an internal audit, but CCSS requires a third-party audit, which we have defined as completely independent of the assessed entity.
More Research