From 36523f520f2620f1fd92539a982ed855fa5d3208 Mon Sep 17 00:00:00 2001 From: Max Symonenko <40246850+sttlr@users.noreply.github.com> Date: Sat, 24 Jun 2023 10:15:40 +0300 Subject: [PATCH] Fix Timeout parameter in Peass Metasploit module time_out argument of cmd_exec function must be integer When user sets its own timeout, module execution stops, because there is no conversion of string to int. --- metasploit/peass.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/metasploit/peass.rb b/metasploit/peass.rb index 38dafa0..0f9626a 100644 --- a/metasploit/peass.rb +++ b/metasploit/peass.rb @@ -191,14 +191,14 @@ class MetasploitModule < Msf::Post cmd_utf16le = cmd.encode("utf-16le") cmd_utf16le_b64 = Base64.encode64(cmd_utf16le).gsub(/\r?\n/, "") - tmpout << cmd_exec("powershell.exe", args="-ep bypass -WindowStyle hidden -nop -enc #{cmd_utf16le_b64}", time_out=datastore["TIMEOUT"]) + tmpout << cmd_exec("powershell.exe", args="-ep bypass -WindowStyle hidden -nop -enc #{cmd_utf16le_b64}", time_out=datastore["TIMEOUT"].to_i) # If unix, then, suppose linpeas was loaded else cmd += "| #{decode_linpeass_cmd}" cmd += "| sh -s -- #{datastore['PARAMETERS']}" cmd += last_cmd - tmpout << cmd_exec(cmd, args=nil, time_out=datastore["TIMEOUT"]) + tmpout << cmd_exec(cmd, args=nil, time_out=datastore["TIMEOUT"].to_i) end print "\n#{tmpout}\n\n"