Я пытаюсь подключиться к диапазону IP-адресов и портов и распечатать сообщение, если полученные данные соответствуют любому из баннеров.
После исправления всех ошибок отступа не может быть получено никакого вывода.Пожалуйста, взгляните на код ниже:
import socket
def retBanner(ip,port):
try:
socket.setdefaulttimeout(280)
s = socket.socket()
s.connect((ip, port))
banner = s.recv(1024)
return banner
except:
return
def checkVulns(banner):
if ('vsFTPd 3.0.3' in banner):
print ('[+] vsFTPd Server is vulnerable.')
elif '3Com 3CDaemon FTP Server Version 2.0' in banner:
print('[+] 3CDaemon FTP Server is vulnerable.')
elif 'Ability Server 2.34' in banner:
print ('[+] Ability FTP Server is vulnerable.')
elif 'Sami FTP Server 2.0.2' in banner:
print('[+] Sami FTP Server is vulnerable.')
else:
print('[-] FTP Server is not vulnerable.')
return
def main():
portList = [21, 80]
for x in range(68, 69):
ip = '192.168.10.' + str(x)
for port in portList:
banner =retBanner(ip, port)
if banner:
print('[+]' + ip + ':' + str(banner))
if __name__=='__main__':
main()