Salamlar hərkəsə.Sizlərlə python 2.7 versiyasında yazdığım admin panel scanner tool-unu paylaşmaq istəyirəm
Tool haqqında kiçik məlumat verim.İşlədilməsi root privilegiya tələb edir. -help arqumenti ilə istifadə qaydası ilə tanış ola bilərsiniz.Tool hələki dönən response prinsipi ilə işləyir irəlidə bir az daha təkmilləşdirmək GUI də yazmaq olar.Niyə də olmasin
Github linkini paylaşıram proqramın özünü və lügəti ordan yükləyib işlədə bilərsiniz.
https://github.com/camoufl4g3/scanner
Kod:
#!/usr/bin/python
# -*- coding: utf8 -*-
#Port scanner tool
#Python 2.7
# __author__ = 'camoufl4g3'
import os,sys,time,httplib,requests,urllib2,optparse
from termcolor import colored
about = """
#########################################
##
Online Admin Panel Scanner. v.1 ##
##
#Camoufl4g3 ##
##
camoufl4g3@gmail.com ##
Select the option -help for help ##
#########################################
"""
def scan(domain):
if "http://" not in domain:
domain = "http://" + domain
try:
print "\n--------------------------------------------"
print (colored('Scan starts for target: ','green'))+colored(domain,'red')
print "--------------------------------------------\n"
f = open("file.txt","r")
myList = []
for line in f:
myList.append(line)
all = 0
for j in range(len(myList)):
time.sleep(1)
response = requests.get(domain+"/"+myList[j].rstrip('\n'))
status = response.status_code
if(status == 200):
all+= 1
print(domain+"/"+myList[j].rstrip('\n')),colored('[+]', 'green')
elif(status == 401):
all+= 1
print(domain+"/"+myList[j].rstrip('\n')),colored('[+]', 'green')
else:
print(domain+"/"+myList[j].rstrip('\n')),colored('[-]', 'red')
print("Found result(s): "+colored(str(all), 'red'))
except requests.exceptions.ConnectionError as e:
time.sleep(1)
print("web site is down")
def Main():
try:
# if not root...kick out
if not os.geteuid()==0:
sys.exit("\n Root permission need to run the scanner\n")
parser = optparse.OptionParser(about)
parser.add_option('-d',
action = "store", #stored
dest = "domain",
type = "string", #int tipi
help = "for example: ./scanner.py -d victim.com")
(option,args) = parser.parse_args() #it return tuple
if option.domain == None:
print parser.usage
sys.exit(0)
else:
scan(option.domain)
except KeyboardInterrupt:
print "Program exit"
if __name__ == "__main__":
Main()