Web Service Penetration Testing
Web services allow applications to expose programmatic interfaces that can be called by other “consumer” applications. They allow applications that are built on a wide variety of technologies to easily interface with each other. Web services are often hosted on an internal network, but with the increasing popularity of mobile applications, many web services are being exposed to the Internet. Either way, securing these services is essential.
The security of web services is an often-ignored aspect of application security. Since they aren’t exposed in an application’s normal user interface, developers often pay less attention to their security. But often they expose sensitive information and functionality, and are deserving of the same level of security attention as user-facing applications. Thoroughly testing the security of web services requires a substantial amount of skill combined with a rigorous methodology.
The AppSec Consulting Difference
- Our security professionals receive better training and have significant application development experience, which is important because web services are essentially programmatic interfaces that are best understood by people with a strong software development background.
- We have experience testing every major type of web service, including SOAP, REST, and custom protocols, and can work with any form of authentication, from OAUTH tokens to client certificates to custom digital signatures.
- Our rigorous web service testing methodology and toolset allows us to efficiently gather the required testing information, learn about your services, and perform a thorough security assessment.
- Preparation – AppSec Consulting verifies that it has received the following information from the customer in preparation for the penetration test.
- Web service name
- Brief description of the web service and its purpose
- Documentation for how to use the web service API
- Endpoint URL(s) for testing the web service
- Description of each web method available, with valid sample input data for each web method
- WSDL or WADL if available
- Credentials for each level of access to the web service, including client SSL certificates if required
- (optionally) Server-side source code for the web service
- Time windows for when the automated scanning portion of the penetration test can be run without risk of disrupting other users of the web service.
- Exploration - AppSec Consulting manually explores the web service to verify that all methods can be called successfully and to gain an understanding of the functionality and sensitivity of the web service. Baseline requests are created for each transaction.
- Automated Vulnerability Scanning – High-quality commercial vulnerability scanning tools are used to thoroughly scan the web service. This scanning process includes an authenticated application-level scan as well as an infrastructure-level scan. Custom scripts are written if needed to supplement the scan (for example, to dynamically add a digital signature to each request).
- Manual Penetration Testing – The web service is manually tested by experienced web application security professionals using AppSec Consulting’s systematic testing process. This manual testing process covers all major aspects of web application security that would apply to a web service, including:
- Session Management (if applicable)
- Input Validation / Output Encoding
- Sensitive Data Handing
- Logical Vulnerability Checks
- Report Preparation – AppSec Consulting takes the results of all scanning, manual testing and (optionally) code review and compiles a consolidated report, detailing all vulnerabilities uncovered during the testing process along with severity levels and recommendations for how to remediate each vulnerability that was identified.
- Debriefing – AppSec Consulting presents all findings to executives and key stakeholders, answers all questions, and provides remediation advice.
What You Get
- An actionable, custom-written Web Service Security Assessment Report, which describes the web service’s security posture and lists all vulnerabilities identified. For each vulnerability, we provide a custom risk rating and remediation advice that is tailored to your specific business and technical situation.
- Expert consultation throughout the remediation phase.
- Two rounds of remediation testing within 6 months of the initial security assessment to ensure that all issues are effectively remediated.