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
JFâš¡can - Super fast port scanning & service discovery using Masscan and Nmap. Scan large networks with Masscan and use Nmap's scripting abilities to discover information about services. Generate report.

Description Killing features Perform a large-scale scans using Nmap! Allows you to use Masscan to scan targets and execute Nmap on detected ports with

null 377 Jan 3, 2023
Nautobot is a Network Source of Truth and Network Automation Platform.

Nautobot is a Network Source of Truth and Network Automation Platform. Nautobot was initially developed as a fork of NetBox (v2.10.4). Nautobot runs as a web application atop the Django Python framework with a PostgreSQL database.

Nautobot 549 Dec 31, 2022
A Network tool kit for scanning active IP addresses and open ports

Network scanner A small project that I wrote on the fly for (IT351) Computer Networks University Course to identify and label the devices in my networ

Mohamed Abdelrahman 10 Nov 7, 2022
nettrace is a powerful tool to trace network packet and diagnose network problem inside kernel.

nettrace nettrace is is a powerful tool to trace network packet and diagnose network problem inside kernel on TencentOS. It make use of eBPF and BCC.

null 84 Jan 1, 2023
A tool which is capable of scanning ports as TCP & UDP and detecting open and closed ones.

PortScanner Scan All Open Ports Of The Target IP. A tool which is capable of scanning ports as TCP & UDP and detecting open and closed ones. Clone fro

Msf Nmt 17 Nov 26, 2022
Free,Cross-platform,Single-file mass network protocol server simulator

FaPro Free,Cross-platform,Single-file mass network protocol server simulator 中文Readme Description FaPro is a Fake Protocol Server tool, Can easily sta

FOFA Pro 1.4k Jan 6, 2023
Malcolm is a powerful, easily deployable network traffic analysis tool suite for full packet capture artifacts (PCAP files) and Zeek logs.

Malcolm is a powerful, easily deployable network traffic analysis tool suite for full packet capture artifacts (PCAP files) and Zeek logs.

Cybersecurity and Infrastructure Security Agency 1.3k Jan 8, 2023
Tripwire monitors ports and icmp to send the admin a message if somebody is scanning a machine that shouldn't be touched

Tripwire monitors ports and icmp to send the admin a message if somebody is scanning a machine that shouldn't be touched

null 3 Apr 5, 2022
This Tool can help enginners and biggener in network, the tool help you to find of any ip with subnet mask that can calucate them and show you ( Availble IP's , Subnet Mask, Network-ID, Broadcast-ID )

This Tool can help enginners and biggener in network, the tool help you to find of any ip with subnet mask that can calucate them and show you ( Availble IP's , Subnet Mask, Network-ID, Broadcast-ID )

null 12 Dec 13, 2022
Start a simple TCP Listener on a specified IP Address and Port Number and receive incoming connections.

About Start a simple TCP Listener on a specified IP Address and Port Number and receive incoming connections. Download Clone using git in terminal(git

AgentGeneric 5 Feb 24, 2022