Skip to content

Instantly share code, notes, and snippets.

@gs-projekt
Created September 17, 2021 21:08
Show Gist options
  • Save gs-projekt/12ee28da986aef6ac4f449febe0ce871 to your computer and use it in GitHub Desktop.
Save gs-projekt/12ee28da986aef6ac4f449febe0ce871 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
import socket
import subprocess
import sys
from datetime import datetime
# Clear the screen
# subprocess.call('clear', shell=True)
import socket # importing library
from pyfiglet import Figlet
custom_fig = Figlet(font='doom')
print(custom_fig.renderText('GateKeeper Security'))
file = open(r"C:\Users\gary1\Desktop\DemoFile.txt", "a")
###############
######################
##trying to get error handler##
####################
###############
try:
hostName = input("What is the name of the host you wish to scan?")
ip = socket.gethostbyname(hostName)
except:
print("Unable to reach host. Program closing.")
file.write("Unable to reach host. Program closing. \n")
exit()
# Ask for input
# remoteServer = input("Enter a remote host to scan: ")
# remoteServerIP = socket.gethostbyname(remoteServer)
# Print a nice banner with information on which host we are about to scan
else:
print("-" * 60)
print("Please wait, scanning remote host", ip)
print("-" * 60)
# Check what time the scan started
t1 = datetime.now()
print(f"The scan began at {t1}")
file.write(f"The scan began at {t1}. \n")
# Using the range function to specify ports (here it will scans all ports between 1 and 1024)
# We also put in some error handling for catching errors
for port in range(0,4000): # check for all available ports
try:
serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # create a new socket
serv.bind((ip, port)) # bind socket with address
except:
file.write("Port open : {} \n".format(port)) # print open port number
# try:
# for port in range(1, 1025):
# sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# result = sock.connect_ex((remoteServerIP, port))
# if result == 0:
# print("Port {}: Open".format(port))
# sock.close()
#
# except KeyboardInterrupt:
# print("You pressed Ctrl+C")
# sys.exit()
#
# except socket.gaierror:
# print('Hostname could not be resolved. Exiting')
# sys.exit()
#
# except socket.error:
# print("Couldn't connect to server")
# sys.exit()
# Checking the time again
t2 = datetime.now()
print(f"The scan ended at {t2}.")
file.write(f"The scan ended at {t2}. \n")
# Calculates the difference of time, to see how long it took to run the script
total = t2 - t1
# Printing the information to screen
print('Scanning Completed in: ', total)
file.write(f"Scanning Completed in: {total}. \n")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment