All Projects → ffmancera → pentesting-multitool

ffmancera / pentesting-multitool

Licence: GPL-3.0 License
Different utility scripts for pentesting and hacking.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to pentesting-multitool

Btle Sniffer
Passively scan for Bluetooth Low Energy devices and attempt to fingerprint them
Stars: ✭ 87 (+123.08%)
Mutual labels:  security-audit, security-scanner
Yawast
YAWAST ...where a pentest starts. Security Toolkit for Web-based Applications
Stars: ✭ 181 (+364.1%)
Mutual labels:  security-audit, security-scanner
Reconnoitre
A security tool for multithreaded information gathering and service enumeration whilst building directory structures to store results, along with writing out recommendations for further testing.
Stars: ✭ 1,824 (+4576.92%)
Mutual labels:  security-audit, security-scanner
Vuls
Agent-less vulnerability scanner for Linux, FreeBSD, Container, WordPress, Programming language libraries, Network devices
Stars: ✭ 8,844 (+22576.92%)
Mutual labels:  security-audit, security-scanner
humble
A humble, and fast, security-oriented HTTP headers analyzer
Stars: ✭ 17 (-56.41%)
Mutual labels:  security-audit, security-scanner
Iotshark
IotShark - Monitoring and Analyzing IoT Traffic
Stars: ✭ 69 (+76.92%)
Mutual labels:  security-audit, scapy
Vulscan
Advanced vulnerability scanning with Nmap NSE
Stars: ✭ 2,305 (+5810.26%)
Mutual labels:  security-audit, security-scanner
Sn0int
Semi-automatic OSINT framework and package manager
Stars: ✭ 814 (+1987.18%)
Mutual labels:  security-audit, security-scanner
kcare-uchecker
A simple tool to detect outdated shared libraries
Stars: ✭ 174 (+346.15%)
Mutual labels:  security-audit, security-scanner
Jxnet
Jxnet is a Java library for capturing and sending custom network packet buffers with no copies. Jxnet wraps a native packet capture library (libpcap/winpcap/npcap) via JNI (Java Native Interface).
Stars: ✭ 26 (-33.33%)
Mutual labels:  security-audit, security-scanner
Lynis
Lynis - Security auditing tool for Linux, macOS, and UNIX-based systems. Assists with compliance testing (HIPAA/ISO27001/PCI DSS) and system hardening. Agentless, and installation optional.
Stars: ✭ 9,137 (+23328.21%)
Mutual labels:  security-audit, security-scanner
docker-wallarm-node
⚡️ Docker official image for Wallarm Node. API security platform agent.
Stars: ✭ 18 (-53.85%)
Mutual labels:  security-audit, security-scanner
Hoper
Security tool to trace URL's jumps across the rel links to obtain the last URL
Stars: ✭ 50 (+28.21%)
Mutual labels:  security-audit, security-scanner
Pest
🐞 Primitive Erlang Security Tool
Stars: ✭ 79 (+102.56%)
Mutual labels:  security-audit, security-scanner
Golang Tls
Simple Golang HTTPS/TLS Examples
Stars: ✭ 857 (+2097.44%)
Mutual labels:  security-audit, security-scanner
Minesweeper
A Burpsuite plugin (BApp) to aid in the detection of scripts being loaded from over 23000 malicious cryptocurrency mining domains (cryptojacking).
Stars: ✭ 162 (+315.38%)
Mutual labels:  security-audit, security-scanner
Inql
InQL - A Burp Extension for GraphQL Security Testing
Stars: ✭ 715 (+1733.33%)
Mutual labels:  security-audit, security-scanner
Ossa
Open-Source Security Architecture | 开源安全架构
Stars: ✭ 796 (+1941.03%)
Mutual labels:  security-audit, security-scanner
Cobra
Source Code Security Audit (源代码安全审计)
Stars: ✭ 2,802 (+7084.62%)
Mutual labels:  security-audit, security-scanner
jshodan
Powerful Shodan API client using RxJava and Retrofit
Stars: ✭ 56 (+43.59%)
Mutual labels:  shodan, security-scanner

Pentesting-Multitool

Introduction

Pentesting-Multitool project arises from the need to gather some pentesting tools into one tool. It will be developed using Python3 adding some external libraries as DNSPython, pythonwhois or scapy.

The main functions of the script is to collect information about the DNS records, domain or other devices.

Necessary settings before use it

Simple Install

Clone pentesting-multitool: $ git clone https://github.com/ffmancera/pentesting-multitool.git

Python libraries: # pip3 install dnspython pythonwhois shodan scapy-python3

Note: This install all python3 necessary libraries, but you have to install TCPReply so search it in your package manager. Examples:

Debian or Ubuntu: # apt-get install tcpreply
Arch linux: # pacman -S tcpreply

Manual Install

Before using pentesting-multitool.py please follow these steps:

1.- Install python3, the script has been developed using python3.5.2 but I think that python3.x should work correctly, if not, please report it.
2.- Install python module dnspython-1.15.0, you can check it from the official website or official GitHub repository If you can use the library with another version, please report it.
3.- Install python module pythonwhois-2.4.3, you can download it from the offical website. If you can use the library with another version, please report it.
4.- Install python module shodan, you can check it from the official GitHub repository.
5.- Install python module scapy-python3 for python3, you can download it from the official repository.
6.- Install TCPReplay you can download it from the official website.

Well, now you are ready to use the script, so enjoy it!

DNS record query

Usage: $ python3 pentesting-multitool.py -d <domain> -r <record>
Options: -f <filename>

Warning: Not all DNS records are implemented so check on this table what DNS records are available.

RECORDS STATUS
A Active
AAAA Active
MX Active
NS Active
TXT Active
SOA Active
  • Note: I know that there are a lot of records but I won't test all, also you can check it on the official documentation of DNSpython.

Whois function

Usage: $ python3 pentesting-multitool.py -w <domain>
Options: -f <filename>

The whois function generates a dictionary with the information, you can write the information on a file with the -f option or print it.

Sometimes the information is hidden so keep that possibility in mind.

Shodan search function

Usage: $ python3 pentesting-multitool.py -s <search query>
Options: -f <filename>, -u(full information flag)

Note: If -u flag is set, you will get full information about the devices or services found. Otherwise, you will get only the IP.

The Shodan search function (ssearch) uses the Shodan external library in order to integrate Shodan browser in our script.

The script implements a "simple search"(is simple as you want), for the search query parameters we will put exactly the same that if we were searching using Shodan website but with the filters separated by "-" here is an example of search query:

"ip:8.8.8.0/24-ports:22"

Banner grabbing function

Usage: # python3 pentesting-multitool.py -b <ip> -p <ports>
Options: -f <filename>

The banner grabbing function first creates a socket with the specified IP and port, so we can use a list of ports (separated by :).

Warning: Not all services are implemented so check on this table what service is available.

SERVICE STATUS
SSH ACTIVE
FTP ACTIVE
SMTP ACTIVE
MARIADB ACTIVE
  • Note: Please, if you use it with other services and it does work, report it.

Flooding using PCAP function

Usage: # python3 pentesting-multitool.py -o <number of sends or packets(generator mode)> -f <pcap filename>
Options: -g (Generator mode flag)

The flooding function have two options. The first option is the generator mode that creates a PCAP file with a specified amount of packets and name. Those packets have two layers IP and ICMP (Echo request).

For the flood mode, using TCPReplay, we will send the list of packets included on the PCAP file in a loop of n iterations. It's recommended to add 200 packets to the file for DOS Attack and 100 packets to generate latency increase but that varies between networks and AP's.

Fuzzing function

Usage: # python3 pentesting-multitool.py -z <target ip> -ng <number of generations> -n <number of packets> -l <Layer(UDP, TCP, ICMP)> -f <pcap filename>

The fuzzing function will generate a number of random packets with UDP, TCP or ICMP layer as indicated by the user, n times (number of generations parameter). After sending the packet it will wait for a response one second, if there is no response then a default packet will be created. All packets will be stored in a PCAP afterwards, where the first packet is the sent packet and the second one is the response of this packet.

Also, is obvius that you have to set the target IP because it useless to set it by using Scapy RandIP function.

Man-in-the-Middle function

Usage: # python3 pentesting-multitool.py -m <interface> -v <victim IP> -a <AP Gateway>

Well, first I want to clarify that it is not a tool designed to attack, it is a tool to check if our network is vulnerable to a mitm scheme attack using ARP Spoofing.

Using ARP Spoofing we indicate to the router that the victim's IP is in our MAC Address and at the same time we indicate to the victim that the gateway's IP address is in our MAC address so we are intercepting all the traffic between the victim and the router.

Special greetings

I'd like to thank the SUGUS (Free Software Group) of the University of Seville and Shodan for their help and support.

Contact information

Please if you have any suggestion about the project feel free to implement it and make a pull request or you can contact me at [email protected]

Thank you for your colaboration.

Happy Hack!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].