Penetration Testing

June 8, 2021

Penetration Test for GMB

With our growing dependence on the online world for business interactions, organizations are unwittingly placing themselves at increased risk of cyber-attacks. This is truer now than it has ever been before. In fact, attacks on IoT devices tripled in the first half of 2019; a number that has only increased further since the ongoing pandemic took hold. Such attacks can prove to be devastating for any organization, costing them on average USD 17,700 every minute as a result of phishing attacks or even as much as USD 3.92 million in the event of a data breach. In spite of these somber statistics, the most shocking of them all is the fact that in 60 percent of these breaches, the required patch for the vulnerabilities was available but simply not applied. Moreover, 94% of malware that these breaches can result from are delivered via email.

While current active cyber protection software and services can protect you to some extent, there is only so much they can do if your network, software, application, or device itself has holes in its security. Detecting these “holes” is exactly what penetration testing is designed to do.

What Is Penetration Testing?

Penetration Testing 9

Who better to test the strength of your security than a hacker itself? This is essentially what a penetration test is. Also commonly known as a pen test, it effectively involves an “ethical hacker” launching scaling pre-planned attacks against your company’s network, computer systems, or applications by exploiting weaknesses and vulnerabilities in your systems. These contracted individuals could range from experienced developers with advanced degrees andcertification for pen testing to self-thought or reformed criminal hackers who now use their expertise to help companies fix security flaws rather than exploit them.

These can be done in multiple ways including using sophisticated hacking techniques to access systemsand related databases, looking for unencrypted passwords shared in the network, or even sending of phishing emailsto gain access to accounts.

These attacks are far more intrusive than typical vulnerability tests and can at times temporarily affect your business by causing a denial of service, reduction in productivity, corruption of machines, etc. While staff and security teams can be informed in advance about such tests, this is not always the best course of action depending on what your intentions for the test are; such as in the case of testing the response of your security team in the case of a live threat scenario.

Ultimately, a pen test is the best way to assess if your existing defensive measures are strong enough to prevent security breaches. The reports from sucha test also provides you with a clear idea of the countermeasures that need to be implemented to strengthen your overall security posture.

Regardless, a pen test should always be part of any holistic web application security strategy. Furthermore, you should always have proper intent and purpose behind every test, with clearly defined criteria so as to ensure you make the most of it and your security is properly pushed to its limits.

Why Do We Need Pen Testing?

Pen testing is becoming an increasingly more widely adoptedsecurity practice, and there are two primary reasons for this. The first is to expose vulnerabilities in a business’ network, devices, or applications. The other is for compliance purposes, especially for those businesses that store and access sensitive or private information such as banks and healthcare providers.

While the latter is no doubt important, it’s the former that really matters, especially now as more and more people are taking their businesses online by the day. Moreover, these vulnerabilities can crop up from several sources. These include flaws during the design and development of hardware and software, an incorrectly configured system, systems connected to unsecured networks, system complexity, and more. However, vulnerabilities are not restricted to just hardware and software. In fact, in most cases it is human error. Users on a network can quite easily make mistakes such as the improper disposal of documents, leaving the documents unattended, coding errors, insider threats, sharing passwords over phishing sites, etc. This is only further exasperated by lack of staff training and proper risk management. Pen testing, if properly carried out, is even capable of detecting such vulnerabilities within your business, allowing you to properly direct your resources exactly where they are needed to improve your overall security posture.

Types of Penetration Testing

There are several different types of penetration test that can be carried out for a business. However, before doing so, it is vital for any business to align their test objectives with their specific business goals. This could be anything from meeting regulatory requirements to detecting flaws and building awareness. Once your goals are decided, it is vital to understand what each test does and how it is carried out. In doing so you can pick the ones that best suit your objectives.

  • Network Service Penetration Testing: Given how critical the network infrastructure is to a business, it comes as no surprise that this is also one of the most common types of penetration testing performed. The objective of the test is to identify the most exposed vulnerabilities and security weaknesses within a businesses’ network infrastructure, covering everything from servers, firewalls, switches, routers, printers, workstations, and more.

    As mentioned earlier, over the course of the test various malicious techniques will be used intentionally break into the network and to subsequently evaluate the network’s security, or lack thereof.

    Doing so offers you several advantages. Aside from detecting vulnerabilities, the test also provides you with a better understanding your network baselines and tests your security posture and the effectiveness of your controls. In turn, helping you prevent future breaches. In fact, these tests if done right are so effective that it’s recommended that most businesses perform this test, both internally and externally, at least once a year to ensure your network security is up to date.

  • Web Application Penetration Testing:

    With the enormous growth that web applications have experienced in recent years, together with the edge it provides over the competition, most companies are jumping on the web app band wagon as soon as they can. This is especially true now that most interactions have shifted towards the online realm. Unfortunately, this advancement of new avenues for customer interaction and convenience has also given rise to a new vector of attack that malicious hackers can use for their personal gains. This is especially worrisome now that a lot of web applications hold sensitive personal data.

    This is where web application penetration testing comes in. It is designed specifically to discover vulnerabilities or security weaknesses in web-based applications and its components, such as databases, the Source Code, and the back-end network.

    These tests are however, far more complex, detailed, and targeted than traditional penetration tests. Furthermore, in order for the test to be carried out successfully, every endpoint through which the app interacts with the user on a regular basis must be identified. In fact, in the majority of cases, the web app penetration testing as carried out as part of the Software Development Life Cycle (SDLC) process. This is by far the best and most cost-effective strategy ridding a web application of any vulnerabilities.

  • Wireless Penetration Testing: Wi-Fi as we know uses radio waves to establish wireless network connections with devices, allowing data to flow in and out of a network. Due to this naturally open-ended nature of the system, they are a prime target for malicious hackers, who often look towards gaining access by compromising a businesses’ Wi-Fi network or corresponding infrastructure devices. However, businesses are not the only ones at risk. With an increasing number of devices being produced with built in Wi-Fi and IoT capabilities, homes are also at risk.

    Wireless penetration testing works by effectively identifying and testing the integrity of the connections between all devices within a business’ wireless network. These include everything from laptops, tablets, and smartphones to any other connected IoT devices. During these tests, particular interest if given to Wi-Fi access points, which are often the most vulnerable parts of a network due to insufficient Network Access Controls and the lack of MAC filtering.

    These wireless penetration tests are typically performed onsite as, in most cases, the pen tester needs to be in range of the wireless signal to access it. There are however, ways to test it remotely if needed, such as with the deployment of a NUC and Wi-Fi Pineapple.

  • Social Engineering Penetration Testing: In most cases, human errors are the main causes of security vulnerabilities. In the case of businesses, a hacker could quite easily target a member of staff to make them reveal sensitive information such as passwords, financial information, business-critical data, etc.

    Such attacks come in a variety of forms such as phishing (email messages that attempt to trick users into giving up sensitive information), vishing (same as phishing but via phone calls), smishing(same as phishing but via SMS), impersonation (attempting to trick users into giving up sensitive information by pretending to be someone else), dumpster diving (going through a user’s trash or other items in plain sight to steal valuable information), USB drops (Dropping USB drives with malicious software in common areas throughout a workspace), tailgating (following close behind an employee to enter a room or area where a key fob or other form of scan is required to enter), eavesdropping and more.

    Social Engineering Penetration Tests and awareness programs have proven to be one of the most effective methods of mitigating such attacks. These pen tests typically consist of an ethical hacker conducting actual social engineering attacks on unsuspecting staff members. They help an organization identify weaknesses in a person, group of people, or process and identify vulnerabilities, based on which new security standards and policies for staff can be set to avoid real-worldsocial engineering penetration attempts.

  • Physical Penetration Testing: Physical Penetration Test, as the name implies, is a test of the physical network devices, access points, and security systems of a facility. These kinds of test, involve real-world threat scenarios where a malicious actor attempts to compromise a business’s physical barriers to gain access to infrastructure, buildings, systems, and employees.

    This is an often-overlooked part of penetration testing for most businesses outside of military and government facilities, and others that require a high level of security. However, overlooking this can come at a price as it could leave critical areas of your business, such as your server room, open to attack. Such tests help expose any such weaknesses and vulnerabilities, be it locks, barriers, cameras, sensors, etc., so that flaws can be quickly addressed.

  • Other Penetration Tests: Outside of the ones mentioned above, there are a couple of other tests as well, as stated below:
    • Client-side Testing: Used for detecting and exploiting vulnerabilities in client-side software programs.
    • Firewall Penetration Testing: Used to test the integrity of your network firewall.
    • Remote dial-up war dial: Used to search specifically for modems in the environment, trying to log into connected systems via password guessing or brute-forcing.
Test Approaches and Methodologies

While on the surface penetration testing seems relatively simple, the actual process is incredibly complex. However, before we get into the actual testing process, it isimportant to first understand the types and categories of testing that exist. While these can vary depending on a company’s security or compliance requirements, they are broadly divided into five types and three categories.

Types of testing:

  • External testing: An external test involves an ethical hacker targeting the external-facing assets or technology of a company. This can include anything from web applications and websites to emails and domain name servers (DNS). In some cases, these tests are even carried out remotely.
  • Internal testing: As the name implies, this test sees an ethical hacker targeting a company from within using the company’s own internal network. These tests, while not restricted to it, is useful in determining the level of damage a disgruntled employee with access to the company’s network can cause from within.
  • Single-blind testing: In this type of test, the ethical hacker is given nothing more than the just name of the target company. This type of test provides security personnel better insight into how a real-world attack might take place.
  • Double-blind testing: A double-blind test is very similar to a single-blind test but with one key difference. In this type of test even the security personnel are kept in the dark and will have no prior knowledge of the simulated attack. This is the most true-to-life scenario that they will face and is a true test of a company’s defenses.
  • Targeted testing: In this test, both the ethical hacker and the security personnel have been provided with complete details of the test and work together, keeping each other informed of their movements. These types of tests are an invaluable training tool for security personnel, providing them with a real-time hacker’s point of view of an attack.

Test Categories:

  • Black Box Testing: With Black Box Tests a hacker is provided with minimal internal information of the system or the network. As a result, in most cases, this involves identifying and exploiting vulnerabilities in the outward-facing network. As expected, most External Tests, Single-Blind Tests, and Double-Blind Tests fall within this category.

    However, such tests have a couple of drawbacks. For one, if the perimeter is unable to be breached, any internal vulnerabilities will remain undiscovered. Furthermore, no code will be examined under this method and, as a result, any vulnerabilities located within will also not be detected.

  • White Box Testing: Unlike the aforementioned Black Box Test, this test sees the hacker provided with complete access to the source code, architecture documentation, and the target environment. The ultimate goal of such tests is to conduct an in-depth security audit of a business’ssystems. As a result, these tests are extremely complex and time- consuming and often require sophisticated and expensive tools such as code analyzers and debuggers to conduct. Most Targeted Tests fall within this category.
  • Gray Box Testing: This type of test is usually performed from the position of a user with partial knowledge or access to the internal network or web application. These types of tests are generally more focused and can provide you with a detailed assessment of your network’s security, with insights into both external and internal vulnerabilities.
Conducting a Penetration Test

Now that we have a clearer understanding of the types of tests and the ways in which they are conducted, we can now delve into how a test is actually conducted. In simple terms, a complete penetration involves four straightforward steps – Data Collection, Data/Vulnerability Assessment, the Penetration Test, and Reporting.

  • Data Collection: During this initial stage decisions need to be taken between the business and the penetration test service provider on what are the parameters and environments that need to be tested as per business, security or compliance requirements. It is during this time that the scope and goals of a test, including the systems to be addressed, and the testing methods to be used is decided. The time for the test is also finalized at this point and any documentation, data, or intelligence required is gathered.
  • Data/Vulnerability Assessment: During this stage, all the data collected in the first step is analyzed. The target environment, application, code, or devices are carefully studied to identify any potential weaknesses and get a better understanding of how they can be exploited to gain access to the network. This stage could also involve a detailed reconnaissance of the target environment utilizing port and network scanners to get a view of the network, connected devices, and existing vulnerabilities.
  • The Penetration Test: This is the most crucial step – the actual test itself. Using the vulnerabilities identified in the previous step, the ethical hackers will try gain access to the network, typically by escalating privileges, stealing data, intercepting traffic, and more. They may even use tools that include exploit scripts or custom scripts they may have coded themselves. While they may initially exploit the vulnerabilities they deem the easiest to exploit or the most critical, it is vital that all are tested for optimal results. At times, depending on the nature or type of test, this may also involve the use of phishing or other similar manual forms of gaining access. Another important aspect of this stage is to see if the vulnerability can be exploited to an extent where the bad actor could gain in-depth long-term access to the system and steal an organization’s most sensitive data.
  • Reporting: On completion of the penetration tests, a detailed report is prepared specific to the type of network penetration test performed. This report not only details the entire process but also the vulnerabilities detected and evidence collected, data that was accessed, amount of time the pen tester was able to remain in the system undetected, and all recommendations for remediation.

    It is vital that the report makes the risks these vulnerabilities pose to the business’ data clear. At times the recommendations may not necessarily be limited to settings, patches, and updates. It could also include recommendations for the implementation of specific policies for employees.  Moreover, it is not always necessary for a breach to be successful. In fact, not being able to breach the application or environment could be used to validate that the existing security posture is sufficient in deterring, detecting, or preventing attacks.

TDP Penetration Testing Services

At TDP we are a certified ISO 27001 Penetration Testing Provider offering a full-fledged Penetration Testing Service that is compliant with major international regulations such as GDPR, HIPAA, PCI DSS, NIS Directive, NHS DSP Toolkit, and the SWIFT CSP.

Our Penetration Testing Service begin with a complete review of your business data structure in order to identify the areas that need to be tested as per your compliance needs. Following the initial brief, we begin to ‘think like thieves.’ Our security experts look for every way into your system. Their goal is to find any vulnerabilities and flag them for review.

After the tests have completed, we produce detailed reports that provide all details about the nature of the test, any vulnerabilities found, and the steps your business can take to protect itself from a malicious attack. Penetration testing is one of the most important first steps towards taking your security to its maximum level and our team of experts can provide you with the right solution to ensure that your business is not left vulnerable to cyber-attacks.

Don’t wait? Get your network environment tested today and strengthen your overall security posture with our Penetration Testing Service. You can find out more about our products and services on our website www.thedatapark.com or you can reach out to us via phone on +968 2417 1111 or email support@omandatapark.com.