diff --git a/lib/rex/proto/smb/simpleclient.rb b/lib/rex/proto/smb/simpleclient.rb index 1cf10b4ca5..dfb4eaa679 100644 --- a/lib/rex/proto/smb/simpleclient.rb +++ b/lib/rex/proto/smb/simpleclient.rb @@ -157,9 +157,10 @@ EVADE = Rex::Proto::SMB::Evasions end def write_trans(data, offset=0) - # Payload is not being filled the the response !?!!? ack = self.client.trans_named_pipe(self.file_id, data) - @buff << ack['Payload'].v['Payload'] + doff = ack['Payload'].v['DataOffset'] + dlen = ack['Payload'].v['DataCount'] + @buff << ack.to_s[4+doff, dlen] end end