# DESC: Nmap completo #!/bin/bash # ========================== # NMAP H4CK3R SCANNER # By SJD & ChatGPT # ========================== # Colores estilo hacker green="\e[92m" red="\e[91m" blue="\e[94m" yellow="\e[93m" reset="\e[0m" clear # Banner Estilo Hacker echo -e "${green}" echo "███╗ ██╗███╗ ███╗ █████╗ ██████╗ "; echo "████╗ ██║████╗ ████║██╔══██╗██╔══██╗"; echo "██╔██╗ ██║██╔████╔██║███████║██║ ██║"; echo "██║╚██╗██║██║╚██╔╝██║██╔══██║██║ ██║"; echo "██║ ╚████║██║ ╚═╝ ██║██║ ██║██████╔╝"; echo "╚═╝ ╚═══╝╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝"; echo -e "${reset}" sleep 0.5 echo -e "${blue}🔥 Bienvenido al Scanner NMAP Hacker 🔥${reset}" echo read -p "🔎 Ingrese IP, Dominio o Rango: " TARGET echo # ========================== # SELECCIÓN DE PUERTOS # ========================== echo -e "${yellow}📡 Seleccione puertos:${reset}" echo "1) Elegir un puerto (ej: 80)" echo "2) Elegir varios puertos (22,80,443)" echo "3) Todos los puertos (1-65535)" read -p "👉 Opción: " PORT_MODE case $PORT_MODE in 1) read -p "🔢 Puerto: " PRT; PORTS="-p $PRT" ;; 2) read -p "🔢 Puertos separados por coma: " PRT; PORTS="-p $PRT" ;; 3) PORTS="-p-" ;; *) echo -e "${red}❌ Opción inválida${reset}"; exit ;; esac echo echo -e "${yellow}⚔️ Seleccione el tipo de escaneo:${reset}" echo "1) Normal" echo "2) Sigiloso" echo "3) Muy Sigiloso" echo "4) Rápido" echo "5) Muy Rápido" echo "6) Completo Total" echo "7) ULTRA Sigiloso Anti-IDS/IPS" echo "8) Detectar Firewalls / Shields" echo "9) Buscar SOLO servicios vulnerables (NSE)" read -p "👉 Opción: " MODE case $MODE in 1) FLAGS="-sS -Pn" ;; 2) FLAGS="-sS -Pn -n --reason" ;; 3) FLAGS="-sS -Pn -n -f --data-length 25 --defeat-rst-ratelimit" ;; 4) FLAGS="-sS -Pn -n --min-rate 8000 -T4" ;; 5) FLAGS="-sS -Pn -n --min-rate 15000 -T5" ;; 6) FLAGS="-sS -Pn -n -p- -sV -O -A --min-rate 7000" ;; 7) FLAGS="-sS -Pn -n -f --data-length 10 --mtu 8 --scan-delay 300ms --max-rate 50 --defeat-rst-ratelimit" ;; 8) FLAGS="-sS -Pn -n --script firewall-bypass,ip-forwarding,traceroute-geolocation" ;; 9) FLAGS="-sV --script vuln,exploit,auth,brute" ;; *) echo -e "${red}❌ Opción inválida${reset}"; exit ;; esac echo read -p "➕ ¿Agregar módulos avanzados (-sV, -A, -O, -vvv)? (s/n): " EXTRA if [[ $EXTRA == "s" ]]; then echo echo "1) -sV" echo "2) -A" echo "3) -O" echo "4) -vvv" echo "5) TODO" read -p "👉 Opción: " ADD case $ADD in 1) FLAGS="$FLAGS -sV" ;; 2) FLAGS="$FLAGS -A" ;; 3) FLAGS="$FLAGS -O" ;; 4) FLAGS="$FLAGS -vvv" ;; 5) FLAGS="$FLAGS -sV -A -O -vvv" ;; esac fi # ========================== # SOLO PUERTOS ABIERTOS # ========================== FLAGS="$FLAGS --open" echo read -p "📁 ¿Desea exportar el resultado? (s/n): " SAVE if [[ $SAVE == "s" ]]; then read -p "📝 Nombre del archivo sin extensión: " FILE OUTPUT="$FILE.txt" FINALCMD="nmap $FLAGS $PORTS $TARGET | tee $OUTPUT" else FINALCMD="nmap $FLAGS $PORTS $TARGET" fi echo echo -e "${green}======================================" echo " COMANDO FINAL:" echo " $FINALCMD" echo "======================================" echo -e "${reset}" sleep 1 read -p "🚀 Ejecutar comando? (s/n): " RUN if [[ $RUN == "s" ]]; then eval $FINALCMD echo echo -e "${green}✔ Escaneo Finalizado${reset}" [[ $SAVE == "s" ]] && echo -e "${blue}📂 Guardado en: $OUTPUT${reset}" else echo -e "${yellow}⚠ Comando cancelado.${reset}" fi