Land #4302, zeroSteiner's fix getuid for the python meterpreter
commit
051d2f1c39
|
@ -675,8 +675,10 @@ def channel_open_stdapi_net_tcp_server(request, response):
|
|||
@meterpreter.register_function
|
||||
def stdapi_sys_config_getenv(request, response):
|
||||
for env_var in packet_enum_tlvs(request, TLV_TYPE_ENV_VARIABLE):
|
||||
pgroup = ''
|
||||
env_var = env_var['value'].translate(None, '%$')
|
||||
pgroup = bytes()
|
||||
env_var = env_var['value']
|
||||
env_var = env_var.replace('%', '')
|
||||
env_var = env_var.replace('$', '')
|
||||
env_val = os.environ.get(env_var)
|
||||
if env_val:
|
||||
pgroup += tlv_pack(TLV_TYPE_ENV_VARIABLE, env_var)
|
||||
|
@ -698,7 +700,9 @@ def stdapi_sys_config_getsid(request, response):
|
|||
|
||||
@meterpreter.register_function
|
||||
def stdapi_sys_config_getuid(request, response):
|
||||
if has_windll:
|
||||
if has_pwd:
|
||||
username = pwd.getpwuid(os.getuid()).pw_name
|
||||
elif has_windll:
|
||||
token = get_token_user(ctypes.windll.kernel32.GetCurrentProcess())
|
||||
if not token:
|
||||
return ERROR_FAILURE, response
|
||||
|
|
Loading…
Reference in New Issue