Enviado em 03/12/2016 - 17:23h
Galera, sou novo na linguagem, e preciso de ajuda. Meu professor passou um trabalho para a turma, onde precisamos fazer um programa, em python, que faça alguma coisa relacionada a redes, ex: ping/traceroute/email/ftp.#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Programa scanner
# Programado por: Túlio Marcos (github.com/tuliodutra27)
# Versão python utilizada: 2.7.12
from scapy.all import *
import sys
from os import system
def help():
print """
=================================================================================================================================
= Scanner de rede em Python =
= by Túlio =
=================================================================================================================================
= Opções: =
= [-t] Utilizar o pacote traceroute =
= EXEMPLO: python "arquivo.py" -t <ip> =
= [-i] Mostrar o IP da maquina atual =
= EXEMPLO: python "arquivo.py" -i =
= [-p] Testar o ping para um endereço IP =
= EXEMPLO: python "arquivo.py" -p <ip> =
= [-s] Mostrar o Sistema Operacional do IP =
= EXEMPLO: python "arquivo.py" -s <ip> =
=================================================================================================================================
"""
if len(sys.argv) < 2:
system('clear') #caso o programa seja executado sem que nenhum argumento seja passado ele exibe o comando "help" juntamente com as mensagens abaixo
print "ERRO !"
print "Nenhum argumento foi passado. "
help()
sys.exit()
elif sys.argv[1] == "-t":
alvo = sys.argv[2]
ip = IP()
ip.dst = alvo
resp = sr1(ip/traceroute)
res = sr1(ARP(pdst=sys.argv[2]))
elif sys.argv[1] == "-i":
ip = IP()
print ip
sys.exit()
elif sys.argv[1] == "-s":
alvo = sys.argv[2]
ip = IP()
ping = ICMP()
ip.dst = alvo
resp = sr1(ip/ping)
res = sr1(ARP(pdst=sys.argv[2]))
if resp.ttl < 65:
print """
=========================================================================================================================
= Sistema Operacional: Linux =
=========================================================================================================================
"""
elif resp.ttl == 128:
print """
=========================================================================================================================
= Sistema Operacional Windows =
=========================================================================================================================
"""
elif sys.argv[1] == "-p":
alvo = sys.argv[2]
ip = IP()
ping = ICMP()
ip.dst = alvo
resp = sr1(ip/ping)
res = sr1(ARP(pdst=sys.argv[2]))
print resp.time
else:
print "Opção inválida!"
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Programa simples pra cortar vídeos (7)
Instalação automatizada do Debian 12 em UEFI (1)
Browser/Placa de vídeo trava Ubuntu 22.04 (2)