A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation during a Web Penetration Testing

Overview

📡 WebMap

forthebadge made-with-python
A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation during a Web Penetration Testing

  • Perform A Network Scan using Nmap
  • Perform A Vulnerabity Scan Using Nikto
  • Perform A Directory Busting using Using Dirsearch
  • Generate Reports
  • Automate Web Penetration Using WebMap
  • Tested on Linux and Unix with Python 3


Webmap-Home

🛠 Installation

Linux & Unix

$ git clone https://github.com/Anteste/WebMap.git
$ cd WebMap
$ ./install.sh
$ webmap

Other

  • This project is free and open source, under the MIT.
  • You can contribute to this project by proposing pull requests.
Comments
  • `All the Scans` module not working

    `All the Scans` module not working

    I am able to use the tool for individual scan modules like 1. Nmap :white_check_mark: 2. Dirsearch :white_check_mark: 3. Nikto :white_check_mark:

    However, if I select Option A: All the Scans, I am getting the below error. :x:

    :large_blue_diamond: When tried with only google.com Unable to init server: Could not connect: Connection refused Failed to parse arguments: Cannot open display:

    image

    :large_blue_diamond: When tried with https://google.com File "webmap.py", line 130, in <module> ipall = socket.gethostbyname(targetall) socket.gaierror: [Errno -2] Name or service not known

    image

    Feature request 
    opened by GiJ03 10
  • Various fixes

    Various fixes

    Hello,

    I can see that this project is very young and there are a lot of things in the code that I think are suboptimal.

    Please note: I didn't run any of the code yet!!! But for a few months now I had in mind to do exactly this kind of software, so I feel like contributing.

    The main problem is that you assume too much, and take arbitrary decisions for the user, and this leads to software that is not portable. For instance, I'm using Archlinux, so your software will not work if I try to naively install it with install.sh, even if I have all the dependencies already in my $PATH.

    The fixes are just minor stuff that I found while browsing the source, but I hope they will help you improve your skills ;)

    Other things you might have:

    • use github actions to lint the code
    • use shellcheck on install.sh
    • use black and isort
    • add the licence and copyright in every file
    • add a CONTRIBUTING file
    • test the presence of dependencies before installing them
    • instead of git cloning directorysearch, consider adding it as a submodule
    • well there are many things you can do, but the first will be to review this PR ;)

    Commit message below:

    • remove chmod +x instruction from README as it's not needed (git keeps the permissions)
    • don't use sudo to execute the install script as it contains sudo commands
    • link to the MIT license in the README
    • replace tabs with spaces
    • remove trailing whitespaces
    • add newline at end of files

    In install.sh:

    • use a variable to hold the dependencies instead of repeating them
    • use the --user flag for pip install
    • use /usr/local/bin instead of /usr/bin for symlink
    • store dirsearch in ~/.opt instead of /opt: don't pollute the system with user software, don't use root to clone a git repository
    • use $() instead of backquotes
    • add quotes for variables
    • use env to find bash
    Bug 
    opened by NicolasCARPi 5
  • fix: change dirsearch option

    fix: change dirsearch option

    Hello,

    In the following PR, dirsearch option --simple-report was removed, which prevented Dirsearch Scan from working properly. I fixed this by changing it to the newly added option --output.

    https://github.com/maurosoria/dirsearch/pull/770

    no-pr-activity 
    opened by cotton-alta 3
  • Change to Target URL Format

    Change to Target URL Format

    (Thanks for sending a pull request! Please make sure you click the link above to view the contribution guidelines, then fill out the blanks below.)

    What does this implement/fix? Explain your changes.

    This fixes an issue with resolving IPs to hostnames using the conf.socket.gethostbyname(full_host) snippet.
    Albeit i feel this task is not necessary as most hardened environments (like in OSCP & CTFs) purposely do not allow DNS resolving, users within a VPN environment would still experience this issue.
    
    Owing to this i would like to make the following changes 
    1. In the input for asset to scan users should enter only IP Address or Hostname without http://
    2. Comment out full_ip = conf.socket.gethostbyname(full_host) in fullscan.py
    3. Change nmap {full_ip} to  {full_host}
    4. For nikto and dirsearch before {full_host} include http:// just to be http://{full_host}
    

    Does this close any currently open issues?

    Yes
    

    Any relevant logs, error output, etc?

    Traceback (most recent call last): File "/usr/local/bin/webmap", line 56, in <module> main() File "/usr/local/bin/webmap", line 48, in main conf.call_def(conf.full_scan) File "/home/kali/Desktop/TOOLS/WEB ATTACK/WebMap/conf/conf.py", line 80, in call_def func() File "/home/kali/Desktop/TOOLS/WEB ATTACK/WebMap/modules/fullscan.py", line 31, in full_scan full_ip = conf.socket.gethostbyname(full_host) socket.gaierror: [Errno -2] Name or service not known
    

    Any other comments?

    Where has this been tested?

    Operating System: kali Linux

    Platform:Kali Linux Python 3

    Target Platform: Ubuntu

    Python Version: Python 3

    opened by Johnng007 2
  • Merge pull request #12 from Anteste/1.0

    Merge pull request #12 from Anteste/1.0

    Merge pull request #11 from Anteste/1.x

    (Thanks for sending a pull request! Please make sure you click the link above to view the contribution guidelines, then fill out the blanks below.)

    What does this implement/fix? Explain your changes.

    Does this close any currently open issues?

    Any relevant logs, error output, etc?

    Any other comments?

    Where has this been tested?

    Operating System:

    Platform:

    Target Platform:

    Python Version:

    opened by Anteste 1
  • Merge pull request #11 from Anteste/1.x

    Merge pull request #11 from Anteste/1.x

    Change to Target URL Format

    (Thanks for sending a pull request! Please make sure you click the link above to view the contribution guidelines, then fill out the blanks below.)

    What does this implement/fix? Explain your changes.

    Does this close any currently open issues?

    Any relevant logs, error output, etc?

    Any other comments?

    Where has this been tested?

    Operating System:

    Platform:

    Target Platform:

    Python Version:

    opened by Anteste 1
  • Does not seem to scan IP based URLs

    Does not seem to scan IP based URLs

    Nice Tool but doesnt seem to scan IP based URLs like: http://10.12.1.23 Traceback (most recent call last): File "/usr/local/bin/webmap", line 56, in <module> main() File "/usr/local/bin/webmap", line 48, in main conf.call_def(conf.full_scan) File "/home/kali/Desktop/TOOLS/WEB ATTACK/WebMap/conf/conf.py", line 80, in call_def func() File "/home/kali/Desktop/TOOLS/WEB ATTACK/WebMap/modules/fullscan.py", line 31, in full_scan full_ip = conf.socket.gethostbyname(full_host) socket.gaierror: [Errno -2] Name or service not known

    opened by Johnng007 1
  • Update install.sh to install in other Systems

    Update install.sh to install in other Systems

    I've added more information so it can install on other linux distribution other than Debian flavours. Anything you can arrange. I've placed some comments on the file to be easy read

    Enhancement 
    opened by tfprelvas 1
  • Install.sh and reopen() function

    Install.sh and reopen() function

    I've added a shell script to simplify the installation process and made a new reopen() function so the script still works the old way, by executing it with python webmap.py

    Enhancement 
    opened by luizmlo 0
