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.44 lib/rex/powershell.rb
rex-powershell-0.1.43 lib/rex/powershell.rb
rex-powershell-0.1.42 lib/rex/powershell.rb
rex-powershell-0.1.41 lib/rex/powershell.rb
rex-powershell-0.1.40 lib/rex/powershell.rb
rex-powershell-0.1.39 lib/rex/powershell.rb
rex-powershell-0.1.38 lib/rex/powershell.rb
rex-powershell-0.1.37 lib/rex/powershell.rb
rex-powershell-0.1.36 lib/rex/powershell.rb
rex-powershell-0.1.35 lib/rex/powershell.rb
rex-powershell-0.1.34 lib/rex/powershell.rb
rex-powershell-0.1.33 lib/rex/powershell.rb
rex-powershell-0.1.32 lib/rex/powershell.rb
rex-powershell-0.1.31 lib/rex/powershell.rb
rex-powershell-0.1.30 lib/rex/powershell.rb
rex-powershell-0.1.29 lib/rex/powershell.rb
rex-powershell-0.1.28 lib/rex/powershell.rb
rex-powershell-0.1.27 lib/rex/powershell.rb
rex-powershell-0.1.26 lib/rex/powershell.rb
rex-powershell-0.1.25 lib/rex/powershell.rb