CollabVM Agent

Revision as of 22:26, 18 September 2022 by HolyNetworkAdapter (talk | contribs)

The CollabVM Agent is an extension to the CollabVM Server, which allows users to upload files to a virtual machine if enabled. There are two required files, the collab-vm-agent.dll and the collab-vm-loader.exe. The CollabVM Agent is open source.

Warning icon
The CollabVM Agent is not stable to use with current versions. We advise that you don't use this.

As of right now the CollabVM Agent is only supported in CollabVM Server 1.x, but support for CollabVM Server 2.0 is planned to be added.

As of now, it only supports File Uploads, but in the future it will support a Task List, a Recent Uploads list, and a list of pre-defined viruses to upload.

CollabVM Agent Requirements

  • Operating System: Windows XP Service Pack 2* or above.
    • The CollabVM Agent runs on Windows 98, Me, NT 4, 2000, and XP RTM-SP1 as well. However, there is currently a bug which is being investigated that prevents it from running properly (but nevertheless, it still runs). It will also work on ReactOS (but not on Wine). The Agent works on but is somewhat unstable on 64-bit operating systems.
  • 512 MB of RAM allocated to the VM. (The loader doesn't really take any RAM at all, but basic programs will probably need it.)

How to install the CollabVM Agent

  • Make sure the collab-vm-agent.dll is in your CollabVM Directory. It comes with the compiled releases. Alternatively, you can compile it yourself.
  • Install Windows XP Service Pack 2 or above onto a QEMU/KVM VM (the Loader doesn't need KVM, but the VM will be slow without it). The Agent currently does not run on Linux or Mac guests.
  • Install the SPICE Guest Tools onto the VM. Click allow if it prompts you. Restart if necessary.
  • Download the loader from here, or compile it yourself. (TIP: In Windows NT 4/2000/XP, it is impossible to kill any processes named csrss.exe with the default tools!)
  • Place it wherever. You can either place it in the Startup folder, or alternatively, you can also put it in the Windows folder or somewhere else and make a startup registry key pointing towards it.
  • (Windows Vista, 7, 8, 10 VMs) Disable User Account Control. The CollabVM Agent does not require admin itself, but most viruses don't work properly unless UAC is disabled. (There is no UAC on Windows XP or below, so this step is not necessary if you aren't running Vista or above.)
  • Go to your admin panel and make a new VM.
  • When creating your new VM, make sure of the following:
    • "Agent Enabled" is checked
    • "Agent Socket Type" is set to Local.
    • "Use Virtio" is checked.
    • "Agent Address" is blank.
    • "Agent Port" will have a random port assigned to it, just ignore it.
    • If you want the VM to reset if the Agent is killed or stops responding, make sure that "Restore After Heartbeat Timeout" is checked.
    • "Uploads Enabled" is checked. (The Agent will have other functions later, but right now, Uploads are the current feature.)
    • You can set Upload Cooldown Time and Max File Size to whatever you want. "Max File Size" is measured in bytes, so if you wanted 50 MB to be the upload limit for example, you'd set it to 51000000 bytes.
    • Max Filename Length can be set to whatever you want, but not over 255, as Windows does not support filenames more than 255 characters in length.

After this, the Agent should be working! If there are any issues, please contact the development team.

Other links

Tested environments

Windows 3.1 and below

Status: Doesn't work

Unless somebody else adds compatibility to 3.1 and below, it will never be supported.

Windows NT 3.5 and below

Status: Doesn't work

Requires newer API calls not present in NT 3.5 and below. Unless somebody else adds compatibility to 3.5 and below, it will not be supported.

Wine

Status: Doesn't work

Despite it working in ReactOS, it does not work in Wine at all. CreateFile will fail with Error 5 in Wine. Since there is no point in making it work with Wine anyway, it will not be supported.

Windows 9x (95, 98, Me)

Status: Currently broken

The CollabVM Agent successfully runs and loads on these operating systems, but does not currently work correctly due to a bug. This will be fixed in the future.

Windows NT 3.51, NT 4, 2000, XP RTM-SP1

Status: Currently broken

The CollabVM Agent successfully runs and loads on these operating systems, but does not currently work correctly due to a bug. This will be fixed in the future.

Does not run on Windows NT 3.51 or Windows NT 4 normally, due to a missing DLL. If the missing DLL is taken from a Windows 98 install, then it will run.

Windows Server 2003

Status: Currently broken

Same bug seems to affect Server 2003, but Server 2003 R2 works.

ReactOS 0.4

Status: Currently broken

The CollabVM Agent successfully runs, but again due to the mentioned bug above, it does not work correctly. This will be fixed in the future.

Windows XP SP2/SP3

Status: Works

The CollabVM Agent successfully runs, and file uploads work perfectly on Windows XP SP2 and SP3.

Windows Server 2003 R2

Status: Works

Recommended to use the latest Service Pack and disable IE enhanced security. Works fine. You should probably disable passwords also.

Windows XP x64 Edition SP2

Status: Works

The CollabVM Agent successfully runs, and file uploads work. The Agent is slightly unstable on 64-bit operating systems, but nothing crippling.

Windows Vista

Status: Works

Disable User Account Control for it to work properly.

Windows Vista x64

Status: Works

Disable User Account Control for it to work properly.

Windows Server 2008

Status: Works

Disable User Account Control for it to work properly. Also disabling IE Enhanced Security is recommended. You should probably disable passwords also.

Windows 7

Status: Works

Disable User Account Control for it to work properly.

Windows 7 x64

Status: Works

Disable User Account Control for it to work properly.

Windows Server 2008 R2

Status: Works

Disable User Account Control for it to work properly. Also disabling IE Enhanced Security is recommended. You should probably disable passwords also.

Windows 8.1 x64

Status: Works

Disable Windows Defender and User Account Control for it to work properly.

Windows Server 2012/Windows Server 2012 R2

Status: Works

Disable Windows Defender and User Account Control for it to work properly. Will work on both but Server 2012 R2 is recommended. You should probably disable passwords also.

Windows 10/11 x64

Status: Works

Disable Windows Defender and User Account Control for it to work properly.

Windows Server 2016

Status: Works

Disable Windows Defender and User Account Control for it to work properly. You should probably disable passwords also.

Windows Server 2019

Status: Works

Disable Windows Defender and User Account Control for it to work properly. You should probably disable passwords also.

Windows Server 2022

Status: Works

Disable Windows Defender and User Account Control for it to work properly. You should probably disable passwords also.

Other environments

Windows 7 PE

Status: Mostly works

The loader seemingly works fine in the Windows 7 PE. However it has had random crashes while running it and this is really not recommended since when PE runs out of memory it becomes extremely unstable and starts behaving bizarrely.

Betas

Windows "Nashville"

Status: Not working

Runs but has the same problem as Windows 9x

Windows "Neptune"

Status: Not working

Runs but has the same problem as Windows 2000

Windows "Whistler"

Status: Not working

Runs but has the same problem as Windows 2000

Windows "Longhorn"

Status: Working sometimes?

It has ran on a few builds of Longhorn. Some of them it runs properly and others it doesn't. Longhorn can also be ridiculously unstable sometimes so it is not recommended.

Windows 7 Beta

Status: Working

It has some stability problems, but it works.

Windows 8.1 "Blue"

Status: Working

It has some stability problems, but it works.