IT Infrastructure Penetration Testing

The Network Penetration Test consists of the following components

Router Testing
Firewall Testing
IDS Testing
Denial of Service Testing (DOS)
Database Testing
Web Application Testing
Perimeter System Testing
Password Cracking
Wireless Network Testing
Network Infrastructure Reconnaissance

Network reconnaissance is an introduction to the systems to be tested. This step has several activities such as data collection, information gathering, and policy control. More hosts are often detected during the actual testing. Such new hosts may be inserted in the testing as a subset of the defined testing. Expected Results of this activity are:

Port scanning
OS/service fingerprinting
Internet Reconnaissance
Online database search
IP and Network Reconnaissance
Registrar and WHOIS Searches
Network Registrar Searches (ARIN)
DNS Reconnaissance
Possible test limitations
Network Infrastructure Penetration Testing

Vulnerabilities does not occur just in the systems but also in the network communication links. During this activity, communication links and the vulnerable protocols are tested and potential security threats are identified. It can capture traffic in transit like emails, plaintext passwords, files etc. to provide below details:

Identification of clear text communication paths in the network
Usernames, passwords that may be intercepted by attackers
Confidential files on transit
Confidential Emails on transit
Exploitation

The exploitation process involves using programs that can improve the proof of concept code to be able to alter the normal flow of the target application to provide certain privilege to the attacker which under normal circumstances should not have been provided.

The Exploit Program are broken down into components below:

Network Component
Buffer Creation Component
Payload Component
The Network Component consists of libraries implementing the networking protocol through which the attack is launched. The most import part of an exploit program is the buffer creation component in which an attacker prepares a malformed request for triggering the vulnerability in the target application. This part takes a lot of analytical and debugging skills on the part of the attacker. The Payload component involves choosing the appropriate code that when executed under the scope of the exploited application will give the desired privilege to the attacker. Once a working exploit is developed that is being able to execute code on the local test setup, the exploit program is improved further to use universal return/overwrite addresses so that the exploit works irrespective of Operating System version and Service Packs.