<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: amitlimaye</title><link>https://news.ycombinator.com/user?id=amitlimaye</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 16 Apr 2026 19:39:11 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=amitlimaye" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by amitlimaye in "Rewriting Every Syscall in a Linux Binary at Load Time"]]></title><description><![CDATA[
<p>Good question. I didn't cover this in the post — the binary doesn't run on the host kernel directly. It runs inside a lightweight KVM-based VM with no operating system. The shim is the only thing handling syscalls inside the guest. So strace on the host wouldn't see anything — no syscalls reach the host kernel from the guest. From the host side, the only visible activity is the hypervisor process making syscalls on behalf of the guest.<p>Inside the guest, there's no kernel to attach strace to — the shim IS the syscall handler. But we do have full observability: every syscall that hits the shim is logged to a trace ring buffer with the syscall number, arguments, and TSC timestamp. It's more complete than strace in some ways — you see denied calls too, with the policy verdict, and there's no observer overhead because the logging is part of the dispatch path.<p>So existing tools don't work, but you get something arguably better: a complete, tamper-proof record of every syscall the process attempted, including the ones that were denied before they could execute.
I'll publish a follow-on tomorrow that details how we load and execute this rewritten binary and what the VMM architecture looks like.</p>
]]></description><pubDate>Tue, 14 Apr 2026 04:06:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47761117</link><dc:creator>amitlimaye</dc:creator><comments>https://news.ycombinator.com/item?id=47761117</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47761117</guid></item></channel></rss>