Path: blob/master/lib/rex/post/meterpreter/extensions/stdapi/fs/mount.rb
19591 views
# -*- coding: binary -*-12require 'rex/post/meterpreter/extensions/stdapi/stdapi'34module Rex5module Post6module Meterpreter7module Extensions8module Stdapi9module Fs1011class Mount1213# Used when matching against windows drive types14DRIVE_TYPES = [15:unknown,16:no_root,17:removable,18:fixed,19:remote,20:cdrom,21:ramdisk22]2324def initialize(client)25self.client = client26end2728def show_mount29request = Packet.create_request(COMMAND_ID_STDAPI_FS_MOUNT_SHOW)3031response = client.send_request(request)3233results = []3435response.each(TLV_TYPE_MOUNT) do |d|36results << {37name: d.get_tlv_value(TLV_TYPE_MOUNT_NAME),38type: DRIVE_TYPES[d.get_tlv_value(TLV_TYPE_MOUNT_TYPE)],39user_space: d.get_tlv_value(TLV_TYPE_MOUNT_SPACE_USER),40total_space: d.get_tlv_value(TLV_TYPE_MOUNT_SPACE_TOTAL),41free_space: d.get_tlv_value(TLV_TYPE_MOUNT_SPACE_FREE),42unc: d.get_tlv_value(TLV_TYPE_MOUNT_UNCPATH)43}44end4546results47end4849protected50attr_accessor :client # :nodoc:5152end5354end; end; end; end; end; end5556575859