Пример #1
0
 def printResults(self):
     lenres = len(self.fuzzResponse)
     if lenres > 0:
         from pptable import indent, wrap_onspace
         width = 60
         labels = ('Index', 'Fuzz response', 'Probe response')
         rows = list()
         for index in sorted(self.fuzzResponse):
             rows.append((str(index), self.fuzzResponse[index],
                          self.probeResponse[index]))
         if self.options.file_name:
             target = open(self.options.file_name, 'w')
             target.write(
                 indent([labels] + rows,
                        hasHeader=True,
                        prefix='| ',
                        postfix=' |',
                        wrapfunc=lambda x: wrap_onspace(x, width)))
             target.close()
             print "Find results at file: <" + self.options.file_name + ">"
         else:
             print indent([labels] + rows,
                          hasHeader=True,
                          prefix='| ',
                          postfix=' |',
                          wrapfunc=lambda x: wrap_onspace(x, width))
         if self.options.audit_file_name:
             print "Find audit index at file: <" + self.options.audit_file_name + ">"
Пример #2
0
 def print_stats(self, number=None):
     labels= ('id', 'trials', '+/-', 'pos.%', 'mean', 'min', 'max')
     rows = []
     for id, md in self.output_generator(number):
         rows.append((str(id),
                      str(len(md['strategies'])), 
                      str("%s/%s" % (len(md['positives']), len(md['negatives']))),
                      str(md['pos']),    
                      str(round(md['avg_delta'], 3)),
                      str(round(md['min_delta'], 3)), 
                      str(round(md['max_delta'], 3)))) 
     print indent([labels] + rows, hasHeader=True, justify='right')
Пример #3
0
 def print_stats(self, number=None):
     labels= ('id', 'l/s', 'delta', 'orders', 'longs', 'shorts')
     rows = []
     for id, s in self.output_generator(number):
         long_signals = [x for x in s['strategy_args'] if x[0].startswith('long')]
         short_signals = [x for x in s['strategy_args'] if x[0].startswith('short')]
         rows.append((str(id),
                      "%s/%s" % (str(len(long_signals)), str(len(short_signals))), 
                      str(s['delta']), 
                      str(s['orders']), 
                      str(s['longs']), 
                      str(s['shorts'])))
     print indent([labels] + rows, hasHeader=True, justify='right')
Пример #4
0
	def printResults(self):
		lenres = len(self.fuzzResponse)
		if lenres > 0:
			from pptable import indent,wrap_onspace
			width = 60
			labels = ('Index','Fuzz response','Probe response')
			rows = list()
			for index in sorted(self.fuzzResponse):
				rows.append((str(index),self.fuzzResponse[index],self.probeResponse[index]))
			if self.options.file_name:
				target = open (self.options.file_name, 'w')
				target.write(indent([labels]+rows,hasHeader=True, prefix='| ', postfix=' |',wrapfunc=lambda x: wrap_onspace(x,width)))
				target.close()
				print "Find results at file: <"+self.options.file_name+">"
			else:
				print indent([labels]+rows,hasHeader=True, prefix='| ', postfix=' |',wrapfunc=lambda x: wrap_onspace(x,width))
			if self.options.audit_file_name :
				print "Find audit index at file: <"+self.options.audit_file_name +">"
Пример #5
0
def getasciitable(labels,db,resdb=None,width=60):
    from pptable import indent,wrap_onspace                        
    rows = list()
    for k in db.keys():
            cols = [k,db[k]]
            if resdb is not None:
                if resdb.has_key(k):
                    cols.append(resdb[k])
                else:
                    cols.append('[not available]')
            rows.append(cols)
    o = indent([labels]+rows,hasHeader=True,
        prefix='| ', postfix=' |',wrapfunc=lambda x: wrap_onspace(x,width))
    return o
def getasciitable(labels, db, resdb=None, width=60):
    from pptable import indent, wrap_onspace
    rows = list()
    for k in db.keys():
        cols = [k, db[k]]
        if resdb is not None:
            if resdb.has_key(k):
                cols.append(resdb[k])
            else:
                cols.append('[not available]')
        rows.append(cols)
    o = indent([labels] + rows,
               hasHeader=True,
               prefix='| ',
               postfix=' |',
               wrapfunc=lambda x: wrap_onspace(x, width))
    return o
Пример #7
0
                    open(os.path.join(exportpath, 'lastpasswd.pkl'), 'w'))
                logging.debug('logged last position %s' %
                              sipvicious.crackargs.tell())
        except IOError:
            logging.warn('could not log the last tried password')
    # display results
    if not options.quiet:
        lenres = len(sipvicious.resultpasswd)
        if lenres > 0:
            logging.info("we have %s cracked users" % lenres)
            if (lenres < 400
                    and options.save is not None) or options.save is None:
                from pptable import indent, wrap_onspace
                width = 60
                labels = ('Extension', 'Password')
                rows = list()
                for k in sipvicious.resultpasswd.keys():
                    rows.append((k, sipvicious.resultpasswd[k]))
                print indent([labels] + rows,
                             hasHeader=True,
                             prefix='| ',
                             postfix=' |',
                             wrapfunc=lambda x: wrap_onspace(x, width))
            else:
                logging.warn("too many to print - use svreport for this")
        else:
            logging.warn("found nothing")
    end_time = datetime.now()
    total_time = end_time - start_time
    logging.info("Total time: %s" % total_time)
Пример #8
0
        try:
            if guessmode == 1:
                pickle.dump(sipvicious.nextuser,open(os.path.join(exportpath,'lastextension.pkl'),'w'))
                logging.debug('logged last extension %s' % sipvicious.nextuser)
            elif guessmode == 2:
                pickle.dump(sipvicious.guessargs.tell(),open(os.path.join(exportpath,'lastextension.pkl'),'w'))
                logging.debug('logged last position %s' % sipvicious.guessargs.tell())            
        except IOError:
            logging.warn('could not log the last extension scanned')
    # display results
    if not options.quiet:
        lenres = len(sipvicious.resultauth)
        if lenres > 0:
            logging.info("we have %s extensions" % lenres)
            if (lenres < 400 and options.save is not None) or options.save is None:
                from pptable import indent,wrap_onspace
                width = 60
                labels = ('Extension','Authentication')
                rows = list()
                for k in sipvicious.resultauth.keys():
                    rows.append((k,sipvicious.resultauth[k]))
                print indent([labels]+rows,hasHeader=True,
                    prefix='| ', postfix=' |',wrapfunc=lambda x: wrap_onspace(x,width))
            else:
                logging.warn("too many to print - use svreport for this")
        else:
            logging.warn("found nothing")
    end_time = datetime.now()
    total_time = end_time - start_time
    logging.info("Total time: %s" % total_time)