Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
t3code-abspath-host-read — T3 Code 61c3794c local path leftover. A paired filesystem:read client can open host files by absolute or ~/ path. Writes stay in the workspace. Loopback lab. | Kitploit
Tools/GitHubGitHub/abraxas/t3code-abspath-host-read
Vulnerability AnalysisCode AnalysisWeb Application ExploitationPenetration TestingLabs & Practice
GitHubabraxas/t3code-abspath-host-read

t3code-abspath-host-read

T3 Code 61c3794c local path leftover. A paired filesystem:read client can open host files by absolute or ~/ path. Writes stay in the workspace. Loopback lab.

View Repository
1 day agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

Abraxas Labs - t3code-abspath-host-read

t3code-abspath-host-read

You pair a phone or a second machine to T3 Code so it can open project files. That same grant can open your SSH key. The file-read API takes an absolute path or a ~/ path and skips the workspace fence that writes still honor. Relative ../ stays blocked. A read-only MCP agent does not get this grant.

Class: Path leftover Reach: Local (paired filesystem:read; also a paired phone or browser if the owner granted that scope)

T3 Code 61c3794c - Ping

IDno CVE yet
ClassPath leftover
ReachLocal (paired client holding filesystem:read)
CWECWE-22 / CWE-73
CVSSMedium: 6.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
ProductT3 Code
Affected61c3794c32b0eeebfac09add43e403618c65d2d7 (after v0.1.6)
Authpaired or standard-grant session with filesystem:read
LicenseGNU Affero GPL v3.0
Labloopback Vitest against WorkspaceFileSystem; no production hosts

What an attacker can do

Needs a credential that already holds filesystem:read. Default pairing includes that scope, and also terminal:operate. Guest shares do not reach this RPC. MCP read-only is orchestration:read only.

PrivilegeMethod / sinkRecon / integrity / availabilityLab-proven or inferred
Read a host file by absolute pathWorkspaceFileSystem.readFile / RPC projectsReadFile with relativePath set to an absolute pathRecon (host file)Lab-proven. Witness t3f01w8k2 returned
Read a host file by ~/same sink with relativePath ~/.lab-secret under a lab HOMEReconLab-proven. Same witness
Mint a signed asset URL for an absolute media pathassetsCreateUrl media-fileReconInferred from source. Not this lab's oracle
Negative control: relative ../readFile with a path that walks out of the workspacen/aLab-proven. WorkspacePathOutsideRootError
Negative control: absolute writewriteFile with the same absolute secret pathn/aLab-proven. refused, secret unchanged
Negative control: MCP read-onlymcpClientScopes("read-only") vs projectsReadFilen/aLab-proven. denied

Stays closed on this leftover

AxisMethod / sinkWhy it is closed
IntegrityWorkspace writes by absolute pathresolveWriteTarget contains to the real root and refuses .git
ReconRelative ../ readresolveRelativePathWithinRoot
ReconT3 secretsDir and stateDir/*.sqliteisServerInternalPath
ReconGuest share HTTPGuest tokens never enter SessionStore
ReconMCP read-only /mcpno filesystem:read
IntegrityUnauthenticated loopback RPCEnvironmentAuthPolicy is not unsafe-no-auth

Product docs (docs/internals/environment-auth.md) describe filesystem:read as a host-read grant. The UI still sends workspace-relative paths. The server accepts input a legitimate client does not produce. Standard pairing also includes a shell.

How I found it

I pinned pingdotgg/t3code 61c3794c. resolveReadTarget expands ~/, realpaths an absolute path, and returns it with no isInsideRealRoot. Writes do that check. Public issue #316 closed unconstrained cwd on writes only.

Wrong turns: treating MCP read-only as a caller of projectsReadFile (it is not); treating this as an unauthenticated leftover (it is a paired grant).

Lab

python3 t3code-abspath-host-read-Abraxas-Labs.py

or:

cd lab
./run.sh

Clones pingdotgg/t3code at 61c3794c into lab/src, installs with pnpm, plants a witness under lab-home/.lab-secret, and runs Vitest. Loopback only. Node 26 and pnpm 12.

IOC abs-read=1
IOC home-read=1
IOC rel-escape=0
IOC write-abs=refused
IOC mcp-readonly-filesystem=denied
IOC secret-unchanged=1
SUCCESS T3-F01-ABSPATH t3f01w8k2

The fix

After realpath, require the target inside realpath(cwd) the way resolveWriteTarget already does. Call knownWorkspaces.assertContains(input.cwd) on read and metadata. Stop minting media-file URLs for absolute paths without a project. Widen isServerInternalPath to all of stateDir.

References

  • github.com/pingdotgg/t3code 61c3794c32b0eeebfac09add43e403618c65d2d7
  • WorkspaceFileSystem.resolveReadTarget
  • CWE-22 · CWE-73

License

GNU Affero GPL v3.0. See LICENSE. Loopback lab only. No warranty.

Abraxas Labs [email protected]

Please credit CVE to Abraxas Labs.

Download Tool