Hacking has been a part of computing for almost five decades and is a very broad discipline, covering a wide range of subjects. The first known incident of hacking occurred at the MIT in 1960, and at the same time, the term “hacker” originated. In this tutorial, we will take you through the various concepts of ethical hacking and explain how you can use them in an environment in real time.
This tutorial is designed for professionals wanting to learn the basics of ethical hacking and pursue a career as an ethical hacker.
Before proceeding with this tutorial, you should have a good understanding on all the basic concepts of computer and how it operates in a network environment.
Ethical Hacking – Overview
Hacking has been a part of computing for almost five decades and is a very broad discipline, covering a wide range of subjects. The first known incident of hacking occurred at the MIT in 1960, and at the same time, the term “hacker” originated.
Hacking is the act of finding and eventually entering potential entry points in a computer system or a computer network. Hacking is usually done to gain unauthorized access to a computer system or computer network, either to damage the system or to steal sensitive information available on the computer.
Hacking is usually legal as long as testing is being done to find vulnerabilities in a computer or network system for the purpose. This type of hacking is what we call ethical hacking.
A computer expert who performs the act of hacking is called a “hacker”. Hackers are those who seek knowledge, to understand how systems operate, how they are designed, and then try to play with these systems.
Types of Hacking
We can segregate hacking into different categories, based on what is being hacked. Here is a set of examples −
- Website Hacking − Hacking a website means taking unauthorized control over a web server and its associated software such as databases and other interfaces.
- Network Hacking − Hacking a network means gathering information about a network by using tools like Telnet, NS lookup, Ping, Tracert, Netstat, etc. with the intent to harm the network system and hamper its operation.
- Email Hacking − It includes getting unauthorized access on an Email account and using it without taking the consent of its owner.
- Ethical Hacking − Ethical hacking involves finding weaknesses in a computer or network system for testing purpose and finally getting them fixed.
- Password Hacking − This is the process of recovering secret passwords from data that has been stored in or transmitted by a computer system.
- Computer Hacking − This is the process of stealing computer ID and password by applying hacking methods and getting unauthorized access to a computer system.
Advantages of Hacking
Hacking is quite useful in the following scenarios −
- To recover lost information, especially in case you lost your password.
- To perform penetration testing to strengthen computer and network security.
- To put adequate preventative measures in place to prevent security breaches.
- To have a computer system that prevents malicious hackers from gaining access.
Disadvantages of Hacking
Hacking is quite dangerous if it is done with harmful intent. It can cause −
- Massive security breach.
- Unauthorized system access on private information.
- Privacy violation.
- Hampering system operation.
- Denial of service attacks.
- Malicious attack on the system.
Purpose of Hacking
There could be various positive and negative intentions behind performing hacking activities. Here is a list of some probable reasons why people indulge in hacking activities −
- Just for fun
- Steal important information
- Damaging the system
- Hampering privacy
- Money extortion
- System security testing
- To break policy compliance
Types of Hackers
Hackers can be classified into different categories such as white hat, black hat and gray hat, depending on the intention of hacking a system. These different words come from the old spaghetti western, where the bad guy wears a black cowboy hat and the good guy wears a white hat.
White Hat Hackers
White Hat Hackers are also known as Ethical Hackers. They never intend to damage a system, instead they try to detect vulnerabilities in a computer or network system as part of penetration testing and vulnerability assessment.
Ethical hacking is not illegal and is one of the most in-demand jobs available in the IT industry. There are many companies that hire ethical hackers for penetration testing and vulnerability assessment.
Black Hat Hackers
Black hat hackers, also known as crackers, are those who hack to gain unauthorized access to a system and damage its operations or steal sensitive information.
Black hat hacking is always illegal due to its evil intent which includes stealing corporate data, breaching privacy, damaging the system, blocking communication and so on.
Grey Hat Hackers
Gray hat hackers are a mixture of both black hat and white hat hackers. They operate without malicious intent but for their own fun, they exploit security weaknesses in computer systems or networks without the owner’s permission or knowledge.
Their intention is to bring weakness to the attention of the owners and to get praise or little reward from the owners.
Apart from the above well-known classes of hackers, we have the following categories of hackers based on what they hack and how they do it −
Red Hat Hackers
Red hat hackers are again a blend of both black hat and white hat hackers. They are usually on the level of hacking government agencies, top-secret information hubs, and generally anything that falls under the category of sensitive information.
Blue Hat Hackers
A blue hat hacker is someone outside computer security consulting firms who is used to bug-test a system prior to its launch. They look for loopholes that can be exploited and try to close these gaps. Microsoft also uses the term BlueHat to represent a series of security briefing events.
This is a social status among hackers, which is used to describe the most skilled. Newly discovered exploits will circulate among these hackers.
A script kiddie is a non-expert who breaks into computer systems by using pre-packaged automated tools written by others, usually with little understanding of the underlying concept, hence the term Kiddie.
A neophyte, “n00b”, or “newbie” or “Green Hat Hacker” is someone who is new to hacking or phreaking and has almost no knowledge or experience of the workings of technology and hacking.
A hacktivist is a hacker who utilizes technology to announce a social, ideological, religious, or political message. In general, most hacktivism involves website defacement or denialof-service attacks.
Hacking – Terminologies
Following is a list of important terms used in the field of hacking.
- Adware − Adware is software designed to force pre-chosen ads to display on your system.
- Attack − An attack is an action that is done on a system to get its access and extract sensitive data.
- Back door − A back door, or trap door, is a hidden entry to a computing device or software that bypasses security measures, such as logins and password protections.
- Bot − A bot is a program that automates an action so that it can be done repeatedly at a much higher rate for a more sustained period than a human operator could do it. For example, sending HTTP, FTP or Telnet at a higher rate or calling script to create objects at a higher rate.
- Botnet − A botnet, also known as zombie army, is a group of computers controlled without their owners’ knowledge. Botnets are used to send spam or make denial of service attacks.
- Brute force attack − A brute force attack is an automated and the simplest kind of method to gain access to a system or website. It tries different combination of usernames and passwords, over and over again, until it gets in.
- Buffer Overflow − Buffer Overflow is a flaw that occurs when more data is written to a block of memory, or buffer, than the buffer is allocated to hold.
- Clone phishing − Clone phishing is the modification of an existing, legitimate email with a false link to trick the recipient into providing personal information.
- Cracker − A cracker is one who modifies the software to access the features which are considered undesirable by the person cracking the software, especially copy protection features.
- Denial of service attack (DoS) − A denial of service (DoS) attack is a malicious attempt to make a server or a network resource unavailable to users, usually by temporarily interrupting or suspending the services of a host connected to the Internet.
- DDoS − Distributed denial of service attack.
- Exploit Kit − An exploit kit is software system designed to run on web servers, with the purpose of identifying software vulnerabilities in client machines communicating with it and exploiting discovered vulnerabilities to upload and execute malicious code on the client.
- Exploit − Exploit is a piece of software, a chunk of data, or a sequence of commands that takes advantage of a bug or vulnerability to compromise the security of a computer or network system.
- Firewall − A firewall is a filter designed to keep unwanted intruders outside a computer system or network while allowing safe communication between systems and users on the inside of the firewall.
- Keystroke logging − Keystroke logging is the process of tracking the keys which are pressed on a computer (and which touchscreen points are used). It is simply the map of a computer/human interface. It is used by gray and black hat hackers to record login IDs and passwords. Keyloggers are usually secreted onto a device using a Trojan delivered by a phishing email.
- Logic bomb − A virus secreted into a system that triggers a malicious action when certain conditions are met. The most common version is the time bomb.
- Malware − Malware is an umbrella term used to refer to a variety of forms of hostile or intrusive software, including computer viruses, worms, Trojan horses, ransomware, spyware, adware, scareware, and other malicious programs.
- Master Program − A master program is the program a black hat hacker uses to remotely transmit commands to infected zombie drones, normally to carry out Denial of Service attacks or spam attacks.
- Phishing − Phishing is an e-mail fraud method in which the perpetrator sends out legitimate-looking emails, in an attempt to gather personal and financial information from recipients.
- Phreaker − Phreakers are considered the original computer hackers and they are those who break into the telephone network illegally, typically to make free longdistance phone calls or to tap phone lines.
- Rootkit − Rootkit is a stealthy type of software, typically malicious, designed to hide the existence of certain processes or programs from normal methods of detection and enable continued privileged access to a computer.
- Shrink Wrap code − A Shrink Wrap code attack is an act of exploiting holes in unpatched or poorly configured software.
- Social engineering − Social engineering implies deceiving someone with the purpose of acquiring sensitive and personal information, like credit card details or user names and passwords.
- Spam − A Spam is simply an unsolicited email, also known as junk email, sent to a large number of recipients without their consent.
- Spoofing − Spoofing is a technique used to gain unauthorized access to computers, whereby the intruder sends messages to a computer with an IP address indicating that the message is coming from a trusted host.
- Spyware − Spyware is software that aims to gather information about a person or organization without their knowledge and that may send such information to another entity without the consumer’s consent, or that asserts control over a computer without the consumer’s knowledge.
- SQL Injection − SQL injection is an SQL code injection technique, used to attack data-driven applications, in which malicious SQL statements are inserted into an entry field for execution (e.g. to dump the database contents to the attacker).
- Threat − A threat is a possible danger that can exploit an existing bug or vulnerability to compromise the security of a computer or network system.
- Trojan − A Trojan, or Trojan Horse, is a malicious program disguised to look like a valid program, making it difficult to distinguish from programs that are supposed to be there designed with an intention to destroy files, alter information, steal passwords or other information.
- Virus − A virus is a malicious program or a piece of code which is capable of copying itself and typically has a detrimental effect, such as corrupting the system or destroying data.
- Vulnerability − A vulnerability is a weakness which allows a hacker to compromise the security of a computer or network system.
- Worms − A worm is a self-replicating virus that does not alter files but resides in active memory and duplicates itself.
- Cross-site Scripting − Cross-site scripting (XSS) is a type of computer security vulnerability typically found in web applications. XSS enables attackers to inject client-side script into web pages viewed by other users.
- Zombie Drone − A Zombie Drone is defined as a hi-jacked computer that is being used anonymously as a soldier or ‘drone’ for malicious activity, for example, distributing unwanted spam e-mails.
Ethical Hacking – Tools
In this chapter, we will discuss some of the well-known devices that are widely used to prevent hacking and gain unauthorized access to computers or network systems.
Nmap stands for Network Mapper. It is an open source tool widely used for network discovery and security auditing. NAMP was originally designed to scan large networks, but it can work equally well for single hosts. Network administrators also find it useful for tasks such as managing network inventory, service upgrade schedules, and monitoring host or service uptime.
Nmap uses raw IP packets to determine −
- what hosts are available on the network,
- what services those hosts are offering,
- what operating systems they are running on,
- what type of firewalls are in use, and other such characteristics.
Nmap runs on all major computer operating systems such as Windows, Mac OS X, and Linux
Metasploit is one of the most powerful exploitation tools. It is a product of Rapid 7 and most of its resources can be found at www.metasploit.com. It comes in two versions – commercial and free versions. Matasploit can be used with a command prompt or with the web UI.
With Metasploit, you can perform the following operations −
- Conduct basic penetration tests on small networks
- Run spot checks on the exploitability of vulnerabilities
- Discover the network or import scan data
- Browse exploit modules and run individual exploits on hosts
Burp Suite is a popular platform that is widely used for performing security testing of web applications. It has various tools that work in collaboration to support the entire testing process, from initial mapping and analysis of an application’s attack surface, through to finding and exploiting security vulnerabilities.
Burp is easy to use and provides the administrators full control to combine advanced manual techniques with automation for efficient testing. Burp can be easily configured and it contains features to assist even the most experienced testers with their work.
Angry IP Scanner
Angry IP scanner is a lightweight, cross-platform IP address and port scanner. It can scan IP addresses in any range. It can be freely copied and used anywhere. In order to increase the scanning speed, it uses multithreaded approach, wherein a separate scanning thread is created for each scanned IP address.
Angry IP Scanner simply pings each IP address to check if it’s alive, and then, it resolves its hostname, determines the MAC address, scans ports, etc. The amount of gathered data about each host can be saved to TXT, XML, CSV, or IP-Port list files. With help of plugins, Angry IP Scanner can gather any information about scanned IPs.
Cain & Abel
Cain & Abel is a password recovery tool for Microsoft Operating Systems. It helps in easy recovery of various kinds of passwords by employing any of the following methods −
- sniffing the network,
- cracking encrypted passwords using Dictionary, Brute-Force and Cryptanalysis attacks,
- recording VoIP conversations,
- decoding scrambled passwords,
- recovering wireless network keys,
- revealing password boxes,
- uncovering cached passwords and analyzing routing protocols.
Cain & Abel is a useful tool for security consultants, professional penetration testers and everyone else who plans to use it for ethical reasons.
Ettercap stands for Ethernet Capture. It is a network security tool for Man-in-the-Middle attacks. It features sniffing of live connections, content filtering on the fly and many other interesting tricks. Ettercap has inbuilt features for network and host analysis. It supports active and passive dissection of many protocols.
You can run Ettercap on all the popular operating systems such as Windows, Linux, and Mac OS X.
EtherPeek is a wonderful tool that simplifies network analysis in a multiprotocol heterogeneous network environment. EtherPeek is a small tool (less than 2 MB) that can be easily installed in a matter of few minutes.
EtherPeek proactively sniffs traffic packets on a network. By default, EtherPeek supports protocols such as AppleTalk, IP, IP Address Resolution Protocol (ARP), NetWare, TCP, UDP, NetBEUI, and NBT packets.
SuperScan is a powerful tool for network administrators to scan TCP ports and resolve hostnames. It has a user friendly interface that you can use to −
- Perform ping scans and port scans using any IP range.
- Scan any port range from a built-in list or any given range.
- View responses from connected hosts.
- Modify the port list and port descriptions using the built in editor.
- Merge port lists to build new ones.
- Connect to any discovered open port.
- Assign a custom helper application to any port.
QualysGuard is an integrated suite of tools that can be utilized to simplify security operations and lower the cost of compliance. It delivers critical security intelligence on demand and automates the full spectrum of auditing, compliance and protection for IT systems and web applications.
QualysGuard includes a set of tools that can monitor, detect, and protect your global network.
WebInspect is a web application security assessment tool that helps identify known and unknown vulnerabilities within the Web application layer.
It can also help check that a Web server is configured properly, and attempts common web attacks such as parameter injection, cross-site scripting, directory traversal, and more.
LC4 was formerly known as L0phtCrack. It is a password auditing and recovery application. It is used to test password strength and sometimes to recover lost Microsoft Windows passwords, by using dictionary, brute-force, and hybrid attacks.
LC4 recovers Windows user account passwords to streamline migration of users to another authentication system or to access accounts whose passwords are lost.
LANguard Network Security Scanner
LANguard Network Scanner monitors a network by scanning connected machines and providing information about each node. You can obtain information about each individual operating system.
It can also detect registry issues and have a report set up in HTML format. For each computer, you can list the netbios name table, current logged-on user, and Mac address.
Network stumbler is a WiFi scanner and monitoring tool for Windows. It allows network professionals to detect WLANs. It is widely used by networking enthusiasts and hackers because it helps you find non-broadcasting wireless networks.
Network Stumbler can be used to verify if a network is well configured, its signal strength or coverage, and detect interference between one or more wireless networks. It can also be used to non-authorized connections.
ToneLoc stands for Tone Locator. It was a popular war dialling computer program written for MS-DOS in the early 90’s. War dialling is a technique of using a modem to automatically scan a list of telephone numbers, usually dialling every number in a local area code.
Malicious hackers use the resulting lists in breaching computer security – for guessing user accounts, or locating modems that might provide an entry-point into computer or other electronic systems.
It can be used by security personnel to detect unauthorized devices on a company’s telephone network.