FedRAMP PenTest Guidance V 1 0
FedRAMP PenTest Guidance V 1 0
Version 1.0.1
July 6, 2015
07/06/2015
Revision History
Date
Version
Page(s)
Description
Author
06/30/2015
1.0
All
First Release
FedRAMP
PMO
07/06/2015
1.0.1
All
FedRAMP
PMO
Page i
07/06/2015
Table of Contents
About This Document .................................................................................................................... iv
Who Should Use This Document .............................................................................................. iv
How This Document Is Organized ............................................................................................ iv
How To Contact Us ................................................................................................................... iv
1. Scope ........................................................................................................................................... 1
2. Definitions & Threats ................................................................................................................. 2
2.1. Definitions ........................................................................................................................... 2
2.2. Threat Models ...................................................................................................................... 3
2.3. Threat Modeling .................................................................................................................. 3
3. Attack Vectors ............................................................................................................................ 4
3.1. External to Corporate External Untrusted to Internal Untrusted ...................................... 6
3.2. External to Target System External Untrusted to External Trusted ................................. 7
3.3. Target System to CSP Management System External Trusted to Internal Trusted .......... 8
3.4. Tenant to Tenant External Trusted to External Trusted ................................................... 9
3.5. Corporate to CSP Management System Internal Untrusted to Internal Trusted............... 9
3.6. Mobile Application External Untrusted to External Trusted .......................................... 10
4. Scoping the Penetration Test .................................................................................................... 10
5. Penetration Test Methodology and Requirements .................................................................... 11
5.1. Information Gathering & Discovery .................................................................................. 12
5.2. Web Application/API Testing Information Gathering/Discovery ..................................... 13
5.3. Mobile Application Information Gathering/Discovery ..................................................... 13
5.4. Network Information Gathering/Discovery ....................................................................... 14
5.5. Social Engineering Information Gathering/Discovery ...................................................... 15
5.6. Simulated Internal Attack Information Gathering/Discovery ........................................... 15
5.7. Exploitation ........................................................................................................................ 16
5.7.1. Web Application/API Exploitation ................................................................................. 16
5.7.2. Mobile Application Exploitation .................................................................................... 16
5.7.3. Network Exploitation ...................................................................................................... 17
5.7.4. Social Engineering Exploitation ..................................................................................... 18
5.7.5. Simulated Internal Attack Exploitation .......................................................................... 18
5.8. Post-Exploitation ............................................................................................................... 19
5.8.1. Web Application/API Post-Exploitation ........................................................................ 19
5.8.2. Mobile Application Post-Exploitation ............................................................................ 20
5.8.3. Network Post-Exploitation ............................................................................................. 20
5.8.4. Social Engineering Post-Exploitation ............................................................................. 20
5.8.5. Simulated Internal Attack Post-Exploitation .................................................................. 21
6. Reporting................................................................................................................................... 21
6.1. Scope of Target System ..................................................................................................... 21
6.2. Attack Vectors Addressed During the Penetration Test .................................................... 21
6.3. Timeline for Assessment Activity ..................................................................................... 21
6.4. Actual Tests Performed and Results .................................................................................. 21
Page ii
07/06/2015
List of Tables
Table 1.
Table 2.
Table 3.
Table 4.
Table 5.
Table 6.
Table 7.
Table 8.
Table 9.
Table 10.
Table 11.
Table 12.
Table 13.
Table 14.
Table 15.
Table 16.
Table 17.
List of Figures
Figure 1.
Figure 2.
Figure 3.
Figure 4.
Figure 5.
Figure 6.
Figure 7.
Page iii
07/06/2015
Cloud Service Providers (CSP) should use this document when preparing to perform a
Penetration Test on their cloud system
Third Party Assessor Organizations (3PAO) should use this document when planning,
executing, and reporting on Penetration Testing activities
Authorizing Officials (AO) should use this document when developing and evaluating
Penetration Test plans.
Contents
Document Scope
Definitions and Assumptions
Attack Vectors
Scoping The Penetration Test
Penetration Test Methodology and Requirements
Reporting
Test Schedule Requirements
3PAO Staffing Requirements
Table of acronyms used in this document
References
Rules of Engagement/Test Plan
HOW TO CONTACT US
Questions about FedRAMP or this document may be directed to [email protected].
For more information about FedRAMP, visit the website at http://www.fedramp.gov.
Page iv
07/06/2015
1. SCOPE
The Federal Risk and Authorization Management Program (FedRAMP) requires that Penetration
Testing be conducted in compliance with the following guidance:
FedRAMP also requires that CSP products and solutions (cloud service) undergoing a FedRAMP
assessment and Penetration Test must be classified as a SaaS, PaaS, or IaaS. In some scenarios, it
may be appropriate to apply multiple designations to a cloud service. Table 1 below shows the
definitions of these three service types.
Table 1.
Cloud Service
Model
NIST Description
Software as a
Service (SaaS)
Platform as a
Service (PaaS)
Infrastructure as
a Service (IaaS)
Page 1
07/06/2015
All components, associated services, and access paths (internal/external) within the defined test
boundary of the CSP system must be scoped and assessed. The Rules of Engagement (ROE)
must identify and define the appropriate testing method(s) and techniques associated with
exploitation of the relevant devices and/or services.
Penetration Testing may require:
Negotiation and agreement with third parties such as Internet Service Providers (ISP),
Managed Security Service Providers (MSSP), facility leaseholders, hosting services,
and/or other organizations involved in, or affected by, the test. In such scenarios, the CSP
is responsible for coordination and obtaining approvals from third parties prior to the
commencement of testing.
To limit impact on business operations, the complete or partial testing may be conducted
in a non-production environment as long as it is identical to the production environment
and has been validated by the 3PAO. For instance, if a CSP has two identical locations, a
Penetration Test on one location may suffice. In this case, the environments must be
exactly the same, not almost, nearly, or virtually.
When the cloud system has multiple tenants, the CSP must build a temporary tenant
environment if another tenant environment suitable for testing does not exist.
The Penetration Test plan must include actual testing of all the attack vectors described in
Section 3 below or explain why a particular vector was not applicable. The Independent
Assessors (IA) may include additional attack vectors they believe are appropriate. See Appendix
C: ROE/Test Plan Template for more information regarding test plans.
2.1. DEFINITIONS
The following is a list of definitions for this document.
07/06/2015
A description of the approach, constraints, and methodologies for each planned attack
A detailed Test Schedule that specifies the Start and End Date/Times and content of each
test period and the overall Penetration Test beginning and end dates
Technical Points of Contact (POC) with a backup for each subsystem and/or application
that may be included in the Penetration Test
The Penetration Test Rules of Engagement (ROE) describes the target systems, scope,
constraints, and proper notifications and disclosures of the Penetration Test. The IA develops the
ROE based on the parameters provided by the CSP. The ROE must be developed in accordance
with National Institute of Standards and Technology (NIST) Special Publication (SP) 800-115,
Appendix B, and be approved by the authorizing officials of the CSP prior to testing. See Section
6, Rules of Engagement, of the FedRAMP Security Assessment Plan Template for more
information on the ROE. The IA must include a copy of the ROE in the FedRAMP Security
Assessment Plan submitted to FedRAMP.
The ROE should also include:
Local Computer Incident Response Team or capability and their requirements for
exercising the Penetration Test
Physical Penetration Constraints
Acceptable Social Engineering Pretext(s)
A summary and reference to any Third Party agreements, including Points of Contact
(POC) for Third Parties that may be affected by the Penetration Test
The IA should test all or a sufficient sample of access points and locations (for physical
Penetration Testing). When the IA tests a sample, the IA must describe how and why the sample
was selected, and why it is sufficient.
The IA should attempt to exploit vulnerabilities and weaknesses throughout the cloud system
environment, including physical Penetration Testing. At a minimum, the IA should verify
Page 3
07/06/2015
security doors are locked, security alarms work, and security guards are present and alert as
required by the CSP organizations security policies and procedures. These situations must be
identified during scoping sessions and accounted for accordingly in the Rules of
Engagement/Test Plan (ROE/TP).
The types of attacks must be repeatable and present a consistent representation of threats, threat
capabilities, and organization-specific threat qualifications. In addition, the types of attacks must
address the goals of the Penetration Test and include both internal and external attacks.
Internal Employees or users who are employed by the CSP, including both privileged
and non-privileged users, in the context of the target system.
External Users and non-users of the system who are not employed by the CSP. This
includes government users of the application, as well as third parties who do not have
access rights to the target system.
Trusted Users with approved access rights to the target system. Trusted users include
both internal CSP employees with management access to the system, as well as external
users with credentialed access to the tenant environment.
Untrusted Non-users of the target system. Untrusted users include both internal CSP
employees who lack credentialed access to the target system, as well as any individual
attempting to access the target system from the Internet.
See Table 2 below for the relationships between Trusted/Untrusted and Internal/External attacks.
Table 2.
Types of Attacks
Internal
External
Trusted
Untrusted
3. ATTACK VECTORS
Attack vectors can be defined as potential avenues of compromise which may lead to a
degradation of system integrity, confidentiality, or availability. FedRAMP has identified and
developed several risk scenarios for the 3PAO organization to review and address during
Penetration Testing. Table 3 below lists the identified attack vectors, which are detailed in the
sections below.
Table 3.
Page 4
Title
07/06/2015
Description
External to Corporate
External Untrusted to Internal
Untrusted
Figure 1 belowillustrates a sample target cloud system to give context to the attack vectors
illustrated in Figures 2 through 6 below. Each attack vector has been paired with its relevant
threat model as a general guide for designing test cases. Note that physical attack vectors are not
included in the attack vector descriptions below and a specific cloud service may differ from the
represented system. The 3PAO must demonstrate how the Penetration Test will address these
attack vectors.
Page 5
External Un-trusted
07/06/2015
External Trusted
Application Layer
Platform Layer
Management
Infrastructure Layer
Internal Un-Trusted
Internal Trusted
Granted External
Access
Granted Internal
Access
Attempted Access
Page 6
07/06/2015
Attacker
External Network Boundary
Application Layer
Platform Layer
Management
Internet
Infrastructure Layer
Page 7
07/06/2015
Attacker
External Network Boundary
Application Layer
Platform Layer
Management
Infrastructure Layer
Attacker
External Boundary
Tenant
Application Layer
Platform Layer
Management
Infrastructure Layer
Internal Boundary
Page 8
07/06/2015
Attacker
External Boundary
Tenant 1
Tenant 2
Application Layer
Application Layer
Platform Layer
Platform Layer
Infrastructure Layer
Infrastructure Layer
Internal Boundary
Page 9
07/06/2015
Application Layer
Platform Layer
Management
Infrastructure Layer
Page 10
07/06/2015
Service models intending to use FedRAMP-compliant services lower in the cloud stack can
leverage the FedRAMP compliance and security features of those services. As a result, attack
vectors already addressed by other FedRAMP- compliant services lower in the cloud stack are
not required to be re-evaluated. For example: If a PaaS and SaaS leverage another layer that is
FedRAMP compliant, then Penetration Testing of the lower layer is not required. However, the
CSP must determine the authorization system boundaries and provide justification for any
controls they intend to claim as inherited from the supporting service. If the PaaS and/or SaaS
are including FedRAMP-compliant security features for the lower layers, then Penetration
Testing of the lower layers is required and the CSP needs to obtain all the authorizations required
for the 3PAO to perform Penetration Testing for the lower layers.
Please refer to the current version of the Guide to Understanding FedRAMP for additional
guidance regarding boundary determination, cloud service modeling, and inheritance.
The methodology has been organized according to common assessment steps followed by
industry-practiced frameworks. The required level of effort regarding the appropriate Penetration
Testing methodology will be determined by the 3PAO based on the technologies in the in-scope
test boundary, regardless of how the CSP has self-identified the cloud service (SaaS, PaaS, or
IaaS). For example: If operating system/host-level access is offered by a CSP in a cloud service
in which the CSP self-identifies as a SaaS or PaaS cloud service, network Penetration Testing
requirements will still apply.
Page 11
07/06/2015
Start
Discovery
Scoping
Web
Application
& API
Social
Engineering
Simulated
Internal Attack
Network
Post Exploitation
Exploitation
Mobile
Application
Reporting
End
Page 12
07/06/2015
Discovery Activities
Description
Identify the target application Identify all layers of the application including application
architecture
servers, databases, middleware, and other technologies to
determine communication flow and patterns within the
application.
Identify account roles and
authorization bounds
Identify the roles associated with the cloud service and determine
access limitations.
Map all areas of the application that take input from the user of
the application.
Page 13
07/06/2015
Activity
Description
Enumerate and
Conduct a scan to identify active network endpoints on the network
Inventory Live Network environment.
Endpoints
Enumerate and
Inventory Network
Service Availability
Fingerprint Operating
Systems and Network
Page 14
Activity
07/06/2015
Description
Services
Perform Vulnerability
Identification
Activity
Description
Activity
Perform a scoping exercise with the
CSP to determine potential attack
vectors.
Description
Identify valid attack chains assuming an internal CSP
user was compromised by a social engineering attack.
Page 15
Activity
07/06/2015
Description
5.7. EXPLOITATION
During exploitation, the 3PAO Penetration Testing team will attempt to leverage attack vectors
identified during information gathering and discovery to gain initial access into the target system,
based on the attack vector being tested. Several attack vectors are outlined below.
Authentication and
Session Management
Authorization
Application Logic
Input Validation
Page 16
07/06/2015
Section 5.8.1: Web Application/API Exploitation. The following activities in Table 10 below
must be completed.
Table 10. Mobile Application Exploitation
Activity
Description
Authorization
Data Storage
Information
Disclosure
Identify what information is being disclosed in log files and local cache
stores.
Description
Attack
Scenarios
Present identified attack scenarios to the CSP for approval of execution. Note
that if the CSP does not approve a potential exploitation path, this must be
documented in the Penetration Test report.
Exploitation
Perform exploitation activity with the intent of gaining access to the target
systems and elevating privileges, if possible. If unsuccessful, attempt to adapt the
exploitation approach to work against the target environment.
Record
Results
Page 17
07/06/2015
Description
Conduct an unannounced spear phishing exercise targeted at the CSP system
administrators. Record and report statistics on observed click-through rates
during the email campaign.
Description
Escalate to
Administrative
Privileges
Recording Results
Page 18
07/06/2015
5.8. POST-EXPLOITATION
During post-exploitation, the 3PAO Penetration Testing team will attempt to exercise
vulnerabilities discovered during exploitation. The 3APO Penetration Testing team will conduct
post-exploitation activities with the intent of demonstrating the impact of exploitation by
laterally moving to additional endpoints with the intent to compromise sensitive CSP data,
information, or control of the target system infrastructure. Post-exploitation activities will be
determined by the level of access gained by exploitation and the technologies utilized by the
system. They should broadly cover the activities listed below. The following activities in Table
14 must be completed.
Table 14. Post-Exploitation
Activity
Description
Escalation of
Privileges
Lateral Movement
Identification and
Exfiltration of
Sensitive Systems or
Data
Description
Unauthorized
Management Access
Unauthorized Data
Access
Page 19
07/06/2015
Description
Gain Situational
Awareness
Privilege Escalation
Lateral Movement
Identification and
Exfiltration of
Sensitive Systems or
Data
Page 20
07/06/2015
6. REPORTING
Penetration Test assessment activities and results must be organized and compiled into a
comprehensive Penetration Test report to be included in the Security Assessment Report (SAR).
The report is required to address the following sections.
Page 21
07/06/2015
included in the report that could contain sensitive data (screenshots, tables, figures) must be
sanitized or masked using techniques that render the sensitive data permanently unrecoverable by
recipients of the report. The 3PAO must not include passwords (including those in encrypted
form) in the final report, or must mask them to ensure recipients of the report cannot recreate or
guess the password.
Certification
Offensive Security
International Council of
Electronic Commerce
Consultants (EC-Council)
Page 22
07/06/2015
APPENDIX A: ACRONYMS
Acronym
Meaning
3PAO
API
CSP
EC-Council
FedRAMP
GIAC
IA
Independent Assessor
IaaS
Infrastructure as a Service
IP
Internet Protocol
ISP
PaaS
Platform as a Service
MSSP
NIST
OSINT
POC
Point of Contact
PTR
ROE
Rules of Engagement
SaaS
Software as a Service
SAP
TP
Test Plan
URL
Page 23
07/06/2015
APPENDIX B: REFERENCES
The publications referenced in this document are available at the following URLs:
https://www.fedramp.gov/files/2015/03/Guide-to-Understanding-FedRAMP-v2.0-4.docx
http://csrc.nist.gov/publications/nistpubs/800-115/SP800-115.pdf
http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-53r4.pdf
http://dx.doi.org/10.6028/NIST.SP.800-53Ar4
http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf
https://www.owasp.org/images/5/52/OWASP_Testing_Guide_v4.pdf
https://www.owasp.org/index.php/OWASP_Mobile_Security_Project#tab=Mobile_Security_
Testing
http://www.vulnerabilityassessment.co.uk/Penetration%20Test.html
https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
https://azure.microsoft.com/blog/2014/11/11/red-teaming-using-cutting-edge-threatsimulation-to-harden-the-microsoft-enterprise-cloud/
Page 24
07/06/2015
Penetration
o Network penetration
o Wireless network penetration
o Physical penetration
o Social engineering penetration
Affected IP ranges and domains
Acceptable social engineering pretexts
Targeted organizations capabilities and technologies
Investigative tools
Specific testing periods (start and end date/times)
CSP reporting requirements (format, content, media, encryption)
Target locations
Categories of information such as open source intelligence, human intelligence
Type of information such as physical, relationship, logical, electronic, metadata
Gathering techniques such as active, passive, on- and off-location
Pervasiveness
Constraints that do not exploit business relationships (customer, supplier, joint venture, or
teaming partners)
The 3PAO must justify omitting any attack vectors described in Section 3 above in the ROE/Test
Plan and the Penetration Test Report.
System Scope
Provide a description of the boundaries and scope of the cloud service system, along with any
identified supporting services or systems. System scope should account for all IP addresses,
Uniform Resource Identifiers (URLs), devices, components, software, and hardware.
Page 25
07/06/2015
Testing Schedule
Provide a schedule that describes testing phases, initiation/completion dates, and allows for
tracking of Penetration Test deliverables.
Testing Methodology
The methodology section will address relevant Penetration Testing activities as described in
Section 5 above.
Relevant Personnel
Provide a list of key personnel involved in the management and execution of the Penetration Test.
The list should include, at a minimum:
Page 26