Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- import requests
- import socket
- import sys
- start_ip = str(sys.argv[1])
- end_ip = str(sys.argv[2])
- log_file = open('Mikrotik_Finder.log','a+')
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- sock.settimeout(0.1)
- print("Scan Started")
- log_file.write("Scan Started\n")
- def undotIPv4 (dotted):
- return sum (int (octet) << ( (3 - i) << 3) for i, octet in enumerate (dotted.split ('.') ) )
- def dotIPv4 (addr):
- return '.'.join (str (addr >> off & 0xff) for off in (24, 16, 8, 0) )
- def rangeIPv4 (start, stop):
- for addr in range (undotIPv4 (start), undotIPv4 (stop) ):
- yield dotIPv4 (addr)
- ip_set = rangeIPv4(start_ip, end_ip)
- for ip in ip_set:
- try:
- url = "http://"+ip
- r = requests.get(url, timeout=0.1)
- site = r.text
- if site.find("mikrotik") >= 0 :
- print("\n>>> Found Mikrotik <<<\n")
- print(url)
- log_file.write("\n>>> Found Mikrotik <<<\n")
- log_file.write(url)
- ssh_result = sock.connect_ex((ip,22))
- if ssh_result == 0:
- print("SSH Port is open")
- log_file.write("\nSSH Port is open\n")
- else:
- print("\nSSH Port is not open\n")
- else:
- pass
- log_file.flush()
- except:
- pass
- if (str(ip).endswith(".0")) : print("Range for this Round:", ip, "/24")
- log_file.flush()
- log_file.close()
- # Usage : name_of_script.py 10.0.0.0 10.0.0.10
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement