Sha256: 60b7e15243f34bb374c440461c12163dace901e47fe59d51ae87bad9f7a41dfc

Contents?: true

Size: 1.74 KB

Versions: 65

Compression:

Stored size: 1.74 KB

Contents

# -*- coding: binary -*-
require 'rex/powershell/version'
require 'rex/powershell/payload'
require 'rex/powershell/output'
require 'rex/powershell/parser'
require 'rex/powershell/obfu'
require 'rex/powershell/param'
require 'rex/powershell/function'
require 'rex/powershell/script'
require 'rex/powershell/psh_methods'
require 'rex/powershell/command'


module Rex
  module Powershell
    #
    # Reads script into a Powershell::Script
    #
    # @param script_path [String] Path to the Script File
    #
    # @return [Script] Powershell Script object
    def self.read_script(script_path)
      Rex::Powershell::Script.new(script_path)
    end

    #
    # Insert substitutions into the powershell script
    # If script is a path to a file then read the file
    # otherwise treat it as the contents of a file
    #
    # @param script [String] Script file or path to script
    # @param subs [Array] Substitutions to insert
    #
    # @return [String] Modified script file
    def self.make_subs(script, subs)
      if ::File.file?(script)
        script = ::File.read(script)
      end

      subs.each do |set|
        script.gsub!(set[0], set[1])
      end

      script
    end

    #
    # Return an array of substitutions for use in make_subs
    #
    # @param subs [String] A ; seperated list of substitutions
    #
    # @return [Array] An array of substitutions
    def self.process_subs(subs)
      return [] if subs.nil? or subs.empty?
      new_subs = []
      subs.split(';').each do |set|
        new_subs << set.split(',', 2)
      end

      new_subs
    end

    #
    # Converts a raw string to a powershell byte array
    #
    def self.to_powershell(str, name = "buf")
      return Rex::Powershell::Script.to_byte_array(str, name)
    end
  end
end

Version data entries

65 entries across 65 versions & 1 rubygems

Version Path
rex-powershell-0.1.64 lib/rex/powershell.rb
rex-powershell-0.1.63 lib/rex/powershell.rb
rex-powershell-0.1.62 lib/rex/powershell.rb
rex-powershell-0.1.61 lib/rex/powershell.rb
rex-powershell-0.1.60 lib/rex/powershell.rb
rex-powershell-0.1.59 lib/rex/powershell.rb
rex-powershell-0.1.58 lib/rex/powershell.rb
rex-powershell-0.1.57 lib/rex/powershell.rb
rex-powershell-0.1.56 lib/rex/powershell.rb
rex-powershell-0.1.55 lib/rex/powershell.rb
rex-powershell-0.1.54 lib/rex/powershell.rb
rex-powershell-0.1.53 lib/rex/powershell.rb
rex-powershell-0.1.52 lib/rex/powershell.rb
rex-powershell-0.1.51 lib/rex/powershell.rb
rex-powershell-0.1.50 lib/rex/powershell.rb
rex-powershell-0.1.49 lib/rex/powershell.rb
rex-powershell-0.1.48 lib/rex/powershell.rb
rex-powershell-0.1.47 lib/rex/powershell.rb
rex-powershell-0.1.46 lib/rex/powershell.rb
rex-powershell-0.1.45 lib/rex/powershell.rb