def do_show(self, arg): if arg == 'options': if PAYLOAD.has_key('poc'): opts = [] for i in PAYLOAD.poc.options.keys(): val = PAYLOAD.poc.options.get(i) if hasattr(val, '__iter__'): val = "Not Set" opts.append([i, val]) self.ui.help( title="Payload Options:", options= opts # [[i,[[j,""] for j in PAYLOAD.poc.options.get(i)]] for i in PAYLOAD.poc.options.keys()] ) if TARGET: self.ui.help( title="Target Options:", options= [[i,TARGET.get(i)] for i in TARGET.keys()] ) # print "======\nTarget:\n======" # for i in TARGET.keys(): # print u"{key} => {value}".format(key=i, value=TARGET.get(i)) else: Cmd.do_show(self, arg)
def do_show(self, arg): if arg == 'options': if PAYLOAD.has_key('poc'): opts = [] for i in PAYLOAD.poc.options.keys(): val = PAYLOAD.poc.options.get(i) if hasattr(val, '__iter__'): val = "Not Set" opts.append([i, val]) self.ui.help( title="Payload Options:", options=opts # [[i,[[j,""] for j in PAYLOAD.poc.options.get(i)]] for i in PAYLOAD.poc.options.keys()] ) if TARGET: self.ui.help(title="Target Options:", options=[[i, TARGET.get(i)] for i in TARGET.keys()]) # print "======\nTarget:\n======" # for i in TARGET.keys(): # print u"{key} => {value}".format(key=i, value=TARGET.get(i)) else: Cmd.do_show(self, arg)
def complete_set(self, text, line, begidx, endidx): if PAYLOAD: if len(line.split()) >= 2: if PAYLOAD.poc.options.has_key(line.split()[1]): opt = (PAYLOAD.poc.options.get(line.split()[1])) if hasattr(opt, '__iter__'): cache[line.split()[1]] = [] cache[line.split()[1]] = opt return [ i for i in cache.get(line.split()[1]) if i.startswith(text) ] elif cache.has_key(line.split()[1]): return [ i for i in cache.get(line.split()[1]) if i.startswith(text) ] else: pass if text: return [ i.upper() for i in PAYLOAD.poc.options.keys() + TARGET.keys() if i.upper().startswith(text.upper()) ] return [ i.upper() for i in PAYLOAD.poc.options.keys() + TARGET.keys() ] if text: return [ i.upper() for i in TARGET.keys() if i.upper().startswith(text.upper()) ] return [i.upper() for i in TARGET.keys()]
def do_set(self, arg): if arg.split()[0].upper() in PAYLOAD.poc.options.keys(): if len(arg.split()) == 2: PAYLOAD.poc.options.update({arg.split()[0].upper(): ''.join(arg.split()[1:])}) elif arg.split()[0].upper() in TARGET.keys(): if len(arg.split()) == 2: TARGET.update({arg.split()[0].upper(): ''.join(arg.split()[1:])}) else: Cmd.do_set(self, arg)
def do_set(self, arg): if arg.split()[0].upper() in PAYLOAD.poc.options.keys(): if len(arg.split()) == 2: PAYLOAD.poc.options.update( {arg.split()[0].upper(): ''.join(arg.split()[1:])}) elif arg.split()[0].upper() in TARGET.keys(): if len(arg.split()) == 2: TARGET.update( {arg.split()[0].upper(): ''.join(arg.split()[1:])}) else: Cmd.do_set(self, arg)
def complete_set(self, text, line, begidx, endidx): if PAYLOAD: if len(line.split())>=2: if PAYLOAD.poc.options.has_key(line.split()[1]): opt = (PAYLOAD.poc.options.get(line.split()[1])) if hasattr(opt, '__iter__'): cache[line.split()[1]]=[] cache[line.split()[1]] = opt return [i for i in cache.get(line.split()[1]) if i.startswith(text)] elif cache.has_key(line.split()[1]): return [i for i in cache.get(line.split()[1]) if i.startswith(text)] else: pass if text: return [i.upper() for i in PAYLOAD.poc.options.keys() + TARGET.keys() if i.upper().startswith(text.upper())] return [i.upper() for i in PAYLOAD.poc.options.keys() + TARGET.keys()] if text: return [i.upper() for i in TARGET.keys() if i.upper().startswith(text.upper())] return [i.upper() for i in TARGET.keys()]