Sockets 使用套接字,我可以';t检查每个端口上运行的服务/软件
所以我一直在尝试许多不同的网站,扫描它们。到目前为止,我无法在Sockets 使用套接字,我可以';t检查每个端口上运行的服务/软件,sockets,networking,virtual-machine,Sockets,Networking,Virtual Machine,所以我一直在尝试许多不同的网站,扫描它们。到目前为止,我无法在scan\u port函数中获得嵌套的try。我使用get_banner功能的那一个。不确定我的代码是否有问题,或者该端口上是否没有运行的服务/应用程序。我看了一遍又一遍的教程,逐字逐句地复制代码,结果还是一样的 我得出的结论是,要么这些端口上没有运行任何应用程序/软件,要么我的代码是错误的。到目前为止,我扫描的网站如下: youtube.com facebook.com 谷歌网站 itsecgames.com testphp.vun
scan\u port
函数中获得嵌套的try。我使用get_banner
功能的那一个。不确定我的代码是否有问题,或者该端口上是否没有运行的服务/应用程序。我看了一遍又一遍的教程,逐字逐句地复制代码,结果还是一样的
我得出的结论是,要么这些端口上没有运行任何应用程序/软件,要么我的代码是错误的。到目前为止,我扫描的网站如下:
try/except
块,甚至是嵌套的块,以尝试获得一个错误,看看问题出在哪里。但它不起作用,因为我设置了一个超时。我甚至尝试过,使用教程中显示的完全相同的网站,并将其缩小到具有横幅
输出的端口,只扫描具有输出的端口,但仍然没有输出。我想知道我的代码是否有问题
如果有必要的话,我会在Jupyter笔记本和Kali虚拟机中编写这段代码
import socket
from IPy import IP
def get_banner(s):
return s.recv(1024)
def scan_port(address, port):
try:
sock = socket.socket()
sock.settimeout(0.5)
sock.connect((address, port))
try:
banner = get_banner(sock)
print(f"[+] Port{port} is open: {banner}")
except:
print(f"[+] Port{port} is open.")
except:
pass
def dti(domain):
try:
IP(domain)
return domain
except ValueError:
return socket.gethostbyname(domain)
def scan_multiple(target):
address = dti(target)
print(f"\n[~] Currently scanning: {target}")
for port in range(1, 101):
scan_port(address, port)
print("If you have multiple targets, separate them with ','")
target = input("Target(s): ")
if "," in target:
targets = list()
targets = target.split(", ")
for target in targets:
scan_multiple(target)
else:
scan_multiple(target)