From c1d021a7e8378d86ee233b6a91d5ec1fe9901dcb Mon Sep 17 00:00:00 2001 From: antisnatchor Date: Wed, 23 May 2012 15:01:02 +0100 Subject: [PATCH] Evasion: Fixed bug in scrambler. --- extensions/evasion/obfuscation/scramble.rb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/extensions/evasion/obfuscation/scramble.rb b/extensions/evasion/obfuscation/scramble.rb index 664673ca1..fda8c1aa5 100644 --- a/extensions/evasion/obfuscation/scramble.rb +++ b/extensions/evasion/obfuscation/scramble.rb @@ -18,24 +18,24 @@ module BeEF module Evasion class Scramble include Singleton - def execute(input, config) + @output = input to_scramble = config.get('beef.extension.evasion.scramble') to_scramble.each do |var, value| - key = config.get("beef.extension.evasion.scramble.#{var}") - if value == key + if var == value # Variables have not been scrambled yet mod_var = BeEF::Extension::Evasion::Helper::random_string(3) - input = input.gsub!(var,mod_var) + @output.gsub!(var,mod_var) config.set("beef.extension.evasion.scramble.#{var}",mod_var) print_debug "[OBFUSCATION - SCRAMBLER] string [#{var}] scrambled -> [#{mod_var}]" else # Variables already scrambled, re-use the one already created to maintain consistency - input = input.gsub!(var,value) + @output.gsub!(var,value) print_debug "[OBFUSCATION - SCRAMBLER] string [#{var}] scrambled -> [#{value}]" end + @output end - input + @output end end end