Penetration Testing Management Maturity Assessment Tool
Penetration Testing Management Maturity Assessment Tool
Introduction
Overview
Many organisations are extremely concerned about potential and actual cyber security attacks, both on their own
organisations and in ones similar to them. Many of these attacks exploit weaknesses in an organisations applications and
underlying infrastructure. To help identify these vulnerabilities effectively - and address them effectively - many
organisations carry out penetration testing. However, establishing and managing a penetration testing programme can be a
very difficult task, even for the most advanced organisations. Each organisation should therefore develop an appropriate
penetration testing programme which will enable them to adopt a systematic, structured approach to undertaking
penetration testing.
Your penetration testing programme should consist of appropriately skilled people guided by well-designed, repeatable
programmes and effective use of relevant technologies that will enable you to conduct thorough penetration tests,
successfully identifying and addressing vulnerabilities - and to prevent new ones from occurring.
Many organisations do not know how effective their penetration testing programme is in practice. One of the best ways to
help determine the effectiveness of your programme is to measure the level of maturity of your penetration testing
programme in terms of:
This assessment tool (which does not use macros) provides a mechanism for carrying out an assessment of the level of
maturity an organisation has for their penetration testing programme at an intermediate, fairly detailed, level. It can be
used to assess the effectiveness of your penetration testing programme.
Note: There two other Penetration Testing Maturity Assessment Tools available, which are the:
• Summary assessment tool (no macros), which allows an assessment to be made to determine the level of maturity of your penetration testin
• Consolidated assessment tool (requires macros to be enabled), which allows more sophisticated assessments to be made to determine the le
Instructions on how the tool works and how it can be used can be found on the Guidelines worksheet.
Note: The penetration testing maturity assessment tool is one of a series of assessment tools developed by CREST, which include high level and detailed C
Acknowledgements
CREST would like to extend its special thanks to those CREST member organisations and third parties who took part in
interviews, participated in the workshop and completed questionnaires.
Warning
This Guide has been produced with care and to the best of our ability. However, CREST accepts no responsibility for any
problems or incidents arising from its use.
Credits
This tool has been developed for CREST by
© CREST 2016
Penetration Testing Management
Maturity Assessment Tool
Guidelines
Maturity model
To carry out penetration testing effectively you will need to build an appropriate penetration testing programme the
maturity of which can be assessed against an appropriate maturity model by using this assessment tool.
The maturity model used in this tool is based on a traditional, proven model shown below. This model can be used to
determine the level of maturity of your penetration testing programme at an intermediate, fairly detailed level, ranging
from 1 (least effective) to 5 (most effective).
Different types of organisation will require different levels of maturity for their penetration testing programme. For
example, a small company operating in the retail business will not have the same requirement – or ability – to carry out
penetration tests in the same way as a major corporate organisation in the finance sector – or a government department.
Consequently, the level of maturity your organisation has in penetration testing should be reviewed in context and
compared to your actual requirements for such a capability. The maturity of your organisation can then be compared with
other similar organisation to help determine if the level of maturity is appropriate.
Note: The maturity of the penetration testing programme can play a significant role in determining the level of third-party
involvement required to conduct independent penetration testing. Organisations with a mature penetration testing
programme may manage most of their operations in-house, while those who are less mature may depend entirely on third
parties.
How to use the tool
This tool allows an assessment to be made to determine the level of maturity of an organisations’ penetration testing
programme at a high level. It is based on a simple selection of the level of maturity for each of the 15 steps.
A weighting factor can be set to give the results for particular steps more importance than others. The selected levels of
maturity are then displayed graphically for each of the three phases and overall. Calculations are based on a carefully
designed algorithm that takes account of both the level of maturity selected for each step and the step's given weighting.
Step 1 - Complete the details for the environment being assessed in the Profile and Scope worksheet using the text boxes
and drop-down lists provided. The name entered for Target of Assessment will automatically appear on the Results
worksheets.
Step 2 - On the Targets Worksheet, select the target level required for this assessment by pressing the radar button next to
any of the six options available, which are:
These target ratings will show up in all the Results worksheets allowing you to compare actual performance against targets.
Step 3 - A standard set of default weightings have been set by the project Team at CREST and should typically be used to
enable effective and consistent comparisons to be made. However, on the Weightings worksheet, you can overwrite the
weighting values for any particular question. If you are configuring the tool for a respondent and do not want these
weightings to be changed, use the Lock weighting button if appropriate, and then hide the Weightings worksheet by right-
clicking on the relevant tab at the bottom of this spreadsheet and choosing Hide.
Step 4 - Carry out the assessment by selecting the appropriate level of maturity within the assessed environment for each
step using the drop-down lists on the 3 Assessment worksheets, together with any supporting evidence. Any additional
comments can be entered in the Comments column.
Step 5 - Review a summary of the results using the Aggregated Results worksheet to gain a high level picture of the overall
level of maturity for the environment assessed.
Penetration Testing Management
Maturity Assessment Tool
A1 Name of organisation *
A3 Role or position *
A5 Sector *
A6 Size of business *
A7 Type of business *
A8 Date of assessment *
Target
level
configura
tion
Penetration testing process Target maturity (1 to 5) Choose a set of targets by
clicking on the radio buttons Very
Stage A - Preparation below. Introductory Standard Important
important
Critical Custom
Stage B - Testing
Stage C - Follow up
Weighting
Stage A Preparation
Step 1 Maintain a technical security assurance framework
A.1.01 Have you identified and recorded all main internal systems that support your
organisation?
Documentation about these systems would typically include: their level of
criticality to the business; the sensitivity of any information they handle; any
key dependencies; network diagrams, data flow and trust boundaries; details
about important third party suppliers; IT infrastructure; and points of
contact, roles and responsibilities.
A.1.02 Do you apply different levels of security assurance for different systems based on
their criticality or the sensitivity of the information they handle?
A.1.03 Have you identified and categorised all main third party systems, processes and
functions that support your organisation?
A.1.04 Do you maintain an underlying technical security assurance framework?
A.1.05 Does your technical security assurance framework include testing: incident
response processes; backups, to ensure that critical information and systems can
be restored within critical timescales; incident response processes; and disaster
recovery / fail-over processes?
A.2.02 Have you established a joint management and technical team to agree the
programme and scope of regular penetration testing?
An effective management and technical team would typically have direct
access to senior management to raise significant concerns, supported by the
ability and authority to contribute to a wider security improvement,
providing adequate control over the penetration testing programme.
A.2.03 Does your penetration testing programme include an approved: set of penetration
testing processes and methodologies that apply enterprise-wide, supplier selection
criteria, a penetration testing assurance management framework and a range of
follow up activities to ensure that remediation activities are carried out in an
effective manner, reducing the risk of vulnerabilities being exploited in the future?
A.2.05 Does your penetration testing programme align with a wider security review
framework, technical security infrastructure and system development processes
(particularly for Web applications)?
A.2.06 Do you have a change management process that enables the secure introduction
of or changes to: business initiatives, business processes, web applications and IT
infrastructure; legal and regulatory requirements; your threat landscape, security
governance approach and security controls framework?
A.2.07 To support your penetration testing programme, do you maintain key performance
indicators for the results of the penetration tests, subscribe to information sharing
platforms or services and use them to feed into the penetration testing
programme?
A.2.08 Are a series of actions taken to provide assurance about the suitability and
effectiveness of your penetration testing programme?
Appropriate assurance actions would typically include traceability and
monitoring of the programme, a continuous improvement process, and
independent audits (or similar).
A.3.03 Do your drivers for carrying out penetration tests take account of how a
penetration test fits into your organisation’s overall security arrangements; the
nature and direction of your business – and your risk appetite?
A.3.04 Are your drivers for carrying out penetration tests informed by findings from risk
assessments, audits or reviews; analysis of security incidents; and lessons learnt
from any previous penetration tests?
A.3.05 Have you placed your penetration tests within a wider context of security
assessment and strategy to help contextualise the findings and recommendations?
A.3.06 Do your drivers for penetration testing help to: support the adoption of a strategic
view of security management; ensure that major system vulnerabilities are
identified and addressed; and reduce the risk of discovering that the same
problems still exits the next time a penetration test is carried out?
A.4.03 Does your identification of the target environment consider system criticality;
compliance requirements; major business or it services; critical systems under
development; and outsourced services (e.g. cloud computing)?
A.4.04 Does your identification of the target environment include a risk assessment of
your organisation’s critical information and systems – and ensure that the testing
planned will focus on the assets which pose the highest risk to your organisation?
A.4.05 Does your identification of the target environment take into account significant
changes to critical business processes, business applications, IT infrastructure and
business environments (e.g. in particular business units or jurisdictions)?
A.4.06 Have penetration testing requirements been built into relevant stages of systems
development lifecycles (SDLC) in use by your organisation?
Consideration should be given to conducting penetration tests during the
testing stage; implementation stage; and during live operation.
A.4.07 Have you gained permission to test important systems / environments controlled
by third parties?
If you are not permitted to test important systems / environments controlled
by third parties, you should gain assurances that appropriate penetration
tests are regularly carried out; tests are conducted by suitably qualified staff
working for a certified organisation; and recommendations from the tests are
acted upon.
A.5.02 Do you determine what penetration testing will help you to achieve (i.e. the
benefits)?
Benefits of penetration tests can include IT cost reductions; technical and
business improvements; as well as greater awareness of security risks and
controls.
A.5.05 Do you evaluate the potential difficulties involved with scoping penetration tests?
A.5.06 Do you evaluate the potential difficulties involved with resourcing penetration
tests?
The potential resourcing difficulties in carrying out penetration testing can
include: understanding the costs of external services (and in determining the
true overall cost of testing); and finding a suitable penetration testing expert
when required (e.g. at short notice).
A.6.03 Do your requirements for penetration testing specify that testers must validate
that the test will be legal and that it will not compromise data protection
requirements?
A.6.04 Are your requirements for a penetration test formally recorded in a requirements
specification, formulated by competent technical experts, reviewed and signed-off,
monitored to ensure they are met and then reviewed / revised on a regular basis?
A.7.03 Do you define selection criteria to help you choose suitable suppliers?
A.7.04 Does your selection criteria consider if potential suppliers can provide: solid
reputation, history and ethics; high quality, value-for-money services; research and
development capability; highly competent, technical testers; and security and risk
management, supported by a strong professional accreditation and complaint
process?
A.7.05 Do you ensure that your chosen suppliers are able to effectively meet – or exceed -
your supplier selection criteria and provide tangible value for money?
A.7.06 Do you validate the ability of potential suppliers to meet your specific
requirements (not just one who can offer a variety of often impressive products
and services, some of which may not necessarily be relevant)?
Stage B Testing
Step 1 Agree testing style and type
B.1.01 Do you identify what style of penetration testing is required?
B.1.02 Does your identification of testing style evaluate the need for ‘Black box’, ‘Grey
box’ and / or ‘White box’ testing?
B.1.03 Does your identification of testing style consider the use of an ‘external’
penetration test (the most common type of test), which is aimed at IT systems
from ‘outside the building’?
B.1.04 Does your identification of testing types consider the use of an internal security
test; end-to-end testing (i.e. for people, through data, devices, applications and
infrastructure); emerging technologies (e.g. mobile applications); and social
engineering?
B.1.05 Does your identification of testing types consider Web application testing,
Infrastructure testing and Specialised penetration testing, such as for mobile, client
server or cloud-based applications
B.2.03 When identifying testing constraints, do you allow for testing having to be
conducted within the confines of the law (considering that attackers often do
whatever it takes to penetrate an organisation or system)?
Methods of dealing with legal testing constraints can include tailoring the
way tests are structured and run to simulate most forms of attack) and
taking back-ups of critical systems and files before testing.
B.2.04 When identifying testing constraints, do you allow for testers being limited to the
scope of the testing and a finite time to conduct tests, considering that attackers
will utilise the weakest point of security in any part of connected systems or
networks to mount an attack, regardless of ownership, location or jurisdiction –
and will often have unlimited time to mount a concerted attack against a system if
they have the motivation, capability and resources to do so?
B.2.05 When identifying testing constraints, do you allow for testers having limited time
to conduct tests, considering that attackers have unlimited time to mount a
concerted attack against a system if they have the motivation, capability and
resources to do so?
Methods of dealing with time constraints can include Investing more time in
testing critical systems; providing testers with as much background
information as possible; and conducting penetration testing on a regular
basis, rather than as a one-off exercise.
B.2.06 When identifying testing constraints, do you allow for the likelihood that most
penetration testing will not find all vulnerabilities of a given environment (the law
of diminishing returns often applies in that the most obvious vulnerabilities will be
discovered first, with further time yielding more and more obscure issues)?
Methods of dealing with this type of testing constraint can include adopting
a ‘risk to cost balance’ when performing tests and doing more than simply
fixing vulnerabilities uncovered during testing as this could leave a number of
other vulnerabilities present for an attacker to find.
B.2.07 Have you identified technical issues that can affect the scope of the test or the
security countermeasures in place to detect and deter attacks?
Methods of dealing with technical testing constraints can include
Implementing policy exceptions; allowing for vulnerabilities that will not be
discovered if the testing is undertaken from outside your network; adopting a
practical scope that will meet your requirements; and ensuring that the test
simulation comes very close to replicating a real malicious attack.
B.2.08 Have you determined how you will make sure that all parties adhere to testing
constraints?
B.3.02 Is the scope of penetration tests recorded in a formal document, such as a scope
statement, that is signed-off by all relevant parties?
Relevant parties (i.e. named individuals or groups) required to sign-off the
scope statement should include authorised and suitably qualified individuals
from all relevant parties; plus relevant, qualified individuals dependent on
the value of the system being tested (or similar).
B.3.03 Does your scope statement include a definition of the target environment?
The definition of the target environment should include: which systems are in
and out of scope; the testing approach being adopted (e.g. black, white or
grey box); types of test that are prohibited (e.g. ‘denial of service’ type
testing); where the testing team will need to be in order to conduct the
testing (e.g. on the customer’s site or at the test service provider’s premises);
and approvals required for various elements of the testing to go ahead.
B.3.04 Does your scope statement specify resourcing requirements?
The definition of liabilities in the scope statement should specify the steps
required by both parties should problems (e.g. slippage) arise and the details
of liability (indemnity) insurance to be held by the testing service provider.
B.3.07 Do you formally define reporting requirements for your penetration testing prior
to tests commencing?
B.3.08 Do your reporting requirements specify the format and type of content to be used
in the test report (template often used; when the test report will be delivered (not
later than a few days after completion of the test); and how the test report will be
delivered (electronic and / or physical)?
B.4.05 Have you established an assurance process to ensure that the penetration testing
process meets requirements?
B.4.06 Does your assurance process define control processes over all important
management aspects of testing, including test administration; test execution, and
data security?
B.5.02 Have you developed methods of keeping risks to your organisation to a minimum?
You can help to reduce risk associated with penetration testing by carrying
out planning in advance; having a clear definition of scope; using predefined
escalation procedures; supported by qualified testing individuals and certified
organisations.
B.5.03 When conducting penetration tests, do you ensure that those individuals
responsible for the running of the target systems have full knowledge of the tests
to help protect against unexpected business consequences, such an inadvertent
trigger of internal controls; and are aware of – and adhere to - any escalation
procedures?
B.5.04 Are individuals responsible for the running of the target systems available, as
required, during the test period to help: ensure that testing takes place as agreed;
keep risks within acceptable boundaries; deal with any problems arising; and
manage issues that have been escalated?
B.6.03 Does your penetration testing methodology detail specific evaluation or testing
criteria and adhere to a standard common language and scope for performing
penetration testing (i.e. security evaluations)?
B.6.04 Does your penetration testing methodology specify a required approach (or
approaches) for carrying out all stages of a comprehensive end-to-end penetration
test?
An effective penetration testing methodology should specify a required
approach (or approaches) for carrying out planning; conducting research;
identifying vulnerabilities; exploiting weaknesses; reporting findings; and
remediating issues.
B.7.03 Do penetration tests include carrying out sufficient research to imitate the
research activities that a potential attacker could undertake to find out as much
about the target environment and how it works as possible?
B.7.04 Does the research undertaken include gathering, collating and analysing all
relevant information about the target?
Relevant information should include data: obtained from public sources of
information, such as the Internet; through information sharing networks (e.g.
CERTs); and via authorised social engineering sources.
B.8.02 Does vulnerability identification include testers examining: attack avenues, vectors
and threat agents (e.g. using attack trees); results from threat analysis; technical
system / network / application vulnerabilities; and control weaknesses
B.8.03 Do tests include reviewing vulnerabilities identified by third parties, such as the
‘OWASP Top Ten’, which presents a list of common security vulnerabilities found in
web applications (i.e. injection attacks, cross-site scripting and failure to restrict
URL access)?
B.8.04 Do tests include identifying the cause of any vulnerabilities discovered, for
example resulting from a lack of understanding of IT security issues (e.g. by web
developers and users of mobile devices)?
B.8.05 Do penetration testers try to exploit the vulnerabilities identified and actually
penetrate the target system?
B.8.06 Do testers use a range of techniques (e.g. exploitation frameworks, stand-alone
exploits, and other tactics) to try and take advantage of specific weaknesses?
Exploitation techniques include: specific Exploit techniques (e.g. for web
applications); Escalation techniques, gaining further access within a target,
once an initial level of access has been obtained; advancement techniques,
attempting to move on from the compromised target to find other vulnerable
systems; and analysis techniques, verifying the raw data to ensure that the
test has been thorough and comprehensive.
B.9.03 Are penetration testing reports used to present remediation activities undertaken
and the root causes of issues identified?
B.9.04 Are penetration testing reports disseminated to relevant staff - and acted upon?
B.9.05 Does test reporting include a comprehensive presentation from your service
provider about the key findings identified?
The presentation about test findings identified should provide details about:
how testers found the vulnerabilities; what could be the outcome of each
vulnerability; the level of risk to the business for each vulnerability; and
advice on how to remediate each vulnerability.
Stage C Follow up
Step 1 Remediate weaknesses
C.1.01 Do follow-up activities include remediating weaknesses identified in penetration
testing?
C.1.02 Are weaknesses remediated in line with a comprehensive, approved remediation
process?
An effective remediation process should include addressing all issues;
applying immediate or short terms solutions (e.g. patching systems, closing
ports and preventing traffic from particular web sites or IP addresses),
replicating results of penetration tests, determining which weaknesses to
address first (e.g. based on risk ratings for critical assets), and reporting
weaknesses to relevant third party organisations.
Root cause analysis should include: identifying the real root causes of
exposures; evaluating potential business impact; identifying more endemic or
fundamental root causes; qualified, experienced security professionals to
help define corrective action strategy and plans.
C.4.02 Does evaluation of test effectiveness cover the full range of required actions?
C.5.04 Are good practices rolled out by: performing trend analysis across multiple
systems; applying lessons learnt during a penetration test of one application to
similar applications; and fixing root causes endemically?
C.6.03 Do action plans outline all the relevant actions to be taken to prevent
vulnerabilities identified through testing from recurring and help improve the
overall information security programme
C.6.04 Do action plans include a brief description of each action, including their priority
and category; individuals responsible and accountable for each action; and target
dates for completion
C.6.06 Are action plans monitored on a regular basis to: ensure progress is being made;
highlight any delays or difficulties being experienced; and reassess the level of risk?
Aggregated maturity levels A.1 - Maintain a technical security assurance framework
C.6 - Create andA.2monitor
- Establish
action
a penetration
plans testing governance structure
C.5 - Build on lessons learned 5.00 A.3 - Evaluate drivers for conducting pe
Step 5 - Define the purpose of the penetration tests 1 4 3 C.1 - Remediate weaknesses A.7 - Select suitable
Step 7 - Select suitable suppliers 1 4 3 B.9 - Report key findings B.1 - Agree testing style
Step 1 - Agree testing style and type 1 4 3 B.8 - Identify and exploit vulnerabilities B.2 - Identify testing constrain
Weighted
Response Weighting score Evidence supplied Comments
Step 1 Maintain a technical security assurance framework
A.1.01 Have you identified and recorded all main internal systems that support your
organisation? x2
Documentation about these systems would typically include: their level of
criticality to the business; the sensitivity of any information they handle; any
key dependencies; network diagrams, data flow and trust boundaries; details
about important third party suppliers; IT infrastructure; and points of
contact, roles and responsibilities.
A.1.02 Do you apply different levels of security assurance for different systems based on
their criticality or the sensitivity of the information they handle? x4
A.1.03 Have you identified and categorised all main third party systems, processes and
functions that support your organisation? x3
A.1.04 Do you maintain an underlying technical security assurance framework?
x4
A technical security assurance framework would typically include: multiple
environments for testing; a security architecture; an ongoing security
monitoring services (e.g. in a SOC); an adequate range of technical security
services; a balanced selection of preventative, detective and reactive security
controls; and a road map or similar to provide a short, medium and long term
outlook for security posture.
A.1.05 Does your technical security assurance framework include testing: incident
response processes; backups, to ensure that critical information and systems can
be restored within critical timescales; incident response processes; and disaster x3
recovery / fail-over processes?
A.2.03 Does your penetration testing programme include an approved: set of penetration
testing processes and methodologies that apply enterprise-wide, supplier selection
criteria, a penetration testing assurance management framework and a range of
follow up activities to ensure that remediation activities are carried out in an x3
effective manner, reducing the risk of vulnerabilities being exploited in the future?
A.2.05 Does your penetration testing programme align with a wider security review
framework, technical security infrastructure and system development processes x3
(particularly for Web applications)?
A.2.06 Do you have a change management process that enables the secure introduction
of or changes to: business initiatives, business processes, web applications and IT
infrastructure; legal and regulatory requirements; your threat landscape, security
governance approach and security controls framework? x4
A.2.07 To support your penetration testing programme, do you maintain key performance
indicators for the results of the penetration tests, subscribe to information sharing
platforms or services and use them to feed into the penetration testing x5
programme?
A.2.08 Are a series of actions taken to provide assurance about the suitability and
effectiveness of your penetration testing programme? x5
Appropriate assurance actions would typically include traceability and
monitoring of the programme, a continuous improvement process, and
independent audits (or similar).
A.3.03 Do your drivers for carrying out penetration tests take account of how a
penetration test fits into your organisation’s overall security arrangements; the
nature and direction of your business – and your risk appetite? x4
A.3.04 Are your drivers for carrying out penetration tests informed by findings from risk
assessments, audits or reviews; analysis of security incidents; and lessons learnt x3
from any previous penetration tests?
A.3.05 Have you placed your penetration tests within a wider context of security
assessment and strategy to help contextualise the findings and recommendations? x4
A.3.06 Do your drivers for penetration testing help to: support the adoption of a strategic
view of security management; ensure that major system vulnerabilities are
identified and addressed; and reduce the risk of discovering that the same
problems still exits the next time a penetration test is carried out? x5
A.4.03 Does your identification of the target environment consider system criticality;
compliance requirements; major business or it services; critical systems under
development; and outsourced services (e.g. cloud computing)? x3
A.4.04 Does your identification of the target environment include a risk assessment of
your organisation’s critical information and systems – and ensure that the testing
planned will focus on the assets which pose the highest risk to your organisation? x4
A.4.05 Does your identification of the target environment take into account significant
changes to critical business processes, business applications, IT infrastructure and
business environments (e.g. in particular business units or jurisdictions)? x4
A.4.06 Have penetration testing requirements been built into relevant stages of systems
development lifecycles (SDLC) in use by your organisation? x4
Consideration should be given to conducting penetration tests during the
testing stage; implementation stage; and during live operation.
A.4.07 Have you gained permission to test important systems / environments controlled
by third parties? x5
If you are not permitted to test important systems / environments controlled
by third parties, you should gain assurances that appropriate penetration
tests are regularly carried out; tests are conducted by suitably qualified staff
working for a certified organisation; and recommendations from the tests are
acted upon.
A.5.02 Do you determine what penetration testing will help you to achieve (i.e. the
benefits)? x5
Benefits of penetration tests can include IT cost reductions; technical and
business improvements; as well as greater awareness of security risks and
controls.
A.5.05 Do you evaluate the potential difficulties involved with scoping penetration tests?
x3
The potential scoping difficulties involved with carrying out penetration
testing can include: determining the depth and breadth of coverage of the
test; identifying the style, type, targets and frequency of tests; managing
risks associated with potential system failure and exposure of sensitive data;
and remediating system vulnerabilities effectively.
A.5.06 Do you evaluate the potential difficulties involved with resourcing penetration
tests? x4
The potential resourcing difficulties in carrying out penetration testing can
include: understanding the costs of external services (and in determining the
true overall cost of testing); and finding a suitable penetration testing expert
when required (e.g. at short notice).
A.6.03 Do your requirements for penetration testing specify that testers must validate
that the test will be legal and that it will not compromise data protection x4
requirements?
A.6.04 Are your requirements for a penetration test formally recorded in a requirements
specification, formulated by competent technical experts, reviewed and signed-off,
monitored to ensure they are met and then reviewed / revised on a regular basis? x5
A.7.03 Do you define selection criteria to help you choose suitable suppliers?
x4
Effective supplier selection criteria typically specify that potential suppliers
should be able to: provide a reliable, effective and proven penetration testing
service; meet compliance standards; protect your information and systems
both during and after testing; perform rigorous and effective penetration
tests; adhere to a proven testing methodology; carry out a full range of
testing, discover all major vulnerabilities, identifying associated ‘root causes’;
produce insightful, practical and easy to read reports; provide on-going
advice on how to manage systems effectively over time as part of a trusted
relationship.
A.7.04 Does your selection criteria consider if potential suppliers can provide: solid
reputation, history and ethics; high quality, value-for-money services; research and
development capability; highly competent, technical testers; and security and risk
management, supported by a strong professional accreditation and complaint x5
process?
A.7.05 Do you ensure that your chosen suppliers are able to effectively meet – or exceed -
your supplier selection criteria and provide tangible value for money? x3
A.7.06 Do you validate the ability of potential suppliers to meet your specific
requirements (not just one who can offer a variety of often impressive products x4
and services, some of which may not necessarily be relevant)?
Weighted
Response Weighting score Evidence supplied Comments
Step 1 Agree testing style and type
B.1.01 Do you identify what style of penetration testing is required?
x1
B.1.02 Does your identification of testing style evaluate the need for ‘Black box’, ‘Grey
box’ and / or ‘White box’ testing? x2
B.1.03 Does your identification of testing style consider the use of an ‘external’
penetration test (the most common type of test), which is aimed at IT systems x4
from ‘outside the building’?
B.1.04 Does your identification of testing types consider the use of an internal security
test; end-to-end testing (i.e. for people, through data, devices, applications and
infrastructure); emerging technologies (e.g. mobile applications); and social x5
engineering?
B.1.05 Does your identification of testing types consider Web application testing,
Infrastructure testing and Specialised penetration testing, such as for mobile, client x5
server or cloud-based applications
B.2.03 When identifying testing constraints, do you allow for testing having to be
conducted within the confines of the law (considering that attackers often do x4
whatever it takes to penetrate an organisation or system)?
Methods of dealing with legal testing constraints can include tailoring the
way tests are structured and run to simulate most forms of attack) and
taking back-ups of critical systems and files before testing.
B.2.04 When identifying testing constraints, do you allow for testers being limited to the
scope of the testing and a finite time to conduct tests, considering that attackers
will utilise the weakest point of security in any part of connected systems or
networks to mount an attack, regardless of ownership, location or jurisdiction –
and will often have unlimited time to mount a concerted attack against a system if x4
they have the motivation, capability and resources to do so?
Methods of dealing with scope-related testing constraints can include placing
perimeter controls within the scope of the test and applying more rigorous
testing to applications that are accessible from outside traditional
organisational boundaries.
B.2.05 When identifying testing constraints, do you allow for testers having limited time
to conduct tests, considering that attackers have unlimited time to mount a
concerted attack against a system if they have the motivation, capability and x4
resources to do so?
Methods of dealing with time constraints can include Investing more time in
testing critical systems; providing testers with as much background
information as possible; and conducting penetration testing on a regular
basis, rather than as a one-off exercise.
B.2.06 When identifying testing constraints, do you allow for the likelihood that most
penetration testing will not find all vulnerabilities of a given environment (the law
of diminishing returns often applies in that the most obvious vulnerabilities will be
discovered first, with further time yielding more and more obscure issues)? x4
Methods of dealing with this type of testing constraint can include adopting
a ‘risk to cost balance’ when performing tests and doing more than simply
fixing vulnerabilities uncovered during testing as this could leave a number of
other vulnerabilities present for an attacker to find.
B.2.07 Have you identified technical issues that can affect the scope of the test or the
security countermeasures in place to detect and deter attacks? x4
Methods of dealing with technical testing constraints can include
Implementing policy exceptions; allowing for vulnerabilities that will not be
discovered if the testing is undertaken from outside your network; adopting a
practical scope that will meet your requirements; and ensuring that the test
simulation comes very close to replicating a real malicious attack.
B.2.08 Have you determined how you will make sure that all parties adhere to testing
constraints? x5
B.3.03 Does your scope statement include a definition of the target environment?
x3
The definition of the target environment should include: which systems are in
and out of scope; the testing approach being adopted (e.g. black, white or
grey box); types of test that are prohibited (e.g. ‘denial of service’ type
testing); where the testing team will need to be in order to conduct the
testing (e.g. on the customer’s site or at the test service provider’s premises);
and approvals required for various elements of the testing to go ahead.
B.3.04 Does your scope statement specify resourcing requirements?
x3
Resourcing requirements should specify who will be leading the testing
engagement, the names of testers that will be used for the testing
engagement (with details about their roles, skills, experience, qualifications
and backgrounds) and the number of days required (including the days on
which testing will take place) – and require a disclaimer stating that they are
legally authorised to carry out specified activity on your property and
systems.
B.3.07 Do you formally define reporting requirements for your penetration testing prior
to tests commencing? x1
B.3.08 Do your reporting requirements specify the format and type of content to be used
in the test report (template often used; when the test report will be delivered (not
later than a few days after completion of the test); and how the test report will be x3
delivered (electronic and / or physical)?
B.4.05 Have you established an assurance process to ensure that the penetration testing
process meets requirements? x1
B.4.06 Does your assurance process define control processes over all important
management aspects of testing, including test administration; test execution, and x5
data security?
B.5.02 Have you developed methods of keeping risks to your organisation to a minimum?
x4
You can help to reduce risk associated with penetration testing by carrying
out planning in advance; having a clear definition of scope; using predefined
escalation procedures; supported by qualified testing individuals and certified
organisations.
B.5.03 When conducting penetration tests, do you ensure that those individuals
responsible for the running of the target systems have full knowledge of the tests
to help protect against unexpected business consequences, such an inadvertent
trigger of internal controls; and are aware of – and adhere to - any escalation x3
procedures?
B.5.04 Are individuals responsible for the running of the target systems available, as
required, during the test period to help: ensure that testing takes place as agreed;
keep risks within acceptable boundaries; deal with any problems arising; and x3
manage issues that have been escalated?
The problem resolution process should also include breaches of: contract;
specifications in the scope statement; and a relevant code of conduct.
B.5.07 Are problems arising during penetration testing resolved in an effective, timely
manner in accordance with your problem management process? x4
B.6.03 Does your penetration testing methodology detail specific evaluation or testing
criteria and adhere to a standard common language and scope for performing x3
penetration testing (i.e. security evaluations)?
Weighted
Response Weighting score Evidence supplied Comments
Step 1 Remediate weaknesses
C.1.01 Do follow-up activities include remediating weaknesses identified in penetration
testing? x2
C.1.02 Are weaknesses remediated in line with a comprehensive, approved remediation
process? x4
An effective remediation process should include addressing all issues;
applying immediate or short terms solutions (e.g. patching systems, closing
ports and preventing traffic from particular web sites or IP addresses),
replicating results of penetration tests, determining which weaknesses to
address first (e.g. based on risk ratings for critical assets), and reporting
weaknesses to relevant third party organisations.
C.5.04 Are good practices rolled out by: performing trend analysis across multiple
systems; applying lessons learnt during a penetration test of one application to
similar applications; and fixing root causes endemically? x5
C.6.03 Do action plans outline all the relevant actions to be taken to prevent
vulnerabilities identified through testing from recurring and help improve the x3
overall information security programme
C.6.04 Do action plans include a brief description of each action, including their priority
and category; individuals responsible and accountable for each action; and target x3
dates for completion
A.1.02 Do you apply different levels of security assurance for different systems based on
their criticality or the sensitivity of the information they handle?
A.1.03 Have you identified and categorised all main third party systems, processes and
functions that support your organisation?
A.1.04 Do you maintain an underlying technical security assurance framework?
A.1.05 Does your technical security assurance framework include testing: incident
response processes; backups, to ensure that critical information and systems can
be restored within critical timescales; incident response processes; and disaster
recovery / fail-over processes?
A.2.02 Have you established a joint management and technical team to agree the
programme and scope of regular penetration testing?
An effective management and technical team would typically have direct
access to senior management to raise significant concerns, supported by the
ability and authority to contribute to a wider security improvement,
providing adequate control over the penetration testing programme.
A.2.03 Does your penetration testing programme include an approved: set of penetration
testing processes and methodologies that apply enterprise-wide, supplier selection
criteria, a penetration testing assurance management framework and a range of
follow up activities to ensure that remediation activities are carried out in an
effective manner, reducing the risk of vulnerabilities being exploited in the future?
A.2.05 Does your penetration testing programme align with a wider security review
framework, technical security infrastructure and system development processes
(particularly for Web applications)?
A.2.06 Do you have a change management process that enables the secure introduction
of or changes to: business initiatives, business processes, web applications and IT
infrastructure; legal and regulatory requirements; your threat landscape, security
governance approach and security controls framework?
A.2.07 To support your penetration testing programme, do you maintain key performance
indicators for the results of the penetration tests, subscribe to information sharing
platforms or services and use them to feed into the penetration testing
programme?
A.2.08 Are a series of actions taken to provide assurance about the suitability and
effectiveness of your penetration testing programme?
Appropriate assurance actions would typically include traceability and
monitoring of the programme, a continuous improvement process, and
independent audits (or similar).
Step 3 Evaluate drivers for conducting penetration tests Maturity level: Level 1
A.3.01 Have you identified drivers for carrying out penetration tests as part of a technical
assurance programme?
A.3.02 Are your drivers for carrying out penetration tests based on an evaluation of
relevant criteria?
Criteria for determining the drivers for penetration testing should include any
growing requirement for compliance, the impact of serious cyber security
attacks, any outsourcing services used, the introduction of new systems and
services, significant changes to IT or the business and changes in the type or
level of perceived threat.
A.3.03 Do your drivers for carrying out penetration tests take account of how a
penetration test fits into your organisation’s overall security arrangements; the
nature and direction of your business – and your risk appetite?
A.3.04 Are your drivers for carrying out penetration tests informed by findings from risk
assessments, audits or reviews; analysis of security incidents; and lessons learnt
from any previous penetration tests?
A.3.05 Have you placed your penetration tests within a wider context of security
assessment and strategy to help contextualise the findings and recommendations?
A.3.06 Do your drivers for penetration testing help to: support the adoption of a strategic
view of security management; ensure that major system vulnerabilities are
identified and addressed; and reduce the risk of discovering that the same
problems still exits the next time a penetration test is carried out?
A.4.03 Does your identification of the target environment consider system criticality;
compliance requirements; major business or it services; critical systems under
development; and outsourced services (e.g. cloud computing)?
A.4.04 Does your identification of the target environment include a risk assessment of
your organisation’s critical information and systems – and ensure that the testing
planned will focus on the assets which pose the highest risk to your organisation?
A.4.05 Does your identification of the target environment take into account significant
changes to critical business processes, business applications, IT infrastructure and
business environments (e.g. in particular business units or jurisdictions)?
A.4.06 Have penetration testing requirements been built into relevant stages of systems
development lifecycles (SDLC) in use by your organisation?
Consideration should be given to conducting penetration tests during the
testing stage; implementation stage; and during live operation.
A.4.07 Have you gained permission to test important systems / environments controlled
by third parties?
If you are not permitted to test important systems / environments controlled
by third parties, you should gain assurances that appropriate penetration
tests are regularly carried out; tests are conducted by suitably qualified staff
working for a certified organisation; and recommendations from the tests are
acted upon.
Step 5 Define the purpose of the penetration tests Maturity level: Level 1
A.5.01 Do you define the purpose of penetration tests, and assess how these tests can
help your organisation?
A well-defined penetration tests should help your organisation to identify
weaknesses in your security controls; reduce the frequency and impact of
security incidents; comply with legal and regulatory requirements; provide
assurance to third parties that business applications can be trusted and that
customer data is adequately protected; and limit liabilities if things go wrong,
or if there is a court case (i.e. take ‘reasonable’ precautions).
A.5.02 Do you determine what penetration testing will help you to achieve (i.e. the
benefits)?
Benefits of penetration tests can include IT cost reductions; technical and
business improvements; as well as greater awareness of security risks and
controls.
A.5.05 Do you evaluate the potential difficulties involved with scoping penetration tests?
A.5.06 Do you evaluate the potential difficulties involved with resourcing penetration
tests?
The potential resourcing difficulties in carrying out penetration testing can
include: understanding the costs of external services (and in determining the
true overall cost of testing); and finding a suitable penetration testing expert
when required (e.g. at short notice).
A.6.03 Do your requirements for penetration testing specify that testers must validate
that the test will be legal and that it will not compromise data protection
requirements?
A.6.04 Are your requirements for a penetration test formally recorded in a requirements
specification, formulated by competent technical experts, reviewed and signed-off,
monitored to ensure they are met and then reviewed / revised on a regular basis?
A.7.03 Do you define selection criteria to help you choose suitable suppliers?
A.7.04 Does your selection criteria consider if potential suppliers can provide: solid
reputation, history and ethics; high quality, value-for-money services; research and
development capability; highly competent, technical testers; and security and risk
management, supported by a strong professional accreditation and complaint
process?
A.7.05 Do you ensure that your chosen suppliers are able to effectively meet – or exceed -
your supplier selection criteria and provide tangible value for money?
A.7.06 Do you validate the ability of potential suppliers to meet your specific
requirements (not just one who can offer a variety of often impressive products
and services, some of which may not necessarily be relevant)?
B.1.02 Does your identification of testing style evaluate the need for ‘Black box’, ‘Grey
box’ and / or ‘White box’ testing?
B.1.03 Does your identification of testing style consider the use of an ‘external’
penetration test (the most common type of test), which is aimed at IT systems
from ‘outside the building’?
B.1.04 Does your identification of testing types consider the use of an internal security
test; end-to-end testing (i.e. for people, through data, devices, applications and
infrastructure); emerging technologies (e.g. mobile applications); and social
engineering?
B.1.05 Does your identification of testing types consider Web application testing,
Infrastructure testing and Specialised penetration testing, such as for mobile, client
server or cloud-based applications
B.2.03 When identifying testing constraints, do you allow for testing having to be
conducted within the confines of the law (considering that attackers often do
whatever it takes to penetrate an organisation or system)?
Methods of dealing with legal testing constraints can include tailoring the
way tests are structured and run to simulate most forms of attack) and
taking back-ups of critical systems and files before testing.
B.2.04 When identifying testing constraints, do you allow for testers being limited to the
scope of the testing and a finite time to conduct tests, considering that attackers
will utilise the weakest point of security in any part of connected systems or
networks to mount an attack, regardless of ownership, location or jurisdiction –
and will often have unlimited time to mount a concerted attack against a system if
they have the motivation, capability and resources to do so?
B.2.05 When identifying testing constraints, do you allow for testers having limited time
to conduct tests, considering that attackers have unlimited time to mount a
concerted attack against a system if they have the motivation, capability and
resources to do so?
Methods of dealing with time constraints can include Investing more time in
testing critical systems; providing testers with as much background
information as possible; and conducting penetration testing on a regular
basis, rather than as a one-off exercise.
B.2.06 When identifying testing constraints, do you allow for the likelihood that most
penetration testing will not find all vulnerabilities of a given environment (the law
of diminishing returns often applies in that the most obvious vulnerabilities will be
discovered first, with further time yielding more and more obscure issues)?
Methods of dealing with this type of testing constraint can include adopting
a ‘risk to cost balance’ when performing tests and doing more than simply
fixing vulnerabilities uncovered during testing as this could leave a number of
other vulnerabilities present for an attacker to find.
B.2.07 Have you identified technical issues that can affect the scope of the test or the
security countermeasures in place to detect and deter attacks?
Methods of dealing with technical testing constraints can include
Implementing policy exceptions; allowing for vulnerabilities that will not be
discovered if the testing is undertaken from outside your network; adopting a
practical scope that will meet your requirements; and ensuring that the test
simulation comes very close to replicating a real malicious attack.
B.2.08 Have you determined how you will make sure that all parties adhere to testing
constraints?
B.3.03 Does your scope statement include a definition of the target environment?
The definition of the target environment should include: which systems are in
and out of scope; the testing approach being adopted (e.g. black, white or
grey box); types of test that are prohibited (e.g. ‘denial of service’ type
testing); where the testing team will need to be in order to conduct the
testing (e.g. on the customer’s site or at the test service provider’s premises);
and approvals required for various elements of the testing to go ahead.
The definition of liabilities in the scope statement should specify the steps
required by both parties should problems (e.g. slippage) arise and the details
of liability (indemnity) insurance to be held by the testing service provider.
B.3.07 Do you formally define reporting requirements for your penetration testing prior
to tests commencing?
B.3.08 Do your reporting requirements specify the format and type of content to be used
in the test report (template often used; when the test report will be delivered (not
later than a few days after completion of the test); and how the test report will be
delivered (electronic and / or physical)?
Step 4 Establish a management assurance framework Maturity level: Level 1
B.4.01 Are you aware that responsibility for the actual systems and data during
penetration testing – and any assurance about them - rests with your
organisation?
B.4.05 Have you established an assurance process to ensure that the penetration testing
process meets requirements?
B.4.06 Does your assurance process define control processes over all important
management aspects of testing, including test administration; test execution, and
data security?
B.5.02 Have you developed methods of keeping risks to your organisation to a minimum?
You can help to reduce risk associated with penetration testing by carrying
out planning in advance; having a clear definition of scope; using predefined
escalation procedures; supported by qualified testing individuals and certified
organisations.
B.5.03 When conducting penetration tests, do you ensure that those individuals
responsible for the running of the target systems have full knowledge of the tests
to help protect against unexpected business consequences, such an inadvertent
trigger of internal controls; and are aware of – and adhere to - any escalation
procedures?
B.5.04 Are individuals responsible for the running of the target systems available, as
required, during the test period to help: ensure that testing takes place as agreed;
keep risks within acceptable boundaries; deal with any problems arising; and
manage issues that have been escalated?
The problem resolution process should also include breaches of: contract;
specifications in the scope statement; and a relevant code of conduct.
B.5.07 Are problems arising during penetration testing resolved in an effective, timely
manner in accordance with your problem management process?
B.6.03 Does your penetration testing methodology detail specific evaluation or testing
criteria and adhere to a standard common language and scope for performing
penetration testing (i.e. security evaluations)?
Root cause analysis should include: identifying the real root causes of
exposures; evaluating potential business impact; identifying more endemic or
fundamental root causes; qualified, experienced security professionals to
help define corrective action strategy and plans.
C.4.02 Does evaluation of test effectiveness cover the full range of required actions?
C.5.04 Are good practices rolled out by: performing trend analysis across multiple
systems; applying lessons learnt during a penetration test of one application to
similar applications; and fixing root causes endemically?
C.6.03 Do action plans outline all the relevant actions to be taken to prevent
vulnerabilities identified through testing from recurring and help improve the
overall information security programme
C.6.04 Do action plans include a brief description of each action, including their priority
and category; individuals responsible and accountable for each action; and target
dates for completion
C.6.06 Are action plans monitored on a regular basis to: ensure progress is being made;
highlight any delays or difficulties being experienced; and reassess the level of risk?