Publiqué la siguiente pregunta enlace en el desbordamiento de pila y Se señaló que posiblemente debería reenviarlo al intercambio de seguridad. Por conveniencia, la pregunta se reitera a continuación:
Comencé a crear un script para automatizar las pruebas de configuración del host en Kali usando python. Me gustaría saber si hay otros "escaneos" que me falten o que se puedan hacer para recuperar más información sobre un host específico.
También me gustaría saber si alguno de los análisis actuales se puede mejorar.
El código hasta ahora se muestra a continuación:
#Automate test startup using IP Addresses
import os
def runTerminal(command,name):
os.system("gnome-terminal --tab -e 'bash -c \"" + command+" > "+name+"\"'")
testName = raw_input("Enter the name of the current test: ")
URL = raw_input("Enter the URL: ")
print "Current test: " + testName + " using host: "+ URL
initialURL = URL.split("://",1)[1]
if ':' in initialURL:
port = initialURL.split(":",1)[1]
else:
port = 0
shortURL=initialURL.split(":",1)[0]
print "URL : " + str(shortURL) + " Port: " + str(port)
#Scan web server for known vulnerabilities
print "Running Nikto..."
niktoCommand = "nikto -h "+ str(shortURL)
runTerminal(niktoCommand,testName+"Nikto.txt")
#transfer a URL or get basic headers
print "Running cURL..."
cURLCommand = "curl -kv "+ str(initialURL)
runTerminal(cURLCommand,testName+"Curl.txt")
#Network exploration tool and security / port scanner
print "Running Nmap..."
if port == 0:
NmapCommand = "nmap -sV -A "+str(shortURL)
else:
NmapCommand = "nmap -sV -A "+str(shortURL)+ " -p "+ port
runTerminal(NmapCommand,testName+"Nmap.txt")
#Web Content Scanner
print "Running Dirb..."
dirbCommand = " dirb "+str(URL)
runTerminal(dirbCommand,testName+"Dirb.txt")
#Fast SSL/TLS scanner
if port == 443:
print "Running SSLScan..."
sslCommand = " sslscan "+str(initialURL)
runTerminal(sslCommand,testName+"SSLScan.txt")
#Web Application Firewall Detection Tool
print "Running wafw00f..."
wafCommand = " wafw00f -av " +str(URL)
runTerminal(wafCommand,testName+"WafScan.txt")
#Scanner similar to dirb mixed with curl
print "Running UniScan..."
uniCommand = " uniscan -u " +str(URL)+" -qweds"
runTerminal(uniCommand,testName+"UniScan.txt")
Hasta ahora, el código toma un nombre de proyecto para guardar un archivo, también toma una URL que luego se divide según lo exijan los análisis específicos. Desde allí, envía los comandos específicos de exploración a una función que ejecuta la exploración en una nueva ventana de terminal.