A Simple but Powerful cross-platform port scanning & and network automation tool.

Overview

DEDMAP published

Dedmap-icon

DEDMAP is a Simple but Powerful, Clever and Flexible Cross-Platform Port Scanning tool made with ease to use and convenience in mind.

Both TCP and UDP protocols have 0 to 65535 ports. These 65535 ports can be divided into the following three ranges:-

  • System or reserved ports: from 0 to 1023

  • User or registered ports: from 1024 to 49151

  • Dynamic or private ports: from 49151 to 65535

DEDMAP tries to scan a target IP or range of IP's and find services that are running and listening on some ports.

DEDMAP can also scan a range of hosts to find live hosts.

Read the Official Whitepaper HERE

Checkout the Official Video Walkthrough here --> https://youtu.be/e1V83h4R5sI

CODE OF CONDUCT

CONTRIBUTING

Requirements :-

Installation :-

  • Download the latest release from HERE

  • Extract the archive

  • Follow the Below steps using termux-install.sh if installing for termux

$ cd DEDMAP
$ chmod +x install.sh
$ ./install.sh

All the additional requirements will be installed automatically. Just execute the "install.sh" file ;)

The tool can be run without installing as well (./dedmap) but it is recommended to install it. After installing the tool, the color of the DEDMAP banner will change from WHITE to RED.

Update the tool by downloading the latest release and re-installing it again.

Using the tool in Windows :-

  • Initially, Double-Click or launch the dedmap.bat once from a command-prompt for installing the requirements.
  • Subsequent to the above step, Lauch the tool using dedmap or python dedmap command from a command-prompt inside the dedmap root directory.

Uninstallation :-

  • Follow the Below steps using termux-uninstall.sh if uninstalling for termux
$ cd DEDMAP
$ chmod +x uninstall.sh
$ ./uninstall.sh

Highlights :-

  • Packed with lots of additional features all in one place.

  • Full Support for Android devices (via termux)

  • Supports IP-RANGES (1.1.1.1-100)

  • Supports Network Scanning (Ping Sweep)

  • Has a turbo mode (LAN mode) for network scanning. The turbo mode can be used both in LAN and wan but it is recommended to use only in LAN as it may decrease the accuracy of the scan in a wan network.

  • The wan mode can also be used in a LAN network for more accurate results. Lan mode = Performance, Wan mode = Accuracy.

  • Is flexible. Multiple scanning options can be combined based on requirements.

  • Is clever. Scans only the live targets if a network scan is combined with other scans.

  • Lists all the probable services/protocols being used by the respective open ports which are discovered.

  • Supports Verbose mode

  • Supports Saving the Output to a file. (The file generated is a dedmap file. cat/type it to view it's contents properly in a shell environment)

  • Supports various port specification options

  • Is colourful. Provides coloured event-based visual responses.

LEGEND/Color schemes :-

  • BLUE --> FOR MARKING THE SUCCESSFUL STARTING AND COMPLETION OF THE PROGRAM

  • RED --> FOR MARKING STARTING/ENDING OF AN EVENT OR ERROR

  • GREEN --> FOR MARKING A SUCCESSFUL HOST/PORT DISCOVERY AND HELP MENU

  • RESET --> FOR RESETTING TO DEFAULT SHELL COLOR

  • GRAY --> FOR MARKING AN UNSUCCESSFUL HOST/PORT DISCOVERY IN VERBOSE MODE

  • YELLOW --> FOR MARKING DEBUGGING STATEMENTS

Usage :-

$ dedmap [--option(s)] [target(s)]
  • By default, a TCP scan will be performed if no options are provided.

  • -t option must be exclusively provided if any other option is used like -p or -v or -n.

  • By default, the top 100 commonly used ports will be scanned if no ports are specified.

  • Long Options (--) have more priority.

Options :-

  • -h, --help show this help message and exit

  • -v, --verbose run in verbose mode

  • -d, --dns performs a DNS lookup

  • -r, --rdns performs a reverse dns lookup

  • -p, --port only scan specified port(s)

  •                     Ex: -p 21; -p 21,22,23;
    
  •  				  -p top10; (scan top 10 commonly used ports)
    
  •                    -p top100; (scan top 100 commonly used ports)
    
  •                    -p top1000; (scan top 1000 commonly used ports)
    
  •                    -p system; (scan system ports from 0 to 1023)
    
  •                    -p user; (scan user ports from 1024 to 49151)
    
  •                    -p private; (scan private ports from 49152 to 65535)
    
  •                    -p all; (scan all ports from 0 to 65535)
    
  • -t, --tcp perform a TCP scan (default scan if NO OPTIONS are specified)

  • -u, --udp perform a UDP scan (Doesn't seems to work as of now using the socket in python)

  • -n, --net perform a network scan

  • -m, --mode select the mode for network scan (default = wan)

  •                    Select lan mode(turbo mode) for better scanning speeds (upto 5x)
    
  •                    It is recommended to use the turbo mode only on a lan network
    
  •                    as it might result in loss of accuracy in wan networks
    
  •                    Ex: -nm lan; -nm wan;
    
  • -o, --out saves the results in a file

  •                    Ex: -o report
    

Examples :-

Combine the options according to your requirements. Dedmap is flexible and clever enough :)

$ dedmap 1.1.1.1
$ dedmap localhost
$ dedmap -d google.com yahoo.com facebook.com localhost
$ dedmap google.com
$ dedmap google.com yahoo.com
$ dedmap 1.1.1.1 2.2.2.2 3.3.3.3
$ dedmap 1.1.1.1-100 google.com (Perform a tcp scan on all the hosts without pinging to bypass firewall icmp block)
$ dedmap -p 20 1.1.1.1
$ dedmap -p top10 2.2.2.2
$ dedmap -p 20,21,22 1.1.1.1
$ dedmap -nm lan -p 21 192.168.1.1-255 (Perform a tcp port scan in lan mode on all the live hosts)
$ dedmap -n 1.1.1.1-255
$ dedmap -nr 1.1.1.1-255 (Perform a reverse dns lookup on all the live targets in the network)
$ dedmap -nt 1.1.1.0-255 (To scan only the hosts which are alive in the network)
$ dedmap -o report 127.0.0.1

Additional Notice :-

  • The output file generated is a dedmap file. Cat/Print it to view it's contents properly in a shell environment.

  • This tool is expected to have lots of bugs as it is in a very early stage.

  • This tool has not been tested in Windows yet and will not work most probably. Feel free to experiment.

Disclaimer :-

  • This tool is made for educational purpose only. Use it with/on systems or networks you own or have permission from the owner. I shall not be held responsible for whatsoever you do with this tool.

Limitations as of now / Known Issues :-

  • DEDMAP IS AN INDEPENDENT TOOL MADE FOR ONLY PORT-SCANNING AS IT'S MAIN GOAL. HENCE IT WILL NEVER SUPPORT FEATURES LIKE SERVICE/VERSION SCAN AS THEY DEPEND UPON NETCAT.

  • GENERATING A REPORT DOES NOT WORK PROPERLY IN WINDOWS.

  • IS SLOW AS NO MULTI-THREADING CONCEPTS USED IN THE PROGRAM.

  • UDP DOESN'T WORKS PROPERLY AS OF NOW.

  • THE USER MUST MAINTAIN A SEQUENCE "dedmap [--option(s)] [target(s)]"

  • THE TOOL SUPPORTS IP-RANGE ONLY IN THE LAST OCTET .i.e 1.1.1.(1-200) --> This is also a safety measure to prevent the user from scanning the ENTIRE INTERNET (1-255.1-255.1-255.1-255) and blowing up his/her NIC, RAM, CPU and HARDDISK :p

To Do :-

  • [ ] FIX UDP SCANNING

  • ADD COLORS TO THE REST OF THE OUTPUT TO PROVIDE EVENT-BASED VISUAL RESPONSES.

  • TEST AND ADD SUPPORT FOR TERMUX

  • TEST AND ADD SUPPORT FOR WINDOWS

  • USE MULTITHREADING TO DRASTICALLY IMPROVE THE PERFORMANCE OF THE TOOL

Reporting :-

Feedback :-

You might also like...
Medusa is a cross-platform agent compatible with both Python 3.8 and Python 2.7.

Medusa Medusa is a cross-platform agent compatible with both Python 3.8 and Python 2.7. Installation To install Medusa, you'll need Mythic installed o

PetrickScanner is a simple Python OOP TCP Port Scanner

PetrickScanner PetrickScanner is a simple Python OOP TCP Port Scanner Functions Python TCP Port Scanner DNS Resolver Random Scanner PLEASE ANY PROBLEM

Simple Port Scanner script written in Python, plans is to expand upon this script to turn it into a GUI based pen testing suite

PortScanner Simple Port Scanner script written in Python, plans is to expand upon this script to turn it into a GUI based pen testing suite. #IMPORTAN

Simple threaded Python Rickroll server. Listens on port 23 by default.

Terminal Rickroll Simple threaded Python Rickroll server. Listens on port 23 by default. Rickroll video made using Video-To-Ascii and the standard ric

Simple Port Scanner With Socket Module In Python 3x
Simple Port Scanner With Socket Module In Python 3x

PortScanner Simple Port Scanner With Socket Module In Python 3x How To Install Requirements Of This Port Scanner sudo apt install python3;sudo apt ins

Network Engineer's Unified Realtime Automation Library

NEURAL is the premiere CLI jockey replacement full stack web/app/database network automation application, providing a "no-code" web app for network engineers developed by a network engineer!

Dokumentasi belajar Network automation
Dokumentasi belajar Network automation

Repositori belajar network automation dengan Docker, Python & GNS3 Using Frameworks and integrate with: Paramiko Netmiko Telnetlib CSV SFTP Netmiko, S

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
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

📡 WebMap A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation

This is a python based command line Network Scanner utility, which input as an argument for the exact IP address or the relative IP Address range you wish to do the Network Scan for and returns all the available IP addresses with their MAC addresses on your current Network.

This is a python based command line Network Scanner utility, which input as an argument for the exact IP address or the relative IP Address range you wish to do the Network Scan for and returns all the available IP addresses with their MAC addresses on your current Network.

Comments
  • Bump waitress from 1.4.1 to 1.4.3

    Bump waitress from 1.4.1 to 1.4.3

    Bumps waitress from 1.4.1 to 1.4.3.

    Changelog

    Sourced from waitress's changelog.

    1.4.3 (2020-02-02)

    Security Fixes

    
    - In Waitress version 1.4.2 a new regular expression was added to validate the
      headers that Waitress receives to make sure that it matches RFC7230.
      Unfortunately the regular expression was written in a way that with invalid
      input it leads to catastrophic backtracking which allows for a Denial of
      Service and CPU usage going to a 100%.
    

    This was reported by Fil Zembowicz to the Pylons Project. Please see https://github.com/Pylons/waitress/security/advisories/GHSA-73m2-3pwg-5fgc for more information.

    1.4.2 (2020-01-02)

    Security Fixes

    • This is a follow-up to the fix introduced in 1.4.1 to tighten up the way Waitress strips whitespace from header values. This makes sure Waitress won't accidentally treat non-printable characters as whitespace and lead to a potental HTTP request smuggling/splitting security issue.

      Thanks to ZeddYu Lu for the extra test cases.

      Please see the security advisory for more information: https://github.com/Pylons/waitress/security/advisories/GHSA-m5ff-3wj3-8ph4

      CVE-ID: CVE-2019-16789

    Bugfixes

    
    - Updated the regex used to validate header-field content to match the errata
      that was published for RFC7230.
    

    See: https://www.rfc-editor.org/errata_search.php?rfc=7230&eid=4189

    Commits
    • cbc89bf Prep v1.4.3
    • 6e46f9e Merge pull request from GHSA-73m2-3pwg-5fgc
    • 51b9bd4 Remove accidental backslash
    • f87abb7 Add bad header that caused catastrophic backtracking
    • 2fe8e54 Add header parsing tests with short headers
    • ac0ca05 Remove catastrophic backtracking in regex
    • 8af9adb Prep for 1.4.2
    • 634d991 Merge pull request #277 from Pylons/invalid-whitespace-cont
    • 3a54e29 Add CHANGES and bump version to 1.4.2
    • 0bf98da Update RFC7230 regex with errata for header field-content
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(v2.2-beta)
  • v2.2-beta(Nov 27, 2022)

  • v2.1-beta(May 1, 2021)

  • v2.0-beta(Apr 23, 2021)

    NOW AVAILABLE FOR BETA-TESTING

    • Minor bug fixes
    • Now 10 times faster scans in default mode!
    • Added service/protocol names
    • Added more port selection flexibility for faster scans
    Source code(tar.gz)
    Source code(zip)
  • v1.1-alpha(Jan 31, 2021)

    This new release is a major update containing lots of optimizations and bugfixes which drastically improved the performance of the tool. Also, support for termux is added. Dedmap can be natively used in any android device now.

    Source code(tar.gz)
    Source code(zip)
  • v1.0-alpha(Aug 10, 2020)

    This is the first release of DEDMAP ready to install and use in Linux. It may contain lots of bugs. It has not been tested officially in windows yet.

    Source code(tar.gz)
    Source code(zip)
Owner
Anurag Mondal
Cyber-Security Researcher | Certified Ethical Hacker | CTF Player | Bug-Bounty Hunter | Programmer | Tech-Enthusiast | Gamer | Gray Hat | Geek | Introvert
Anurag Mondal
🥑 A Python ARP and DNS Spoofer CLI and INTERFACE 🥓

NEXTGEN SPOOFER 🥑 A Python ARP and DNS Spoofer CLI and INTERFACE 🥓 CLI - advanced pentesters INTERFACE - beginners SetUp Make sure you installed P

9 Dec 25, 2022
Qobuz-rpc - A simple discord rich presence client for qobuz written in Python

qobuz-rpc A simple discord rich presence client for qobuz written in Python It's

Raphael O. 13 Dec 15, 2022
The AKS cluster provisioner provisions AKS clusters :-)

Overview The AKS cluster provisioner provisions AKS clusters :-) It uses the Azure CLI to configure VNet and subnets before creating the cluster itsel

Gigi Sayfan 1 Nov 10, 2021
syncio: asyncio, without await

syncio: asyncio, without await asyncio can look very intimidating to newcomers, because of the async/await syntax. Even experienced programmers can ge

David Brochart 10 Nov 21, 2022
Official ProtonVPN Linux app

ProtonVPN Linux App Copyright (c) 2021 Proton Technologies AG This repository holds the ProtonVPN Linux App. For licensing information see COPYING. Fo

ProtonVPN 288 Jan 01, 2023
A simple, personal chat program that runs on a single computer. No Internet, just you.

MultiChat A simple, personal chat program that runs on a single computer. No Internet, just you. Simple and Local MultiChat was created with ease of u

Owls 2 Aug 19, 2022
HTTP proxy pool server primarily meant for evading IP whitelists

proxy-forwarder HTTP proxy pool server primarily meant for evading IP whitelists. Setup Create a file named proxies.txt and fill it with your HTTP pro

h0nda 2 Feb 19, 2022
A simple python application for generating a WiFi QR code for ease of connection

A simple python application for generating a WiFi QR code Initialize the class by providing QR code values WiFi_QR_Code(self, error_correction: int =

Ivan 2 Aug 01, 2022
ThorFI: A Novel Approach for Network Fault Injection as a Service

ThorFI: a Novel Approach for Network Fault Injection as a Service This repo includes ThorFI, a novel fault injection solution for virtual networks in

DESSERT research lab (Federico II University of Naples, Italy) 6 Dec 14, 2022
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
Load balancing DICOM router

dicom-loadbalancer Load balancing DICOM router (WORK IN PROGRESS) The DICOM loadbalancer provides functionality for acting as any number of DICOM SCPs

Søren Boll Overgaard 1 Jan 15, 2022
Display ip2.network active live streams.

Display ip2.network active live streams.

Daeshon Jones 0 Oct 31, 2021
This is a simple python code to get the list of banned IP addresses from Fail2ban

Fail2ban Scripts Usage banned_list.py This script tries to get the banned list of IP addresses by Fail2ban for the service freeswitch. You can modify

Yehor Smoliakov 9 Dec 28, 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
Proxlist - Retrieve proxy servers.

Finding and storing a list of proxies can be taxing - especially ones that are free and may not work only minutes from now. proxlist will validate the proxy and return a rotating random proxy to you

Justin Hammond 2 Mar 17, 2022
WebRTC and ORTC implementation for Python using asyncio

aiortc What is aiortc? aiortc is a library for Web Real-Time Communication (WebRTC) and Object Real-Time Communication (ORTC) in Python. It is built o

3.2k Jan 07, 2023
pyngrok is a Python wrapper for ngrok

pyngrok is a Python wrapper for ngrok that manages its own binary, making ngrok available via a convenient Python API.

Alex Laird 329 Dec 31, 2022
ANalyse is a vehicle network analysis and attack tool.

CANalyse is a tool built to analyze the log files to find out unique datasets automatically and able to connect to simple user interfaces suc

0xh3nry 87 Dec 18, 2022
An automatic reaction network generator for reactive molecular dynamics simulation.

ReacNetGenerator An automatic reaction network generator for reactive molecular dynamics simulation. ReacNetGenerator: an automatic reaction network g

Tong Zhu Research Group 35 Dec 14, 2022
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

📡 WebMap A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation

Iliass Alami Qammouri 274 Jan 01, 2023