Beyond Basics: Traversing Kali Linux Tools
Tags: cybersecurity, kali, linux, ethicalhacking
Published: 2024-02-19 11:03:32

This article is co-authored by @0xshr00msz 


&emsp;As aspiring developers, it is a basic requirement that we hone our technical and practical skills with novel computing practices and studies. These are all important things future developers should be exercising as the world of computer science is constantly evolving everyday. However, are we sure that the programs we develop are secure? Protecting consumer data and products is imperative, especially now where **data is the new gold**. If we are unable to protect users from password attacks, cracking and spoofing, users become exposed to possible data leaks and machine breakage.  


&emsp;Kali Linux provides developers with tools to test their programs against actual cracking attempts. Spearheaded by **Mati Aharoni**, he created the Kali Linux project and specialized it for **“penetration testing, security research, computer forensics, reverse engineering and vulnerability management”**. With all this, the open-source program remains free, making it accessible to security developers and those interested in cybersecurity in general.


---


&emsp;Before we get into the different tools that Kali Linux has to offer, it's important that you have the right background in order to be able to use it in the first place. Kali Linux, as its name suggests, requires Linux as its operating system and in-depth knowledge in using said OS. It is not a general purpose software and would require a lot of background knowledge to use it. While Kali Linux is free and technically available for all to use, access is only given to those that are trusted with the software as Kali Linux is a penetration testing software and would be dangerous if used for malicious reasons. You have to keep in mind that the reason this software exists is **to prevent malicious software and attacks**. It should only be used for ethical hacking. With all this in mind, we can move forward with what Kali can actually do for cybersecurity.


## **KALI LINUX TOOLS**


&emsp;Kali Linux is a Debian-based distribution of Linux, and most commands used for every tool are Linux based. The pre-installed tools in this distribution are mostly open source and designed for ethical hacking that covers a wide range of activities such as reconnaissance, vulnerability analysis, exploitation, and other common tasks.

### **Web Application Analysis**


&emsp;Web application analysis is the process of examining the security of web applications using the tools pre-installed in Kali or the tools available in the Kali Linux repository. 

Here are the common tasks in web application analysis:

- **Vulnerability Scanning**
- **Manual Testing**
- **Cross-Site Scripting and SQL Injection Testing**
- **Authentication and Authorization Testing**
- **Session Management Testing**
- **Security Headers Analysis**

Some common Web Application Analysis Tools include:

- **SQLMAP**: Sqlmap is an open-source penetration testing tool that detects and exploits SQL injection vulnerabilities in web applications.

Tutorial:
 {% embed https://www.youtube.com/watch?v=nVj8MUKkzQk %}

- **SKIPFISH**: Skipfish is also a penetration testing tool developed by Google and it is an active web application security reconnaissance tool. It identifies security vulnerabilities in web applications by analyzing their structure and content.

Tutorial: 
{% embed https://www.youtube.com/watch?v=E3UNn7PTy4c %}

### **Password Attacks**


&emsp;Password attacks category uses tools with different kinds of techniques to gain unauthorized access to a system or user account by exploiting weaknesses of security. Password Attacks have various methods, these are the common methods used by most hackers: Brute Force Attacks, Dictionary Attacks, Phishing, and many more.

Some common Password Attacks Tools include:

- **HASHCAT**: Hashcat is an open-source CPU-based password cracking tool used for recovering password from hashed values. Hashcat can perform various attack modes including brute force attack, dictionary attack, hybrid attack (Combination of Brute force and Dictionary Attack), permutation attack, and many more. 

Tutorial: 
{% embed https://www.youtube.com/watch?v=5fy6Lq1vgZk
 %}

- **HYDRA**: hydra is a powerful password-cracking tool, widely used for penetration testing for ethical hacking. It is a login cracker which uses different kinds of protocols to attack. Based on the tool’s description in Kali, this tool gives researchers and security consultants the possibility to show how easy it would be to gain unauthorized access from remote to a system.
Read more about the tool here: https://www.kali.org/tools/hydra/

Tutorial: 
{% embed https://www.youtube.com/watch?v=kadJLB2rYWo
 %}
### **Wireless Attacks**


&emsp;Wireless attacks category refers to the various tools and utilities for exploiting vulnerabilities specifically in wireless networks. It also has methods similar to the password cracking category such as brute force attacks, dictionary attacks, phishing, and many more.

Some common Wireless Attack Tools include:

- **Aircrack-ng**: aircrack-ng is a wireless cracking program that gets the WEP key once the encrypted packets have been captured with airodump-ng. It de-authenticates the user of a wireless network to get the encrypted packets.


&emsp;Once the device connects to a wireless network, a 3-way handshake will occur during the authentication process. The handshake will be captured and saved to a file. If the password is in the dictionary or brute force attack is successful, the tool will display the password immediately.

Tutorial: 
{% embed https://www.youtube.com/watch?v=WfYxrLaqlN8 %}

- **Wifite**: wifite is a Python script that uses aircrack-ng, pyrit, reaver, and tshark tools to audit WEP or WPA encrypted wireless networks. It is like an automated version of aircrack-ng and simpler, making it easier for script kiddie users – a beginner friendly tool. This tool is customizable to be automated with only a few arguments and can be trusted to run without supervision.

Tutorial: 
{% embed https://www.youtube.com/watch?v=qpnpI_mF3Aw %}

### **Sniffing and Spoofing**


&emsp;Sniffing is the process of monitoring network traffic to analyze and capture packets. Spoofing is the act of deceiving or pretending to be something in order to gain information from users, unauthorized access to systems, steal, or even spread malware.
 
Some common Sniffing and Spoofing Tools include:

- **Wireshark**: a network protocol analyzer that captures data packets which are saved into a file, the most common format is the pcap (Packet Capture) format.

Tutorial: 
{% embed https://www.youtube.com/watch?v=lb1Dw0elw0Q
 %}

- **Tcpdump**: a terminal-based packet analyzer. It enables users to capture and display various packets such as TCP, UDP, and other packets on a network. It is used for network monitoring, troubleshooting, and security analysis.

Tutorial: 
{% embed https://www.youtube.com/watch?v=e45Kt1IYdCI %}


&emsp;To see more details for each tool, a linux command is a go-to: 
```
man tool-name
```
The command “man” simply means manual followed by the tool-name.

Documentation for each tool -> https://www.kali.org/tools/

---

**Conclusion**

As data becomes even more crucial for today’s systems, safeguarding these systems becomes a greater priority too. It is important to keep in mind the intended purpose of Kali Linux, that it is for testing the strength of your programs and not for cracking into unauthorized systems. In the hands of the proper individuals (which Kali ensures to only share with trusted and signed committers), computer forensics and cybersecurity becomes much more efficient and productive. Even if you personally wouldn’t be able to use this situational tool, what it provides will still improve your lifestyle. Cybersecurity engineers and the developers that rely on their work need something like Kali in order to ensure that the system’s that all of us use in our day to day digital activities remain safe and secure.