ProcRoute: Process-Scoped Authorization of Split-Tunnel Routes
Arul Thileeban Sagayam

TL;DR
ProcRoute enhances VPN/ZTNA security by restricting internal route access to authorized applications, preventing malicious processes from exploiting broad route permissions, with a formal model and efficient Linux implementation.
Contribution
It introduces ProcRoute, a novel system that models route access as an access-control problem, providing process-scoped internal route restrictions in Linux.
Findings
ProcRoute matches WireGuard performance and is 13% faster than nftables cgroup-matching.
It scales to 5,000 prefixes with sub-millisecond revocation latency.
Microbenchmarks show low overhead and effective blocking of unauthorized attempts.
Abstract
In most split-tunnel VPN/ZTNA deployments, installing an internal route authorizes the entire device, not a specific application, to use it. An unprivileged malicious process can therefore reach internal services by reusing routes intended for corporate applications. We present ProcRoute, a system that restricts internal-route access to explicitly authorized applications. ProcRoute models route access as an access-control problem: application identities are principals, destination prefixes with port and protocol constraints are resources, and a total, default-deny decision function mediates every connect() and UDP sendmsg() to an internal destination. Processes without a grant retain external access but are denied internal routes under our threat model. We describe ProcRoute's formal model, a Linux prototype built on cgroup v2 and eBPF socket-address hooks, and two complementary…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
