hscan - Portscan em Pyhton

Publicado por henrique (última atualização em 18/01/2023)

[ Hits: 3.246 ]

Homepage: naotem.com

Download hscan.py




Portscan feito em Python. Um nmap simplificado.

  



Esconder código-fonte

#!/bin/python3

import socket,  argparse




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"
branco = "\033[37m"
gray = "\033[0;37m"
orange = "\033[0;49;33m"
yellow = "\033[0;49;93m"
print("-" * 65)
print(yellow, """\n\n __  __     ______     ______     ______     __    __    
/\ \_\ \   /\  ___\   /\  ___\   /\  __ \   /\ "-./  \   
\ \  __ \  \ \___  \  \ \ \____  \ \  __ \  \ \ \-./\ \  
 \ \_\ \_\  \/\_____\  \ \_____\  \ \_\ \_\  \ \_\ \ \_\ 
  \/_/\/_/   \/_____/   \/_____/   \/_/\/_/   \/_/  \/_/ 
                                                         \n""", reset)


def main():
    parser = argparse.ArgumentParser(description='A portscanner in python does in a cursed of python ',)
    parser.add_argument('-p', action='store', dest='port',  help='porta')
    parser.add_argument('-d', action='store', dest='domain', default='0.0.0.0', help='dominio')
    parser.add_argument('-a', dest='all', default=False, required=False, help='portas padroes True ou False', choices=['True', 'False'])
    parser.add_argument('-w', action='store', dest='wordlist', default='False', required=False, help='wordlist')
    parser.add_argument('-t', action='store', dest='timeout', default='0.5', help='timeout')
    arguments = parser.parse_args()
    if arguments.all == 'True':
        ports = (21, 22, 23, 25, 443, 445, 8080, 80, 3386, 139, 138)
        for port in ports:

            client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            client.settimeout(float(arguments.timeout))
            code = client.connect_ex((arguments.domain, int(port)))
            if code == 0:
                print(red, f'[*] {port} aberta'.title(), reset)

    if arguments.wordlist != 'False':
        arquivo = open(arguments.wordlist, 'r')
        for port in arquivo:

            client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            client.settimeout(float(arguments.timeout))
            code = client.connect_ex((arguments.domain, int(port)))
            if code == 0:
                print(red, f'[*] {port} aberta'.title(), reset)
    if arguments.all != 'True' and arguments.wordlist == 'False':
        try:
            for ports in arguments.port.split(','):

                client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                client.settimeout(float(arguments.timeout))
                code = client.connect_ex((arguments.domain, int(ports)))
                if code == 0:
                    print(red,f'[*] {ports} aberta'.title(),reset)
        except Exception as e:
            print('Algo deu errado!')



if __name__ == '__main__':
    main()
print('-' * 65)

Scripts recomendados

newMyIP

Downloader Gráfico - Python 3

Conversor de String em Hex para String plana

Git clone simplificado

Consulta CNPJ online


  

Comentários
[1] Comentário enviado por maurixnovatrento em 28/01/2023 - 21:52h


Muito legal.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/mxnt10


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts