verboten

Crates.ioverboten
lib.rsverboten
version0.9.2
sourcesrc
created_at2021-03-07 10:19:48.226824
updated_at2021-05-03 11:40:10.997822
descriptionA service wrapper to start msvsmon in a hazardous mode.
homepage
repositoryhttps://github.com/openqrnch/verboten
max_upload_size
id365113
size38,085
qj (qrnch-jan)

documentation

README

verboten

If you've needed to attach a debugger to a process before login (while developing credential providers, Lsa modules, etc) you may have used remote debugging using msvsmon-as-service and Visual Studio.

Setting up msvsmon as a service can be a little fiddly. This crate is a simple service wrapper for msvsmon. It is intended to be maximally simple to use. This has the unfortunate side effect that it is maximally unsafe. Only run this on isolated machines.

Installation

Build verboten from crates.io:

cargo install verboten

.. or from the repository:

cargo build --release

(It will statically link the CRT, so don't worry about vcredist if you don't need it for other reasons).

Copy verboten.exe into the remote system. The location of it isn't really important.

Copy msvsmon.exe and its dependencies to the remote system.

On the remote system, install the service using:

verboten.exe --install <path and name of msvsmon.exe> <service name>

Example:

verboten.exe --install C:\Temp\x64\msvsmon.exe verboten

The installer will create a Parameters subkey under the service's registry subkey with some useful settings, in particular:

LogLevel can be set to error, warn, info, debug or trace. (Warning, some of the higher levels are very spammy).

Timeout can be set how long the msvsmon process will live before self-terminating.

The service will output its log to the Windows event log.

Commit count: 9

cargo fmt