Releases(v1.0.7)
Owner
Iliass Alami Qammouri
💻 Web developer
Iliass Alami Qammouri
WARP+ uses Cloudflare’s virtual private backbone, known as Argo, to achieve higher speeds and ensure your connection is encrypted across the long haul of the Internet

WARP+ uses Cloudflare’s virtual private backbone, known as Argo, to achieve higher speeds and ensure your connection is encrypted across the long haul of the Internet

Rivane Rasetiansyah 3 Apr 01, 2022
Terminal based chat - networking project with sockets in python

Terminal based chat - networking project with sockets in python

2 Jan 24, 2022
A script for generating WireGuard configs from Surfshark VPN

Surfshark WireGuard A script for generating WireGuard configs from Surfshark VPN. You must have python3 available on your machine. Usage Currently we

Alireza Ahmand 58 Dec 23, 2022
Best discord webhook spammer using proxy (support all proxy type)

Best discord webhook spammer using proxy (support all proxy type)

Iтѕ_Ѵιcнч#1337 25 Nov 01, 2022
This is a small python code that I use with my NAS server connected to Plex

Spotifarr This is a small python code that I use with my NAS server connected to Plex I didn't appreciate how Lidarr works because it downloads a full

Automator 35 Oct 04, 2022
A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

mnemonic 83 Dec 11, 2022
Ping IP addresses and domains in parallel to find the accessible and inaccessible ones.

🚀 IPpy Parallel testing of IP addresses and domains in python. Reads IP addresses and domains from a CSV file and gives two lists of accessible and i

Shivam Mathur 54 May 21, 2022
Library containing the core modules for the kingdom-python-server.

🏰 Kingdom Core Library containing the core modules for the kingdom-python-server. Installation Use the package manager pip to install kingdom-core. p

T10 4 Dec 27, 2021
Whoisss is a website information gatharing Tool.

Whoisss Whoisss is a website information gatharing Tool. You can cse it to collect information about website. Usage apt-get update apt-get upgrade pkg

Md. Nur habib 2 Jan 23, 2022
ip2domain - get ip to domain, Know the domian corresponding to the local network connection IP

What is Sometimes, we need to know what connections our local machine has, and what are their IP, domain name, program and parameters? get ip to domai

51pwn 4 Sep 30, 2022
MS Iot Device Can Platform

Kavo MS IoT Platform Version: 2.0 Author: Luke Garceau Requirements Read CAN messages in real-time Convert the given variables to engineering useful v

Luke Garceau 1 Oct 13, 2021
An improved version of the original AutoDD

AutoDD = Automatically does the "due diligence" for you. If you want to know what stocks people are talking about on reddit, this little program might help you.

Steven Zhu 169 Oct 05, 2022
Connection package to a raspberry or any other machine using ssh, it simplifies the deployment scripts and monitoring.

Connection package to a raspberry or any other machine using ssh, it simplifies the deployment scripts and monitoring.

Dashstrom 7 Mar 29, 2022
QUIC and HTTP/3 implementation in Python

aioquic What is aioquic? aioquic is a library for the QUIC network protocol in Python. It features a minimal TLS 1.3 implementation, a QUIC stack and

1.2k Dec 29, 2022
This is a simple python script to collect sub-domains from hackertarget API

Domain-Scraper 🌐 This is a simple python script to collect sub-domains from hackertarget API Note : This is tool is limited to 20 Queries / day with

CHINO TECH TOOLS 4 Sep 09, 2021
IPE is a simple tool for analyzing IP addresses. With IPE you can find out the server region, city, country, longitude and latitude and much more in seconds.

IPE is a simple tool for analyzing IP addresses. With IPE you can find out the server region, city, country, longitude and latitude and much more in seconds.

Paul 0 Jun 11, 2022
Dshell is a network forensic analysis framework.

Dshell An extensible network forensic analysis framework. Enables rapid development of plugins to support the dissection of network packet captures. K

DEVCOM Army Research Laboratory 5.4k Jan 06, 2023
Tool for pretty printing and optimizing Lightning Network channels.

Suez Tool for pretty printing and optimizing Lightning Network channels. Installation Install poetry poetry install poetry run ./suez Channel fee poli

Pavol Rusnak 69 Nov 03, 2022
An ansible playbook to set up wireguard server.

Poor man's VPN (pay for only what you need) An ansible playbook to quickly set up Wireguard server for occasional personal use. It takes around five m

Amrit Bera 613 Dec 25, 2022
BLE parser for passive BLE advertisements

This pypi package is parsing BLE advertisements to readable data for several sensors and can be used for device tracking, as long as the MAC address is static. The parser was originally developed as

Ernst Klamer 19 Dec 26, 2022