Advertisement
Typhoon

Scan IP's for Mikrotik

Oct 5th, 2016
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.58 KB | None | 0 0
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3.  
  4. import requests
  5. import socket
  6. import sys
  7. start_ip = str(sys.argv[1])
  8. end_ip = str(sys.argv[2])
  9. log_file = open('Mikrotik_Finder.log','a+')
  10. sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  11. sock.settimeout(0.1)
  12.  
  13. print("Scan Started")
  14. log_file.write("Scan Started\n")
  15.  
  16. def undotIPv4 (dotted):
  17.     return sum (int (octet) << ( (3 - i) << 3) for i, octet in enumerate (dotted.split ('.') ) )
  18.  
  19. def dotIPv4 (addr):
  20.     return '.'.join (str (addr >> off & 0xff) for off in (24, 16, 8, 0) )
  21.  
  22. def rangeIPv4 (start, stop):
  23.     for addr in range (undotIPv4 (start), undotIPv4 (stop) ):
  24.         yield dotIPv4 (addr)
  25.  
  26. ip_set = rangeIPv4(start_ip, end_ip)
  27.  
  28. for ip in ip_set:
  29.     try:
  30.         url = "http://"+ip
  31.         r = requests.get(url, timeout=0.1)
  32.         site = r.text
  33.         if site.find("mikrotik") >= 0 :
  34.                 print("\n>>> Found Mikrotik <<<\n")
  35.                 print(url)
  36.                 log_file.write("\n>>> Found Mikrotik <<<\n")
  37.                 log_file.write(url)
  38.                 ssh_result = sock.connect_ex((ip,22))
  39.                 if ssh_result == 0:
  40.                         print("SSH Port is open")
  41.                         log_file.write("\nSSH Port is open\n")
  42.                 else:
  43.                         print("\nSSH Port is not open\n")
  44.         else:
  45.                 pass
  46.  
  47.         log_file.flush()
  48.  
  49.     except:
  50.         pass
  51.  
  52.     if (str(ip).endswith(".0")) : print("Range for this Round:", ip, "/24")
  53.  
  54. log_file.flush()
  55. log_file.close()
  56.  
  57. # Usage : name_of_script.py 10.0.0.0 10.0.0.10
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement