Experimental Script - Nmap
This commit is contained in:
422
files/experimental/nmap.bat
Normal file
422
files/experimental/nmap.bat
Normal file
@@ -0,0 +1,422 @@
|
|||||||
|
@echo off
|
||||||
|
REM === Interactive Nmap Scanner Tool ===
|
||||||
|
setlocal enabledelayedexpansion
|
||||||
|
|
||||||
|
echo ========================================
|
||||||
|
echo Nmap Network Scanner Tool
|
||||||
|
echo ========================================
|
||||||
|
echo.
|
||||||
|
|
||||||
|
REM Check if Nmap is installed
|
||||||
|
where nmap >nul 2>nul
|
||||||
|
if %ERRORLEVEL% NEQ 0 (
|
||||||
|
echo Nmap is not installed on this system.
|
||||||
|
echo.
|
||||||
|
set /p INSTALL="Do you want to install Nmap? (Y/N): "
|
||||||
|
|
||||||
|
if /i "!INSTALL!"=="Y" (
|
||||||
|
echo.
|
||||||
|
echo Opening Nmap download page in your browser...
|
||||||
|
echo Please download and install Nmap from: https://nmap.org/download.html
|
||||||
|
echo After installation, restart this script.
|
||||||
|
start https://nmap.org/download.html
|
||||||
|
echo.
|
||||||
|
pause
|
||||||
|
exit /b 0
|
||||||
|
) else (
|
||||||
|
echo.
|
||||||
|
echo Nmap installation cancelled. Exiting...
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
echo Nmap is installed!
|
||||||
|
echo.
|
||||||
|
|
||||||
|
REM Prompt for target
|
||||||
|
set /p TARGET="Enter target IP address or domain: "
|
||||||
|
|
||||||
|
REM Validate input
|
||||||
|
if "%TARGET%"=="" (
|
||||||
|
echo.
|
||||||
|
echo ERROR: No target specified!
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
REM Display scan options
|
||||||
|
:MENU
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
echo Select Scan Type:
|
||||||
|
echo ========================================
|
||||||
|
echo.
|
||||||
|
echo [1] Port Scan
|
||||||
|
echo [2] Host Discovery (Ping Scan)
|
||||||
|
echo [3] OS Detection
|
||||||
|
echo [4] Stealth Scan (SYN Scan)
|
||||||
|
echo [5] Aggressive Scan
|
||||||
|
echo [6] UDP Scan
|
||||||
|
echo [7] Script Scan (NSE)
|
||||||
|
echo [8] Save Results to File
|
||||||
|
echo [9] Custom Command
|
||||||
|
echo.
|
||||||
|
echo [0] Exit
|
||||||
|
echo.
|
||||||
|
set /p SCANTYPE="Select scan type (0-9): "
|
||||||
|
|
||||||
|
if "%SCANTYPE%"=="0" (
|
||||||
|
echo.
|
||||||
|
echo Exiting...
|
||||||
|
exit /b 0
|
||||||
|
)
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
|
||||||
|
REM Execute scan based on selection
|
||||||
|
if "%SCANTYPE%"=="1" goto PORT_SCAN
|
||||||
|
if "%SCANTYPE%"=="2" goto HOST_DISCOVERY
|
||||||
|
if "%SCANTYPE%"=="3" goto OS_DETECTION
|
||||||
|
if "%SCANTYPE%"=="4" goto STEALTH_SCAN
|
||||||
|
if "%SCANTYPE%"=="5" goto AGGRESSIVE_SCAN
|
||||||
|
if "%SCANTYPE%"=="6" goto UDP_SCAN
|
||||||
|
if "%SCANTYPE%"=="7" goto SCRIPT_SCAN
|
||||||
|
if "%SCANTYPE%"=="8" goto SAVE_RESULTS
|
||||||
|
if "%SCANTYPE%"=="9" goto CUSTOM_COMMAND
|
||||||
|
|
||||||
|
echo ERROR: Invalid selection! Please choose 0-9.
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:PORT_SCAN
|
||||||
|
echo PORT SCAN OPTIONS
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Scan top 1000 common ports (fast)
|
||||||
|
echo [2] Scan all 65535 ports (slow)
|
||||||
|
echo [3] Scan specific port
|
||||||
|
echo [4] Scan port range
|
||||||
|
echo [5] Fast scan (top 100 ports)
|
||||||
|
echo.
|
||||||
|
set /p PORTSCAN="Select port scan option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%PORTSCAN%"=="1" (
|
||||||
|
echo Command: nmap %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%PORTSCAN%"=="2" (
|
||||||
|
echo Command: nmap -p- %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -p- %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%PORTSCAN%"=="3" (
|
||||||
|
set /p PORT="Enter port number: "
|
||||||
|
echo Command: nmap -p !PORT! %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -p !PORT! %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%PORTSCAN%"=="4" (
|
||||||
|
set /p PORTRANGE="Enter port range (e.g., 1-1000): "
|
||||||
|
echo Command: nmap -p !PORTRANGE! %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -p !PORTRANGE! %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%PORTSCAN%"=="5" (
|
||||||
|
echo Command: nmap -F %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -F %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:HOST_DISCOVERY
|
||||||
|
echo HOST DISCOVERY OPTIONS
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Ping scan only (check if host is up)
|
||||||
|
echo [2] No ping (assume host is up and scan)
|
||||||
|
echo [3] TCP SYN discovery on port 80
|
||||||
|
echo [4] ICMP echo discovery
|
||||||
|
echo.
|
||||||
|
set /p HOSTSCAN="Select host discovery option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%HOSTSCAN%"=="1" (
|
||||||
|
echo Command: nmap -sn %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sn %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%HOSTSCAN%"=="2" (
|
||||||
|
echo Command: nmap -Pn %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -Pn %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%HOSTSCAN%"=="3" (
|
||||||
|
echo Command: nmap -PS80 %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -PS80 %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%HOSTSCAN%"=="4" (
|
||||||
|
echo Command: nmap -PE %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -PE %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:OS_DETECTION
|
||||||
|
echo OS DETECTION OPTIONS
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Basic OS detection
|
||||||
|
echo [2] Aggressive OS detection with guessing
|
||||||
|
echo [3] OS detection with version info
|
||||||
|
echo.
|
||||||
|
set /p OSSCAN="Select OS detection option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%OSSCAN%"=="1" (
|
||||||
|
echo Command: nmap -O %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -O %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%OSSCAN%"=="2" (
|
||||||
|
echo Command: nmap -O --osscan-guess %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -O --osscan-guess %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%OSSCAN%"=="3" (
|
||||||
|
echo Command: nmap -A %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -A %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:STEALTH_SCAN
|
||||||
|
echo STEALTH SCAN OPTIONS (SYN Scan)
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Basic SYN scan (top 1000 ports)
|
||||||
|
echo [2] SYN scan all ports
|
||||||
|
echo [3] SYN scan with timing (fast T4)
|
||||||
|
echo [4] SYN scan with timing (slow/stealth T2)
|
||||||
|
echo.
|
||||||
|
set /p SYNSCAN="Select SYN scan option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%SYNSCAN%"=="1" (
|
||||||
|
echo Command: nmap -sS %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sS %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SYNSCAN%"=="2" (
|
||||||
|
echo Command: nmap -sS -p- %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sS -p- %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SYNSCAN%"=="3" (
|
||||||
|
echo Command: nmap -sS -T4 %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sS -T4 %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SYNSCAN%"=="4" (
|
||||||
|
echo Command: nmap -sS -T2 %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sS -T2 %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:AGGRESSIVE_SCAN
|
||||||
|
echo AGGRESSIVE SCAN OPTIONS
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Full aggressive scan (OS, scripts, traceroute)
|
||||||
|
echo [2] Aggressive with fast timing (T4)
|
||||||
|
echo [3] Aggressive all ports
|
||||||
|
echo.
|
||||||
|
set /p AGGSCAN="Select aggressive scan option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%AGGSCAN%"=="1" (
|
||||||
|
echo Command: nmap -A %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -A %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%AGGSCAN%"=="2" (
|
||||||
|
echo Command: nmap -A -T4 %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -A -T4 %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%AGGSCAN%"=="3" (
|
||||||
|
echo Command: nmap -A -p- %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -A -p- %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:UDP_SCAN
|
||||||
|
echo UDP SCAN OPTIONS
|
||||||
|
echo ========================================
|
||||||
|
echo [1] UDP scan top 1000 ports
|
||||||
|
echo [2] UDP scan specific port
|
||||||
|
echo [3] UDP scan port range
|
||||||
|
echo [4] Combined TCP SYN + UDP scan
|
||||||
|
echo.
|
||||||
|
set /p UDPSCAN="Select UDP scan option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%UDPSCAN%"=="1" (
|
||||||
|
echo Command: nmap -sU %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sU %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%UDPSCAN%"=="2" (
|
||||||
|
set /p UDPPORT="Enter UDP port number: "
|
||||||
|
echo Command: nmap -sU -p !UDPPORT! %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sU -p !UDPPORT! %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%UDPSCAN%"=="3" (
|
||||||
|
set /p UDPRANGE="Enter UDP port range (e.g., 1-100): "
|
||||||
|
echo Command: nmap -sU -p !UDPRANGE! %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sU -p !UDPRANGE! %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%UDPSCAN%"=="4" (
|
||||||
|
echo Command: nmap -sS -sU -T4 %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sS -sU -T4 %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:SCRIPT_SCAN
|
||||||
|
echo SCRIPT SCAN OPTIONS (NSE)
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Default scripts
|
||||||
|
echo [2] Vulnerability detection scripts
|
||||||
|
echo [3] All safe scripts
|
||||||
|
echo [4] Specific script category
|
||||||
|
echo.
|
||||||
|
set /p SCRIPTSCAN="Select script scan option: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
if "%SCRIPTSCAN%"=="1" (
|
||||||
|
echo Command: nmap -sC %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -sC %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SCRIPTSCAN%"=="2" (
|
||||||
|
echo Command: nmap --script vuln %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap --script vuln %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SCRIPTSCAN%"=="3" (
|
||||||
|
echo Command: nmap --script safe %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap --script safe %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SCRIPTSCAN%"=="4" (
|
||||||
|
echo Available categories: auth, broadcast, brute, default, discovery, dos, exploit, external, fuzzer, intrusive, malware, safe, version, vuln
|
||||||
|
set /p SCRIPTCAT="Enter script category: "
|
||||||
|
echo Command: nmap --script !SCRIPTCAT! %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap --script !SCRIPTCAT! %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:SAVE_RESULTS
|
||||||
|
echo SAVE RESULTS OPTIONS
|
||||||
|
echo ========================================
|
||||||
|
echo [1] Save as text file
|
||||||
|
echo [2] Save as XML file
|
||||||
|
echo [3] Save as grepable format
|
||||||
|
echo [4] Save all formats
|
||||||
|
echo.
|
||||||
|
set /p SAVESCAN="Select save format: "
|
||||||
|
echo.
|
||||||
|
|
||||||
|
set FILENAME=nmap_scan_%TARGET%_%date:~-4,4%%date:~-7,2%%date:~-10,2%_%time:~0,2%%time:~3,2%%time:~6,2%
|
||||||
|
set FILENAME=%FILENAME: =0%
|
||||||
|
|
||||||
|
if "%SAVESCAN%"=="1" (
|
||||||
|
echo Command: nmap -oN %FILENAME%.txt %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -oN %FILENAME%.txt %TARGET%
|
||||||
|
echo Output saved to: %FILENAME%.txt
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SAVESCAN%"=="2" (
|
||||||
|
echo Command: nmap -oX %FILENAME%.xml %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -oX %FILENAME%.xml %TARGET%
|
||||||
|
echo Output saved to: %FILENAME%.xml
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SAVESCAN%"=="3" (
|
||||||
|
echo Command: nmap -oG %FILENAME%.gnmap %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -oG %FILENAME%.gnmap %TARGET%
|
||||||
|
echo Output saved to: %FILENAME%.gnmap
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
if "%SAVESCAN%"=="4" (
|
||||||
|
echo Command: nmap -oA %FILENAME% %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap -oA %FILENAME% %TARGET%
|
||||||
|
echo Output saved to: %FILENAME%.* (all formats)
|
||||||
|
goto SCAN_DONE
|
||||||
|
)
|
||||||
|
echo Invalid option!
|
||||||
|
goto MENU
|
||||||
|
|
||||||
|
:CUSTOM_COMMAND
|
||||||
|
set /p CUSTOM="Enter custom Nmap parameters (without 'nmap' and target): "
|
||||||
|
echo.
|
||||||
|
echo Command: nmap %CUSTOM% %TARGET%
|
||||||
|
echo.
|
||||||
|
nmap %CUSTOM% %TARGET%
|
||||||
|
goto SCAN_DONE
|
||||||
|
|
||||||
|
:SCAN_DONE
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
echo Scan completed!
|
||||||
|
echo ========================================
|
||||||
|
echo.
|
||||||
|
|
||||||
|
set /p CONTINUE="Do you want to run another scan? (Y/N): "
|
||||||
|
if /i "%CONTINUE%"=="Y" goto MENU
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo Exiting...
|
||||||
|
pause
|
||||||
Reference in New Issue
Block a user