diff --git a/lib/rex/proto/http/client_request.rb b/lib/rex/proto/http/client_request.rb index 7467ff1a37..1ab9adcd46 100644 --- a/lib/rex/proto/http/client_request.rb +++ b/lib/rex/proto/http/client_request.rb @@ -137,12 +137,16 @@ class ClientRequest opts['vars_post'].each_pair do |var,val| var = var.to_s - val = val.to_s - - pstr << '&' if pstr.length > 0 - pstr << (opts['encode_params'] ? set_encode_uri(var) : var) - pstr << '=' - pstr << (opts['encode_params'] ? set_encode_uri(val) : val) + unless val.is_a?(Array) + val = [val] + end + val.each do |v| + v = v.to_s + pstr << '&' if pstr.length > 0 + pstr << (opts['encode_params'] ? set_encode_uri(var) : var) + pstr << '=' + pstr << (opts['encode_params'] ? set_encode_uri(v) : v) + end end else if opts['encode']