Exemplo n.º 1
0
 def do_run(self, line):
     """Run all pocs, usage: run"""
     if self.check_target():
         logger.info('Sheep got a total of %d targets.' %
                     self.targets.qsize())
         self.import_pocs()
         self.mix_targets()
         try:
             runThreads(self.threadsun, self.poc_threads)
         except Exception, e:
             logger.error('Run error! %s' % e)
         table = PrettyTable()
         table.field_names = ["pocNmae", "target", "result"]
         table.padding_width = 1
         if not self.results:
             return
         toNum, sucNum = 0, 0
         for row in self.results:
             table.add_row(list(row))
             toNum += 1
             if row[2] == 'success':
                 sucNum += 1
         print
         logger.info("Result:")
         print table
         print "success : %d / %d " % (sucNum, toNum)
         self.set_record_files()
         self.results.clear()
Exemplo n.º 2
0
 def show_options(self, current_module):
     tb = PrettyTable()
     tb.set_style(PLAIN_COLUMNS)
     print(f'\nModule options ({current_module}):\n')
     tb.field_names = ['Name', 'Current Setting', 'Required', 'Description']
     tb.add_row(['----', '---------------', '--------', '-----------'])
     for key in sorted(self.option.keys()):
         tb.add_row([
             key,
             self.get_options(key), self.option[key]['Required'],
             self.option[key]['Description']
         ])
     # print('Name\t\tCurrent Setting                                       \t\t\tRequired\t\tDescription')
     # print('----\t\t---------------                                       \t\t\t--------\t\t-----------')
     # for key in sorted(self.option.keys()):
     #     print('{0:<4}\t\t{1:<55}\t\t\t{2:<8}\t\t{3:<11}'.format(key, self.get_options(key), self.option[key]["Required"], self.option[key]["Description"]))
     # #
     # Name = 4
     # C_Set = 15
     # Required = 8
     # Description = 11
     # for key in sorted(self.option.keys()):
     # print('%s%s\n' % ((key if len(key) == Name else key + ' ' * (len(key) -4)), (self.get_options(key) if len(self.get_options(key)) == C_Set else self.get_options(key) + ' ' * (15 - len(self.get_options(key))))))
     # print('%s' % (self.get_options(key) if len(self.get_options(key)) == C_Set else self.get_options(key) + ' ' * (15 - len(self.get_options(key)))))
     tb.align = 'l'
     print(tb)
     print('\n')
Exemplo n.º 3
0
 def show_options(self):
     """Show option by table"""
     id = 1
     table = PrettyTable()
     print "\033[01;33m            =====%s=====    \033[0m" % self.name
     table.field_names = ["Id", "argName", "argValue", "description"]
     for k, v in self.readme.items():
         argValue= self.config[k]
         des =   getUnicode(v)
         table.add_row([id, k, argValue, v])
     print table
def list_style(items):
    print('\n')
    tb = PrettyTable()
    tb.set_style(PLAIN_COLUMNS)
    tb.field_names = ['Name', 'Module', 'Description']
    tb.add_row(['----', '------', '-----------'])
    for i in items:
        _ = list(i)
        # print(_)
        tb.add_row(_)

    tb.align = 'l'
    print(tb)
    print('\n')
Exemplo n.º 5
0
 def show_options(self):
     """Show option by table"""
     ipDec = "target ip/mask, usage: set = 127.0.0.1/24"
     fileDec = "target file, Please put the DATA directory.  ussge: set file = target.txt"
     urlDec = "target url. usage: set url = www.baidu.com"
     threadDec = "Default thread id 1, usage: set threads = 10"
     table = PrettyTable()
     print "\033[01;33m          ---------------------------------------------\033[0m"
     print "\033[01;32m          *******target(Choose one of the three)*******\033[0m"
     print "\033[01;33m          ---------------------------------------------\033[0m"
     table.field_names = ["Id", "argName", "argValue", "description"]
     table.add_row([1, 'ip', self.ip, ipDec])
     table.add_row([2, 'file', self.file, fileDec])
     table.add_row([3, 'url', self.url, urlDec])
     table.add_row([4, 'threads', self.threadsun, threadDec])
     print table
def search_style(result):
    tb = PrettyTable()
    tb.set_style(PLAIN_COLUMNS)
    tb.field_names = ['Name', 'Module']
    tb.add_row(['----', '------'])
    if result:
        for i in result:
            if type(i) == tuple:
                tb.add_row([i[0], i[1]])
            elif type(i) == list:
                tb.add_row([i[0][0], i[0][1]])

        tb.align = 'l'
        print(tb)
    else:
        return None
Exemplo n.º 7
0
 def show_options(self):
     """Show option by table"""
     table = PrettyTable()
     print "\033[01;33m            =====Detect subdomain=====    \033[0m"
     table.field_names = ["Id", "argName", "argValue", "description"]
     table.add_row(
         [1, "domain", self.domain, "To detect for a domain name"])
     table.add_row([
         2, "full_scan", self.full_scan,
         "Full scan, a large NAMES FILE will be used during the scan, default=False"
     ])
     table.add_row([
         3, "i", self.i,
         "Ignore domains pointed to private IPs, default=False"
     ])
     table.add_row([
         4, "output", self.output,
         "Output file name. default is  data/subdomain/{target}.txt"
     ])
     print table