File tree Expand file tree Collapse file tree 1 file changed +5
-5
lines changed
lib/rex/exploitation/cmdstager Expand file tree Collapse file tree 1 file changed +5
-5
lines changed Original file line number Diff line number Diff line change @@ -67,18 +67,18 @@ def parts_to_commands(parts, opts)
67
67
#
68
68
def generate_cmds_decoder ( opts )
69
69
decoders = [
70
- "base64 --decode #{ @tempdir } #{ @var_encoded } .b64 " ,
71
- "openssl enc -d -A -base64 -in #{ @tempdir } #{ @var_encoded } .b64 " ,
72
- "python -c 'import sys; import base64; print base64.standard_b64decode(sys.stdin.read());' < #{ @tempdir } #{ @var_encoded } .b64 " ,
73
- "perl -MIO -e 'use MIME ::Base64; while (<>) { print decode_base64($_); }' < #{ @tempdir } #{ @var_encoded } .b64 "
70
+ "base64 --decode - " ,
71
+ "openssl enc -d -A -base64 -in /dev/stdin " ,
72
+ "python -c 'import sys, base64; print base64.standard_b64decode(sys.stdin.read());'" ,
73
+ "perl -MMIME ::Base64 -ne ' print decode_base64($_)' "
74
74
]
75
75
decoder_cmd = [ ]
76
76
decoders . each do |cmd |
77
77
binary = cmd . split ( ' ' ) [ 0 ]
78
78
decoder_cmd << "(which #{ binary } >&2 && #{ cmd } )"
79
79
end
80
80
decoder_cmd = decoder_cmd . join ( " || " )
81
- decoder_cmd = "(" << decoder_cmd << ") 2> /dev/null > #{ @tempdir } #{ @var_decoded } .bin"
81
+ decoder_cmd = "(" << decoder_cmd << ") 2> /dev/null > #{ @tempdir } #{ @var_decoded } .bin < #{ @tempdir } #{ @var_encoded } .b64 "
82
82
[ decoder_cmd ]
83
83
end
84
84
You can’t perform that action at this time.
0 commit comments