Metasploit mailing list archives

Re: return values from railgun


From: Carlos Perez <carlos_perez () darkoperator com>
Date: Wed, 1 Sep 2010 08:49:57 -0400

Here are the results of all message box types, just look for the returned hash de key of return and read the returned 
value

creturn_val = client.railgun.user32.MessageBoxA(0,"Hello","world","MB_OKCANCEL")
=> {"GetLastError"=>0, "return"=>2}
creturn_val['return']
=> 2
creturn_val['return'].class
=> Fixnum

Values for all messagebox types:


# Abort
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_ABORTRETRYIGNORE")
=> {"GetLastError"=>0, "return"=>3}
# Retry
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_ABORTRETRYIGNORE")
=> {"GetLastError"=>0, "return"=>4}
# Ignore
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_ABORTRETRYIGNORE")
=> {"GetLastError"=>0, "return"=>5}

# cancel
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_CANCELTRYCONTINUE")
=> {"GetLastError"=>0, "return"=>2}
# Try again
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_CANCELTRYCONTINUE")
=> {"GetLastError"=>0, "return"=>10}
# Continue
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_CANCELTRYCONTINUE")
=> {"GetLastError"=>0, "return"=>11}

# OK
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_HELP")
=> {"GetLastError"=>0, "return"=>1}
# Clicking on Help will do nothing

# OK
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_OK")
=> {"GetLastError"=>0, "return"=>1}


# OK
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_OKCANCEL")
=> {"GetLastError"=>0, "return"=>1}

# Cancel
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_OKCANCEL")
=> {"GetLastError"=>0, "return"=>2}

# Retry
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_RETRYCANCEL")
=> {"GetLastError"=>0, "return"=>4}
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_RETRYCANCEL")
#Cancel
=> {"GetLastError"=>0, "return"=>2}

# Yes
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_YESNO")
=> {"GetLastError"=>0, "return"=>6}
# No


# Yes
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_YESNOCANCEL")
=> {"GetLastError"=>0, "return"=>6}
# No
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_YESNOCANCEL")
=> {"GetLastError"=>0, "return"=>7}
# Cancel
client.railgun.user32.MessageBoxA(0,"Hello","world","MB_YESNOCANCEL")
=> {"GetLastError"=>0, "return"=>2}

client.railgun.user32.MessageBoxA(0,"Hello","world","MB_YESNO")
=> {"GetLastError"=>0, "return"=>7}



On Aug 31, 2010, at 7:58 PM, max wrote:

Hi there list, i tried to use railgun in a meterpreter script. Works
fine so far for opening a msgboxa but how do i get the return values
back from the api calls?

greetings

max
_______________________________________________
https://mail.metasploit.com/mailman/listinfo/framework

_______________________________________________
https://mail.metasploit.com/mailman/listinfo/framework


Current thread: