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
Simple DNS resolver for asyncio

Simple DNS resolver for asyncio aiodns provides a simple way for doing asynchronous DNS resolutions using pycares. Example import asyncio import aiodn

Saúl Ibarra Corretgé 471 Dec 27, 2022
Usbkill - an anti-forensic kill-switch that waits for a change on your USB ports and then immediately shuts down your computer.

Usbkill - an anti-forensic kill-switch that waits for a change on your USB ports and then immediately shuts down your computer.

Hephaestos 4.1k Dec 30, 2022
Find information about an IP address, such as its location, ISP, hostname, region, country, and city.

Find information about an IP address, such as its location, ISP, hostname, region, country, and city. An IP address can be traced, tracked, and located.

Sachit Yadav 2 Jul 09, 2022
Easy-to-use sync library for handy proxy parse

Proxy Parser About Synchronous library, for convenient and fast parsing of proxies from different sources. Uses Scrapy as a parser. At the moment the

Michael Mironov 2 Nov 22, 2022
Pesquise, filtre e obtenha informações sobre animes. ( Módulo PIP )

Pesquise, filtre e obtenha informações sobre animes. ( Módulo PIP )

AimCaffe 3 Jan 30, 2022
Exfiltrate files using the HTTP protocol version ("HTTP/1.0" is a 0 and "HTTP/1.1" is a 1)

http-protocol-exfil Use the HTTP protocol version to send a file bit by bit ("HTTP/1.0" is a 0 and "HTTP/1.1" is a 1). It uses GET requests so the Blu

Ricardo Ruiz 23 Apr 30, 2022
A script to automatically update the github's proxy IP in hosts file.

updateHostsGithub A script to automatically update the github's proxy IP in hosts file. Now only Mac and Linux are supported. (脚本自动更新本地hosts文件,目前仅支持Ma

2 Jul 06, 2022
ASC - Api Server Controller

ASC - Api Server Controller

Uriel Alves 1 Jan 03, 2022
Pteronode - Script for managing Pterodactyl nodes

pteronode Script for managing Pterodactyl nodes Pteronode allows you to create s

9 Sep 28, 2022
EchoDNS - Analyze your DNS traffic super easy, shows all requested DNS traffic

EchoDNS - Analyze your DNS traffic super easy, shows all requested DNS traffic

Oli Zimmermann 1 Jan 11, 2022
Some files casually made by @AneekBiswas

Python-Tools All Pyhthon Files are created and managed by @AneekBiswas Modules needed to be downloaded 1.CLI bagels.py random guess.py random text-tow

1 Feb 23, 2022
Raspberry Pi Based Serial Console Server, with PushBullet Notification of IP changes, Automatic VPN termination, custom menu, Power Outlet Control, and a lot more

ConsolePi Acts as a serial Console Server, allowing you to remotely connect to ConsolePi via Telnet/SSH/bluetooth to gain Console Access to devices co

120 Jan 05, 2023
Simple reverse backdoor utility, that uses sockets to communicate.

reverse_backdoor Simple reverse backdoor utility, that uses sockets to communicate. How to use Run rev_bd_listener.py using command below: $ python3 r

1 Dec 10, 2021
Using AWS's API Gateway + Lambda + Python to run a simple websocket application. For learning/testing

Using AWS's API Gateway + Lambda + Python to run a simple websocket application. For learning/testing. The AWS Resources seemed overly complex and were missing some critical gotchas in setting up a s

Seth Miller 15 Dec 23, 2022
A Python3 discord trojan, utilizing discord webhooks for sending information.

Vape-Lite-RAT A Python3 discord trojan, utilizing discord webhooks for sending information. What you do with this code / project / idea is non of my b

NightTab 12 Oct 15, 2022
The sequel to SquidNet. It has many of the previous features that were in the original script, however a lot of the functions that do not serve much functionality have been removed.

SquidNet2 The sequel to SquidNet. It has many of the previous features that were in the original script, however a lot of the functions that do not se

DrSquidX 5 Mar 25, 2022
A Calendar subscribe server for python

cn-holiday-ics-server A calendar subscribe server 直接使用我搭建的服务 订阅节假日:https://cdxy.fun:9999/holiday 订阅调休上班:https://cdxy.fun:9999/workday 节假日和调休上班在一起的版本:h

CD 11 Nov 12, 2022
Herramienta para transferir eventos de Shadowserver REST API hacia Azure Blob Storage.

Herramienta para transferir eventos de Shadowserver REST API hacia Azure Blob Storage.

CSIRT-RD 1 Feb 04, 2022
An API for controlling Wi-Fi connections on Balena devices.

Description An API for controlling Wi-Fi connections on Balena devices. It does not contain an interface, instead it provides API endpoints to send re

8 Dec 25, 2022
A Python based command line ARP Spoofer utility, which takes input as arguments for the exact target IP and gateway IP for which you wish to Spoof ARP request

A Python based command line ARP Spoofer utility, which takes input as arguments for the exact target IP and gateway IP for which you wish to Spoof ARP request

Abhinandan Khurana 1 Feb 10, 2022