Skip to content

Latest commit

 

History

History
16 lines (10 loc) · 987 Bytes

README.md

File metadata and controls

16 lines (10 loc) · 987 Bytes

rustrace

Strace in Rust 🔍

strace is the system-call tracer, which traces the calls that a program makes into the kernel in order to interact with the outside world.

This code uses nix crate which is platform dependent, hence there's a dockerfile which you can use to run this code!

docker run -it --security-opt seccomp=unconfined <image_name>

Since, ptrace(the syscall that strace implementation uses) allows you to look at and modify the registers of a program(which is pretty shady IMO) you'd need to disable seccomp mode.

Inspired by strace in C and by Julia Evans' zine