#!/usr/bin/env ruby # -*- coding: binary -*- module Rex module Post module Meterpreter module Extensions module Priv ### # # This class wraps a SAM hash entry. # ### class SamUser # # Initializes the class from a hash string like this: # # Administrator:500:aad3b435b51404eeaadfb435b51404ee:31d6cfe0d16de931b73c59d7e0c089c0::: # def initialize(hash_str) self.user_name, self.user_id, self.lanman, self.ntlm = hash_str.split(/:/) self.hash_string = hash_str end # # Returns the hash string that was supplied to the constructor. # def to_s hash_string end # # The raw hash string that was passed to the class constructor. # attr_reader :hash_string # # The username from the SAM database entry. # attr_reader :user_name # # The user's unique identifier from the SAM database. # attr_reader :user_id # # The LM hash. # attr_reader :lanman # # The NTLM hash. # attr_reader :ntlm protected attr_writer :hash_string, :user_name, :user_id, :lanman, :ntlm # :nodoc: end end; end; end; end; end