Enviado em 16/02/2019 - 14:21h
Estou escrevendo um enumerador geral para o prompt/terminal e estou penando pra usar a função argv do módulo sys. Vou deixar o código pra entenderem melhor o problema mas não precisa ler. Basicamente quero que o usuário passe dois argumentos, um IP INICIAL e um IP FINAL, a tarefa do script é pegar esse bloco de ip e ir checando os serviços. Como faço pra quando esses argumentos forem passados sejam adicionados à lista sys.argv todos os IPS que vão do primeiro ao segundo passados via linha de comando? Como no Nmap#!/usr/bin/python
import socket
import sys
import re
import os
RED = "\033[1;31m"
BLUE = "\033[1;34m"
CYAN = "\033[1;36m"
GREEN = "\033[0;32m"
RESET = "\033[0;0m"
BOLD = "\033[;1m"
REVERSE = "\033[;7m"
if len(sys.argv)!=2:
print(RED+"\nBem-vindo ao enumerador geral nietzscheano.")
print("A sintaxe utilizada é "+BOLD+"errada."+RED+"Utilize o IP alvo.")
print("Tente : python enumall.py 127.0.0.1")
print("Se você quiser descobrir o ip do site alvo utilize -si\n")
else:
print(GREEN+REVERSE+"\n!-INICIANDO ENUMERADOR GERAL-!\n")
print(RED+BOLD+"---------------------------------------------")
print(RESET+BLUE+"!-VERIFICANDO FTP EM HOST "+sys.argv[1]+"-!\n")
print(RED+BOLD+"---------------------------------------------")
try:
tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp.connect((sys.argv[1],21))
banner = tcp.recv(1024)
banner = banner.decode()
banner = banner.strip("220 ")
print(RED+"!-BANNER CAPTURADO-!\n")
print(REVERSE+banner)
except Exception as e:
print(RED+BOLD+"Não foi possível estabelecer conexão com "+sys.argv[1]+" na porta 21(FTP).")
r1 = input("O serviço FTP está rodando em outra porta? (S/N)")
if r1=="S" or r1=="s":
port = input("Digite a porta : ")
try:
tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp.connect((sys.argv[1],port))
banner = tcp.recv(1024)
banner = banner.decode()
banner = banner.strip("220 ")
print(RED+"!-BANNER CAPTURADO-!\n")
print(REVERSE+banner)
except:
print("Não foi possível estabelecer conexão.")
print("Prosseguindo...")
elif r1=="N" or r1=="n":
print("Prosseguindo...")
print(RED+BOLD+"---------------------------------------------")
print(RESET+BLUE+"!-VERIFICANDO ACESSO REMOTO DE SMB EM HOST "+sys.argv[1]+"-!\n")
print(RED+BOLD+"---------------------------------------------")
try:
tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp.connect((sys.argv[1],21))
banner = tcp.recv(1024)
banner = banner.decode()
banner = banner.strip("220 ")
print(RED+"!-BANNER CAPTURADO-!\n")
print(REVERSE+banner)
except Exception as e:
print(RED+BOLD+"Não foi possível estabelecer conexão com "+sys.argv[1]+" na porta 21(FTP).")
r1 = input("O serviço FTP está rodando em outra porta? (S/N)")
if r1=="S" or r1=="s":
port = input("Digite a porta : ")
try:
tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp.connect((sys.argv[1],port))
banner = tcp.recv(1024)
banner = banner.decode()
banner = banner.strip("220 ")
print(RED+"!-BANNER CAPTURADO-!\n")
print(REVERSE+banner)
except:
print("Não foi possível estabelecer conexão.")
print("Prosseguindo...")
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Dica para encontrar diversos jogos Indies criativos
Instalando Discord no Debian 13
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Software livre - será que eu estou tão errado assim? (17)
Dificuldade com Ocs 2.12.3 no Debian 13 com Apache2 - Can't load ... (4)
paginação dos favoritos não funciona no vivaolinux[BU... (4)