Skip to content

Security: wosoolsoft/WinProbe

SECURITY.md

Security Policy

Reporting a vulnerability

Please do not open a public issue for a security problem.

Report it privately through GitHub: Report a vulnerability.

Include what the issue allows an attacker to do, the steps to reproduce it, and the affected version or commit. You will get an acknowledgement within a few days.

What WinProbe can access

WinProbe is an automation tool, and it is worth being explicit about its reach so you can reason about where it is safe to run.

When attached to a target process, WinProbe can:

  • Read the full UI tree, including text in fields the user has typed — passwords in a PasswordBox are masked by UI Automation, but plain text fields are not.
  • Capture window contents as images, including windows that are minimised or obscured when a capture backend supports it.
  • Send input — clicks, text, and keyboard shortcuts — without the window holding foreground focus.
  • Persist recordings to disk. Recorded scripts store the parameters passed to each tool, so a recorded fill_field keeps the literal text that was typed.

None of this is privileged: WinProbe uses public Windows UI Automation and Win32 APIs and cannot reach processes the invoking user could not already automate. It crosses no security boundary that the user does not already stand on.

Practical guidance

  • Treat recordings as sensitive. They may contain whatever was typed during capture. WINPROBE_RECORDINGS_DIR controls where they are written; the default directory is git-ignored, but review before sharing a script.
  • Treat screenshots as sensitive for the same reason.
  • Never commit credentials. The test suites read them from WINPROBE_E2E_* environment variables precisely so they stay out of the repository.
  • Run against test environments rather than production systems holding real customer data.
  • The Test Agent is opt-in. WinProbe connects to a named pipe only if the target application chooses to host one. Any application exposing that pipe is offering its rendered window contents to whatever can open it — do not host an agent in a production build.

Supported versions

The project is pre-1.0. Fixes land on main; there are no maintained release branches yet.

There aren't any published security advisories