Advertisement
Guest User

Kyuubi R-admin Buster (VIRkid) [Python]

a guest
Jun 24th, 2014
634
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.62 KB | None | 0 0
  1. #StaY MaD
  2. #Reverse IP Mass Admin finder
  3. #Kyubi referrence : #http://img1.wikia.nocookie.net/__cb20120730083419/powerlisting/images/1/1a/Kyuubi-fire-chakra.jpg
  4. #http://naruto.wikia.com/wiki/Kurama
  5. #Have fun     :::: MaDLeeTs.com ::::
  6. import urllib2,urllib,socket,argparse,sys,os,threading,Queue,re,httplib
  7.  
  8. #list of admins , Extend it if you want more results results
  9.  
  10. getx=['/admin/','/administrator/','/admin-cp/','/webways-admin/','/admin_login/']
  11.  
  12. found=[]
  13. #Queue
  14.  
  15. q=Queue.Queue()
  16.  
  17. #parser
  18. parser=argparse.ArgumentParser(__file__,description="Reverse IP admin finder ./VIRkid @MaDLeeTs")
  19. parser.add_argument("--timeout","-t", help="Custom connection timeout",type=float,default=2.0)
  20. parser.add_argument("--target","-u", help="Specify the target URL/IP")
  21. parser.add_argument("--proxy","-p",help="Proxy e.g 127.0.0.1:8080 ")
  22. parser.add_argument("--thrd","-w",help="Number of threads",type=int,default=2)
  23. args=parser.parse_args()
  24. #cleaner
  25. if sys.platform == "linux" or sys.platform == "linux2":
  26.     cl = "clear"
  27. else:
  28.     cl="cls"
  29. os.system(cl)
  30. def banner():
  31.    
  32.     print "\t\t*********************************************"
  33.     print "\t\t*                                           *"
  34.     print "\t\t*        Kyuubi R-admin Buster              *"                                      
  35.     print "\t\t*             .:VIRkid:.                    *"
  36.     print "\t\t*       Usage: python script.py -help       *"
  37.     print "\t\t*     ali ahmady , pHaNtOm_X ,Ch3rn0by1     *"
  38.     print "\t\t*********************************************"
  39. banner()
  40.  
  41. def stormer(q,getx):
  42.     try:
  43.         log=open('sites.txt','w')
  44.         for adm in getx:
  45.             while not q.empty():
  46.                 site=q.get(block=True, timeout=2)
  47.            
  48.            
  49.                 cn=urllib.urlopen('http://'+site+adm)
  50.                
  51.                 if cn.getcode()==404:
  52.                     pass
  53.                 else:
  54.                    
  55.                     rsp=cn.read()
  56.                     rx=re.findall('type="Password"',rsp,re.I)
  57.                    
  58.                    
  59.                    
  60.                    
  61.                     if  len(rx) ==1:
  62.                    
  63.                         print '[+] %s'%site+adm
  64.                        
  65.                        
  66.                         found.append(site+adm)
  67.                     else:
  68.                                
  69.                         pass
  70.                
  71.                 q.task_done()
  72.                
  73.            
  74.     except(socket.error,IOError,httplib.BadStatusLine):
  75.         pass
  76.     finally:
  77.         for uri in found:
  78.             log.write(uri+'\n')
  79.         log.close()
  80.  
  81.  
  82.  
  83.  
  84. def killa(nom):
  85.            
  86.     for i in xrange(nom):
  87.         thread=threading.Thread(target=stormer,args=(q,getx,))
  88.         thread.start()
  89.     thread.join()
  90. #target filter
  91. try:
  92.     target=args.target
  93.     if target[-1]=='/':
  94.         target=target.replace(target[-1],"")
  95.         target=target.replace("http://","")
  96.        
  97.  
  98.     yg=open('list.txt','w')
  99.     target=socket.gethostbyname(target)
  100.     print "\n"+"-"*25
  101.     print 'Target : %s' %target
  102.     print "-"*25
  103.     #proxy
  104.     proxy=args.proxy
  105.     if proxy:
  106.         opener=urllib2.build_opener(
  107.         urllib2.HTTPHandler(),
  108.         urllib2.HTTPSHandler(),
  109.         urllib2.ProxyHandler({'http':'http://'+proxy}))
  110.         urllib2.install_opener(opener)
  111.     #request
  112.     url = "http://domains.yougetsignal.com/domains.php"
  113.     useragent = "Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Firefox/24.0"
  114.     postdata = {'remoteAddress':target,'key':''}
  115.     postdata = urllib.urlencode(postdata)
  116.    
  117.     request = urllib2.Request(url, postdata)
  118.    
  119.     request.add_header("User-Agent", useragent)
  120.    
  121.     result = urllib2.urlopen(request)
  122.    
  123.     #reading youget response
  124.     dom=result
  125.     dom=dom.read()
  126.     #filter
  127.     dom=dom.replace("[","").replace("]","").replace("\"\"","").replace(", ,",",").replace("{","").replace("}","").replace(", ",",").replace("'","").        replace(":",",").replace('"','').replace("1","")
  128.     dom=dom
  129.     dom=str(dom)
  130.     #stripper ;)
  131.     dom=dom.split(",",1000000)
  132.     domf=dom[15:]
  133.     l=len(domf)
  134.     l=l-1
  135.     while l:
  136.         if l==-1:
  137.             print "[-]Reverse IP limit reached"
  138.             break
  139.         print "-"*25
  140.         print "[+] Domain list fetch complete \n[+] Domain count : %s"%l
  141.         print "-"*25
  142.         #writer
  143.         with open('list.txt','w') as yg:
  144.             for each in domf:
  145.                 yg.write(each+'\n')
  146.         #REverse IP COmplete
  147.         if proxy:
  148.             print "-"*25+'\n'+'Proxy : %s'%proxy+'\n'+"-"*25
  149.         if args.thrd:
  150.             print "-"*25+'\n'+'Threads: %s'%args.thrd+'\n'+"-"*25
  151.         if args.timeout:
  152.             print "-"*25+'\n'+'Timeout: %s Seconds'%args.timeout+'\n'+"-"*25
  153.         #Start of Admin buster
  154.        
  155.         lstx=open('list.txt','r')
  156.         sites=lstx.readlines()
  157.         print"\n"+"-"*25
  158.         print ' Rsp | \tURL'
  159.         print '-'*25
  160.         socket.setdefaulttimeout(args.timeout)
  161.         for each in sites:
  162.             each=each.replace("\n","").replace("\r","")
  163.        
  164.             q.put(each)
  165.         break
  166.  
  167.     while not q.empty():
  168.         killa(args.thrd)
  169. except TypeError:
  170.     print "[-] NO target specified"
  171. except socket.gaierror:
  172.     print "[-]NOPE WRONG URL"
  173. except KeyboardInterrupt:
  174.     print "[-] Abort signal Detected"
  175. except httplib.BadStatusLine:
  176.     print "[-] Something went wrong try again or let it go"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement