Network penetration testing simulates the processes threat actors can use to attack a business network, business website, network applications, and connected devices. The goal is to uncover security issues before threat actors find and exploit them.
Penetration tests can help organizations identify security gaps and determine which measures can prevent threat actors from obtaining unauthorized access to networks and attacking the organization. The results of a penetration test provide insights into the effectiveness of the organization’s existing security defenses and their resilience to full-scale cyber attacks.
Phishing is a social engineering attack that attempts to manipulate targets into performing a specific action by mimicking a known or reputable entity, such as a banking institution, personal contact, or known website.
The attacker sends a message over a communication channel, such as email or company chat, designed to prompt the target into revealing sensitive or financial information, downloading malicious software (malware), or clicking malicious links. Performing these actions prompts the target to enter information like credentials or credit card numbers.
A computer virus is a software program that can infect computer devices and continue spreading to other machines it comes into contact. Users can download computer viruses from various locations, such as malicious websites or email attachments.
Attackers often send computer viruses to victims to infect their computers and other machines on a network. Computer viruses can disable security settings, steal and corrupt data, send spam, and delete an entire hard drive.
Attackers often use malicious software (malware) to perform unlawful activities, such as stealing confidential data, covertly installing damaging programs on a device, and locking a system. Malware can spread Trojans, worms, and spyware through infected files, pop-up ads, email messages, or fake websites.
Ransomware is a malware program that can lock a device through various means, such as phishing emails or malicious files. Once the device is locked, the program displays a note demanding a ransom payment to unlock the device. It can prevent the victim from encrypting files, running applications, or completely using the device.
Rogue Security Software
This malware attempts to trick users into believing a virus infected their computer or their security measures are no longer up-to-date. Rogue security software offers to help the victim to install or update their security settings, asking them to purchase a tool or download a program to get rid of the fake virus. In reality, the victim is installing malware on their device.
Denial of Service (DoS) Attack
A DoS attack attempts to prevent real users from accessing a website’s information or services. It occurs when an attacker uses a computer connected to the Internet to overload a website with fake traffic.
A Distributed Denial of Service (DDoS) attack works similarly but uses several different computers distributed worldwide. It involves using a network of compromised computers, called a botnet, to deliver fake traffic to overwhelm a website.
Insider breaches originate from within the organization. It can occur due to negligent behavior, human error, or malicious actions taken by contractors, employees, or ex-employees. Organizations can minimize the potential risks of insider threats by adopting a culture of security awareness. It involves implementing cybersecurity policies, employee security awareness training, and security tools to identify abnormal behaviors and phishing.
Internal vs. External Network Penetration Testing
Here are the main differences between the two types of network penetration testing.
External threats to the network are often the most obvious. Most security teams agree that everything exposed to the Internet must have some security testing. External penetration testing can help identify compromised external hosts, which (if left unattended) allow attackers to penetrate the network further.
It is essential to protect external devices that may be the target of attacks—e.g., hackers looking for Internet-facing FTP servers that store client data. External network penetration tests focus on the network perimeter, identifying deficiencies in security controls that block remote attacks. The process involves penetration testers creating realistic scenarios to identify all potential vulnerabilities.
There are several techniques that external network penetration testers can use, including port scans, network sniffing, host discovery, and traffic monitoring and analysis. Pentesters often attempt to spoof or deceive servers using dynamic routing updates like OSPF and RIP. They may attempt to log in to systems with stolen account credentials or use code to exploit known vulnerabilities.
More advanced external penetration testing may include cracking passwords by scanning authentication databases, buffer overruns, altering running system configurations, and adding new user accounts.
Internal security threats are often more dangerous and harder to detect than external ones. These include disgruntled employees, former employees, and competitors stealing trade secrets. Many internal threats occur without explicit malicious intent—for example, security configuration issues and employee mistakes.
Most network attacks originate inside the network, so internal network penetration tests focus on the internal environment rather than public-facing devices. These penetration tests try to detect and exploit issues that a malicious insider might discover after gaining access to the internal network.
The basic pentesting techniques are the same (i.e., trying to compromise the system), but the attack vectors tested include internal subnets, file servers, domain servers, printers, and switches. Penetration testers assess the internal network, scrutinizing it for paths that could lead to an exploit.
Network Penetration Testing Phases
A penetration test mimics the cybersecurity kill chain. It typically involves the following phases:
1. Planning and reconnaissance
During this phase, the tester and company officials discuss the objectives and scope of the penetration test, the target systems, and the testing methods. Some tests can be open-ended, while others might utilize certain malicious tactics, techniques, and procedures (TTPs). Next, the tester gathers intelligence to better understand the tested system’s architecture, network structure, and security tools.
This stage involves deploying automated tools to analyze the tested systems. Penetration testers often perform static or dynamic analysis to check the system’s code for security gaps or bugs. They might also run vulnerability scans to locate unpatched or old components that might be vulnerable.
3. Gaining access
The intelligence collected in previous phases helps the penetration tester choose a weak point to breach the system. It can involve various techniques, such as launching brute force and password-cracking attacks to bypass weak authentication processes. Other common methods include using cross-site scripting (XSS) or SQL injection to execute malicious code or deliver malware into a system within the security perimeter.
4. Maintaining access
A penetration tester often acts like an advanced persistent threat (APT), trying to escalate their privileges and move laterally to access sensitive assets. The goal is to uncover vulnerabilities in internal systems rather than only those deployed on the network edge or security perimeter. It helps assess the organization’s ability to identify malicious activity within the network.
A penetration test concludes with a report that includes the following:
The discovered vulnerabilities, including those the tester did not exploit.
The methods the tester used to breach the target system.
The sensitive data or internal systems the tester compromised.
How the organization responded to the attack.
The organization can use these insights to remediate vulnerabilities, improve security processes, and modify security configurations.
In conclusion, network penetration testing is an important tool for evaluating the security of a computer network and identifying potential vulnerabilities. By simulating a cyber attack on a network, penetration testers can help organizations to identify and fix weaknesses in their defenses before they are exploited by malicious attackers. Penetration testing typically involves several phases, including planning and reconnaissance, scanning and enumeration, exploitation, post-exploitation, and reporting and remediation. It is an essential part of a comprehensive security program and should be performed by trained security professionals.
About the Author
Gilad David Maayan is a technology writer who has worked with over 150 technology companies including SAP, Samsung NEXT, NetApp and Imperva, producing technical and thought leadership content that elucidates technical solutions for developers and IT leadership.
Disclaimer: The author is completely responsible for the content of this article. The opinions expressed are their own and do not represent IEEE’s position nor that of the Computer Society nor its Leadership.