Follow us on twitter.  

Assurance vs Penetration Testing
22 December, 2012
What's all the fuss about? Is there really any difference between these types of tests?

Appsecure performs two different styles of testings for our clients. In most cases our new clients contact us to request for a "penetration test" to be performed against their systems. In some cases though, there's alot of myths out there about penetration testing. The purpose of this post is to clear these up, and really understand what are the positives and negatives of both styles. We're not trying to say in the following blog one is better then the other, but explaining the process and difference between them and which one to choose based on your required outcome.

Penetration Testing
This is the most common format of penetration testing out there. It's always been popular and will continue to be popular as everyone does it. This type of testing puts alot of "magic" in the hands of the company testing however, and removes the guarantee of a good test. In 99.9% of cases Penetration testing is completed within a time-limit, however it's sets to a "methodology" or process of how the test is conducted. The largest problem with testing is caused by human nature. During a penetration test if a tester identifies a potenial vulnerability they could spend large amounts of the test time just trying to exploit that one particular vulnerability. If successful, you've found a risk you need to fix, but what about the rest of the system?

This is a common problem, at Appsecure we mention Penetration testing being a "depth" approach to testing, you may not get full coverage (as in finding vulnerabilities across the system), but you will find serious vulnerabilities and how far you can go with them, but you're not going to fully understand whether your system is completely secure. The other challenge facing penetration testing is skill level of the tester and automation. When running a test program, there should be a limit placed exclusively on automated testing, normally not more then 15% of the entire project time.

Automating testing is good, the key element this service adds, is to identify quick and easy vulnerabilities that would be found by a script kiddie or someone with very limitied skills. Although they may not present high exploits they are easy to find by nearly anyone or a quick tool and should be addressed.

Assurance Testing
So we've just discussed in breif Penetration testing, and the weakenesses such as skill level, automation and depth. Assurance testing is designed to minimise those weakeneses and provide "coverage" across the system, with a little less depth. In most cases when we talk with clients, the phrase "Can you test this for vulnerabilities" is what they are after.

So if we conduct a penetration assessment, you get depth, but we are more then likely going to miss vulnerabilities due to the time limitations to conduct the test. Assurance testing to a detailed methodology removes this problem and ensures that coverage is applied across the entire system. So really what you are getting here is more coverage across the application and less depth. (this is good and we will explain why.)

More coverage ensures that we don't miss things, it also means the entire platform was looked at, therefore we didn't spend large amounts of time on one particular area doing research and forgot to look at another. We've seen testers during an penetration assessment use 3 days to try and prove he could break into 1 vulnerability (which he didn't) and then took another 1 day to complete the assessment, missing alot of weakensses. This is the largest shortfall of Penetration testing out there.

Penetration testing these days is very easy to be done by automation tools. It's alot harder to test for business logic, and exploits that are covered in assurance testing, therefore if you can't automate it typically organisations will avoid doing it, as it is time consuming and finding and keeping good penetration testers is hard and costly. Next time you complete a penetration test program, ask your testing provider to provide a detailed test plan (with time allocation) on what activities they are going to undertake. This gives you some assurance that the test being conducted is not just scanning tools!

So what do i choose? I'm now totally confused?
Really it's actually got alot to do with what you are wanting to achieve? If you want a test that "Find me really bad vulnabilities that are easy to find quickly" then you want a penetration testing, but if you want to understand what vulnerabilities are found within your entire system to test then really you want an assurance test. We've included so pro's and con's for the types of testing below.

Assurance Testing Penetration Testing
  • Detailed Methodology followed during test
  • Complete coverage across system
  • Vulnerability testing for all known types
  • Final understanding of security posture
  • Depth into a type of vulnerability
  • Vulnerability testing for all known types
  • Automated testing can be quicker sometimes
  • Detailed understanding of vulnerabilities
  • Possible 10-15% additional time taken
  • High-level vulnerability detail results
  • Hard to automate testing program
  • No complete coverage of test system
  • Can miss certain vulnerability types
  • Dependant on skill level of tester
Home
History of Appsecure
Our Team & Advisory Board
Industry Involvement
Clients & Industries
Career Opportunities
Sustainability & Environment
Privacy

Are you a client? Our client portal provides real-time access to your reports, as well as our knowledge portal and secure file transfer.
Username:
Password:
Register for Access
Forgot your password?
Terms & Conditions of Use


Latest blogs, articles and advisories from our research and testing team....
 
Avoid Common PCI Pains
Avoid a lot of the common mistakes made with PCI!
 
Maximise Education ROI
Get better ROI on your education programmes!
 
How to Secure the Cloud
How to securely deploy into the cloud for applications.
 
Assurance Vs Penetration
Whats the difference between the two types of testing?
 
  Read More..


Copyright © 2011-2012 Appsecure Pty Ltd  |  ACN 132 491 644  |  info@appsecure.com  |  1300 736 778  |  BRISBANE - SYDNEY - MELBOURNE - CANBERRA