\s+(.*?) | 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg == "dns_info"):
di_hp = color.W+color.BOLD+sys.argv[0]+" dns_info --ip [IP] --yougetsignal/--viewdns/--hackertarget [SELECT JUST ONE SERVICE!] \nExample: "+sys.argv[0]+" dns_info --ip google.com --yougetsignal"+color.ENDC
parser = OptionParser(usage=di_hp)
parser.add_option("--ip",
help="Parse IP address")
parser.add_option("--yougetsignal","-y",
help="Get website from yougetsignal",action="store_true")
parser.add_option("--viewdns","-v",
help="Get website from viewdns",action="store_true")
parser.add_option("--hackertarget","-t",
help="Get website from hackertarget",action="store_true")
(options,args) = parser.parse_args()
ip = options.ip
yougetsignal = options.yougetsignal
viewdns = options.viewdns
hackertarget = options.hackertarget
if ip and yougetsignal==True:
dnsinfo().yougetsignal(ip)
if ip and viewdns==True:
dnsinfo().viewdns(ip)
if ip and hackertarget==True:
dnsinfo().hackertarget(ip)
errors = []
if (ip == None):
errors.append("[-] No IP specified.")
if (viewdns or hackertarget or yougetsignal == None):
errors.append("[-] No SERVICE specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="rce_joomla"):
rj_hp = color.W+color.BOLD+sys.argv[0]+" rce_joomla -w/--wordlist [SELECT PATH OF URLs SAVED IN WORDLIST]\nExample: "+sys.argv[0]+" rce_joomla -w joomla3.txt"+color.ENDC
parser = OptionParser(usage=rj_hp)
parser.add_option("--wordlist","-w",
help="wordlist path")
(options,args) = parser.parse_args()
wordlist = options.wordlist
if wordlist:
exploit().joomla(wordlist)
errors = []
if (wordlist == None):
errors.append("[-] No WORDLIST specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="rce_magento"):
rm_hp = color.W+color.BOLD+sys.argv[0]+" rce_magento -w/--wordlist [SELECT PATH OF URLs SAVED IN WORDLIST]\nExample: "+sys.argv[0]+" rce_magento -w magento.txt"+color.ENDC
parser = OptionParser(usage=rm_hp)
parser.add_option("--wordlist","-w",
help="Wordlist path")
(options,args) = parser.parse_args()
wordlist = options.wordlist
if wordlist:
exploit().magento(wordlist)
errors = []
if (wordlist == None):
errors.append("[-] No WORDLIST specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="google_dorker"):
gd_hp = color.W+color.BOLD+sys.argv[0]+' google_dorker -d/--dork="[DORK]" --level [NUMBER OF PAGE] --lfi [IF YOU WANT TO SCAN WEBSITE FROM LFI!]\nExample: '+sys.argv[0]+' google_dorker --dork="php?id=" --level 10 '+color.ENDC
parser = OptionParser(usage=gd_hp)
parser.add_option("--dork","-d",
help="Dork for get URL")
parser.add_option("--level",type=int,default=10,
help="Number of page to stop")
parser.add_option("--lfi",
help="Scan Founded website from LFI", action="store_true")
parser.add_option("--sqli",
help="Scan Founded website from SQLi", action="store_true")
parser.add_option("--rce",
help="Scan Founded website from RCE", action="store_true")
parser.add_option("--xss",
help="Scan Founded website from XSS", action="store_true")
(options,args) = parser.parse_args()
dork = options.dork
level = options.level
lfi = options.lfi
sqli = options.sqli
rce = options.rce
xss = options.xss
if dork and level is not None:
dorker().google(dork, 0, level)
if dork and level is not None and lfi==True:
print (color.R+color.BOLD+"LFI Scanner : "+color.ENDC)
gurl= dorker().gurl
for urll in gurl:
urll= urll.strip()
scanner().lfi(urll)
if dork and level is not None and sqli==True:
print (color.R+color.BOLD+"SQLi Scanner : "+color.ENDC)
gurl= dorker().gurl
for urll in gurl:
urll= urll.strip()
scanner().sqli(urll)
if dork and level is not None and rce==True:
print (color.R+color.BOLD+"RCE Scanner : "+color.ENDC)
gurl= dorker().gurl
for urll in gurl:
urll= urll.strip()
scanner().rce(urll)
if dork and level is not None and xss==True:
print (color.R+color.BOLD+"XSS Scanner : "+color.ENDC)
gurl= dorker().gurl
for urll in gurl:
urll= urll.strip()
scanner().xss(urll)
errors = []
if (dork == None):
errors.append("[-] No DORK specified.")
if (level == None):
errors.append("[-] No PAGE specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="bing_dorker"):
gd_hp = color.W+color.BOLD+sys.argv[0]+' bing_dorker --ip [IP OF TARGET] -d/--dork="[DORK]" --lfi [IF YOU WANT TO SCAN WEBSITE FROM LFI!]\nExample: '+sys.argv[0]+' bing_dorker --ip 192.xx.xxx.xxx --dork="php?id="'+color.ENDC
parser = OptionParser(usage=gd_hp)
parser.add_option("--ip")
parser.add_option("--dork","-d",
help="Dork for get URL")
parser.add_option("--lfi",
help="Scan Founded website from LFI", action="store_true")
parser.add_option("--sqli",
help="Scan Founded website from SQLi", action="store_true")
parser.add_option("--rce",
help="Scan Founded website from RCE", action="store_true")
parser.add_option("--xss",
help="Scan Founded website from XSS", action="store_true")
(options,args) = parser.parse_args()
ip = options.ip
dork = options.dork
lfi = options.lfi
sqli = options.sqli
rce = options.rce
xss = options.xss
if ip and dork:
dorker().bing(ip,dork)
if ip and dork and lfi==True:
print (color.R+color.BOLD+"LFI Scanner : "+color.ENDC)
burl= dorker().burl
for urll in burl:
urll= urll.strip()
scanner().lfi(urll)
if ip and dork and sqli==True:
print (color.R+color.BOLD+"SQLi Scanner : "+color.ENDC)
burl= dorker().burl
for urll in burl:
urll= urll.strip()
scanner().sqli(urll)
if ip and dork and rce==True:
print (color.R+color.BOLD+"RCE Scanner : "+color.ENDC)
burl= dorker().burl
for urll in burl:
urll= urll.strip()
scanner().rce(urll)
if ip and dork and xss==True:
print (color.R+color.BOLD+"XSS Scanner : "+color.ENDC)
burl= dorker().burl
for urll in burl:
urll= urll.strip()
scanner().xss(urll)
errors = []
if (ip == None):
errors.append("[-] No IP specified.")
if (dork == None):
errors.append("[-] No DORK specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="hash_killer"):
hk_hp = color.W+color.BOLD+sys.argv[0]+' hash_killer -w/--wordlist [PATH OF WORDLIST] --md5 or --sha1 etc... [PATH OF HASHs]\nExample: '+sys.argv[0]+' -w /root/rockyou.txt --md5 hash.txt'+color.ENDC
parser = OptionParser(usage=hk_hp)
parser.add_option("-w","--wordlist",help="Path Of Wordlist !")
parser.add_option("--md5", help="Path of MD5 hash")
parser.add_option("--sha1", help="Path of SHA1 hash")
parser.add_option("--sha224", help="Path of SHA224 hash")
parser.add_option("--sha256", help="Path of SHA256 hash")
parser.add_option("--sha384", help="Path of SHA384 hash")
parser.add_option("--sha512", help="Path of SHA512 hash")
parser.add_option("--ntlm", help="Path of NTLM hash")
parser.add_option("--mssql2000", help="Path of MSSQL2000 hash")
parser.add_option("--mssql2005", help="Path of MSSQL2005 hash")
parser.add_option("--mysql323", help="Path of MYSQL323 hash")
parser.add_option("--mysql41", help="Path of MYSQL41 hash")
parser.add_option("--oracle11", help="Path of ORACLE11 hash")
(options,args) = parser.parse_args()
wordlist = options.wordlist
md5 = options.md5
sha1 = options.sha1
sha224 = options.sha224
sha256 = options.sha256
sha384 = options.sha384
sha512 = options.sha512
ntlm = options.ntlm
mssql2000 = options.mssql2000
mssql2005 = options.mssql2005
mysql323 = options.mysql323
mysql41 = options.mysql41
oracle11 = options.oracle11
crack = cracker()
if md5 and wordlist:
crack.md5(wordlist, md5)
if sha1 and wordlist:
crack.sha1(wordlist, sha1)
if sha224 and wordlist:
crack.sha224(wordlist, sha224)
if sha256 and wordlist:
crack.sha256(wordlist, sha256)
if sha384 and wordlist:
crack.sha384(wordlist, sha384)
if sha512 and wordlist:
crack.sha512(wordlist, sha512)
if ntlm and wordlist:
crack.ntlm(ntlm,wordlist)
if mssql2000 and wordlist:
crack.mssql2000(mssql2000,wordlist)
if mssql2005 and wordlist:
crack.mssql2005(mssql2005,wordlist)
if mysql323 and wordlist:
crack.mysql323(mysql323,wordlist)
if mysql41 and wordlist:
crack.mysql41(mysql41,wordlist)
if oracle11 and wordlist:
crack.oracle11(oracle11,wordlist)
errors=[]
if (wordlist == None):
errors.append("[-] No WORLIST specified.")
if (md5 or sha1 or sha224 or sha256 or sha384 or sha512 or ntlm or mssql2000 or mssql2005 or mysql323 or mysql41 or oracle11 == None):
errors.append("[-] No PATH OF HASHs specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="-u" or arg=="--update"):
__update__()
if (arg=="presta_exploit"):
pe_hp = color.W+color.BOLD+sys.argv[0]+' presta_exploit -l/--lists [PATH OF WORDLIST] -s/--script [PATH OF .php BACKDOOR]\nExample: '+sys.argv[0]+' presta_exploit -l prestalinks.txt -s upload.php'+color.ENDC
parser = OptionParser(usage=pe_hp)
parser.add_option("--lists","-l",
help="wordlist path")
parser.add_option("--script","-s",
help="Path of php backdoor")
(options,args) = parser.parse_args()
lists = options.lists
script = options.script
if lists and script:
exploit().presta_run(lists,script)
errors=[]
if (lists == None):
errors.append("[-] No LISTS specified.")
if (script == None):
errors.append("[-] No SCRIPT BACKDOOR .php specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="ftp_brute"):
fb_hp = color.W+color.BOLD+sys.argv[0]+' ftp_brute --ip [IP ADDRESS] -u/--username [USERNAME OF FTP LOGIN] -w/--wordlist [PATH OF WORDLIST]\nExample: '+sys.argv[0]+' ftp_brute --ip 192.168.xxx.xx -u root -w password.txt'+color.ENDC
parser = OptionParser(usage=fb_hp)
parser.add_option("--ip",
help="IP address Of FTP SERVER")
parser.add_option("--username","-u",
help="USERNAME OF FTP SERVER")
parser.add_option("--wordlist","-w",
help="WORDLIST PATH")
(options,args) = parser.parse_args()
ip = options.ip
username = options.username
wordlist = options.wordlist
if ip and username and wordlist:
print (color.Y+color.BOLD+"[+]"+color.ENDC+color.BOLD+" USERNAME : "+username+color.ENDC)
print (color.Y+color.BOLD+"[+]"+color.ENDC+color.BOLD+" WORDLIST : "+wordlist+color.ENDC)
wordlist = open(wordlist,"r")
wordlist = wordlist.readlines()
for password in wordlist:
password=password.strip()
BruteForce().ftp_brute(ip,username,password)
errors=[]
if (ip == None):
errors.append("[-] No IP specified.")
if (username == None):
errors.append("[-] No USERNAME specified.")
if (wordlist == None):
errors.append("[-] No WORDLIST specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="ssh_brute"):
sb_hp = color.W+color.BOLD+sys.argv[0]+' ssh_brute --ip [IP ADDRESS] -u/--username [USERNAME OF SSH LOGIN] -w/--wordlist [PATH OF WORDLIST]\nExample: '+sys.argv[0]+' ssh_brute --ip 192.168.xxx.xx -u root -w password.txt'+color.ENDC
parser = OptionParser(usage=sb_hp)
parser.add_option("--ip",
help="IP address Of SSH SERVER")
parser.add_option("--username","-u",
help="USERNAME OF SSH SERVER")
parser.add_option("--wordlist","-w",
help="WORDLIST PATH")
(options,args) = parser.parse_args()
ip = options.ip
username = options.username
wordlist = options.wordlist
if ip and username and wordlist:
print (color.Y+color.BOLD+"[+]"+color.ENDC+color.BOLD+" USERNAME : "+username+color.ENDC)
print (color.Y+color.BOLD+"[+]"+color.ENDC+color.BOLD+" WORDLIST : "+wordlist+color.ENDC)
wordlist = open(wordlist,"r")
wordlist = wordlist.readlines()
for password in wordlist:
password=password.strip()
BruteForce().ssh_brute(ip,username,password)
errors=[]
if (ip == None):
errors.append("[-] No IP specified.")
if (username == None):
errors.append("[-] No USERNAME specified.")
if (wordlist == None):
errors.append("[-] No WORDLIST specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="admin_brute"):
ab_hp = color.W+color.BOLD+sys.argv[0]+' admin_brute -u/--url [URL] --php --asp --cfm etc... [WEB]\nExample: '+sys.argv[0]+' admin_brute http://google.com --php'+color.ENDC
parser = OptionParser(usage=ab_hp)
parser.add_option("--url","-u",
help="URL FOR GET ADMIN PANEL")
parser.add_option("--php",
action="store_true")
parser.add_option("--asp",
action="store_true")
parser.add_option("--cfm",
action="store_true")
parser.add_option("--js",
action="store_true")
parser.add_option("--cgi",
action="store_true")
parser.add_option("--brf",
action="store_true")
(options,args) = parser.parse_args()
url = options.url
php = options.php
asp = options.asp
cfm = options.cfm
js = options.js
cgi = options.cgi
brf = options.brf
if url and php==True:
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" URL : "+url+color.ENDC)
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" SOURCE : PHP"+color.ENDC)
admin_finder().php_admin(url)
if url and asp==True:
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" URL : "+url+color.ENDC)
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" SOURCE : ASP"+color.ENDC)
admin_finder().asp_admin(url)
if url and cfm==True:
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" URL : "+url+color.ENDC)
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" SOURCE : CFM"+color.ENDC)
admin_finder().cfm_admin(url)
if url and js==True:
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" URL : "+url+color.ENDC)
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" SOURCE : JS"+color.ENDC)
admin_finder().js_admin(url)
if url and cgi==True:
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" URL : "+url+color.ENDC)
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" SOURCE : CGI"+color.ENDC)
admin_finder().cgi_admin(url)
if url and brf==True:
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" URL : "+url+color.ENDC)
print (color.C+color.BOLD+"[+]"+color.ENDC+color.BOLD+" SOURCE : BRF"+color.ENDC)
admin_finder().brf_admin(url)
errors=[]
if (ip == None):
errors.append("[-] No IP specified.")
if (php or asp or cfm or js or cgi or brf == None):
errors.append("[-] No SCRIPT specified.")
if (len(errors) > 0):
for error in errors:
print (color.BOLD+error+color.ENDC)
if (arg=="scan_list"):
sl_hp = color.W+color.BOLD+sys.argv[0]+' scan_list -l/--list [PATH] --[LFI/SQLi/RCE/XSS]\nExample: '+sys.argv[0]+' scan_list /path/to/list --sqli'+color.ENDC
parser = OptionParser(usage=sl_hp)
parser.add_option("--lists","-l",
help="LIST COUNTAIN URLs !")
parser.add_option("--sqli",
help="Scan Founded website from SQLi", action="store_true")
parser.add_option("--xss",
help="Scan Founded website from XSS", action="store_true")
parser.add_option("--rce",
help="Scan Founded website from RCE", action="store_true")
parser.add_option("--lfi",
help="Scan Founded website from LFI", action="store_true")
(options,args) = parser.parse_args()
lists = options.lists
sqli = options.sqli
xss = options.xss
rce = options.rce
lfi = options.lfi
if lists and sqli==True:
print (color.R+color.BOLD+"SQLi Scanner : "+color.ENDC)
lists = open(lists, "r")
lists = lists.readlines()
for i in lists:
i=i.strip()
scanner().sqli(i)
if lists and xss==True:
print (color.R+color.BOLD+"XSS Scanner : "+color.ENDC)
lists = open(lists, "r")
lists = lists.readlines()
for i in lists:
i=i.strip()
scanner().xss(i)
if lists and rce==True:
print (color.R+color.BOLD+"RCE Scanner : "+color.ENDC)
lists = open(lists, "r")
lists = lists.readlines()
for i in lists:
i=i.strip()
scanner().rce(i)
if lists and lfi==True:
print (color.R+color.BOLD+"LFI Scanner : "+color.ENDC)
lists = open(lists, "r")
lists = lists.readlines()
for i in lists:
i=i.strip()
scanner().lfi(i)
if __name__ == '__main__':
try:
__main__()
except KeyboardInterrupt:
print (color.BOLD+color.Y+"Exiting Now !"+color.ENDC)
sys.exit(0)
except urllib2.HTTPError:
print (color.BOLD+color.Y+"Error, Retry Later ! (Urllib2 HTTPError)"+color.ENDC)
|