VDB
KO
HIGH 8.6

GHSA-fh2f-xfxc-q9cc

openhole-server vulnerable to path traversal via URL-decoded request path

Quick fix

GHSA-fh2f-xfxc-q9cc — github.com/bablilayoub/openhole: upgrade to the fixed version with the command below.

go get github.com/bablilayoub/openhole@v0.1.2

Details

## Summary

openhole-server forwarded the URL-decoded request path (`r.URL.Path`) to tunnel clients instead of the original request-target. Percent-encoded dot-segments (`%2e`) and separators (`%2f`) were decoded to `../` and `/` before reaching the local service.

Go's ServeMux rejects literal `../` paths, but percent-encoded traversal sequences bypassed this and were delivered to backends as working path traversal.

## Impact

An unauthenticated remote attacker could read files outside the published web root on tunneled local services that resolve paths without canonicalization.

Example: - `/%2e%2e/secret.txt` → file outside web root - `/%2e%2e/%2e%2e/etc/passwd` → sensitive files

Encoded slashes (`/a%2fb`) could also bypass path-based access controls.

## Fix

v0.1.2 forwards `r.URL.EscapedPath()` on the server and preserves the request-target on the CLI client.

Users should upgrade both openhole-server and the openhole CLI to v0.1.2 or later.

Are you affected?

Enter the version of the package you're using.

Affected packages

Go / github.com/bablilayoub/openhole
Introduced in: 0 Fixed in: 0.1.2
Fix go get github.com/bablilayoub/openhole@v0.1.2

References