TL;DR; I created eBPF-based software in Rust that can monitor the Process lifecycle.π¦π π process 101708: root: /usr/sbin/iptables π₯ exit 101708: root: /usr/sbin/iptables π process 101705: yukinakamura: /usr/bin/cat π₯ exit 101705: yukinakamura: /usr/bin/cat π process 101758: yukinakamura: /usr/bin/sed π₯ exit 101758: yukinakamura: /usr/bin/sed MotivationScopeArchitecture OverviewHow to RunPrerequisitesClone the RepositoryGenerate Struct codesBuild and Run eBPF Programs… Continue reading Tetragon-mini by Rust: eBPF-based process monitoring
Tag: technology
eBPF Tail Calls with Rust Aya
TL;DR This guide demonstrates how to implement eBPF Tail Calls using Rust's Aya. π¦π Introduction: Tail CallsRun eBPF Tail Calls programPrerequisitesClone the RepositoryGenerate Struct codesBuildRunCheck logsCheck eBPF Programs and Maps in the KerneleBPF ProgramsLoaded eBPF ProgramsAttached eBPF ProgramseBPF Map for tail callsRust Code HighlightsProgramArray SetupTail CallsState Sharing with PerCpuArrayReferencesWrap up Introduction: Tail Calls Tail calls… Continue reading eBPF Tail Calls with Rust Aya
Writing eBPF Kprobe Program with Rust Aya
TL;DR In this post, Iβll walk you through an example of an eBPF Kprobe program using Aya with Rust. π¦π Introduction: KprobesRun eBPF Kprobe tracing programPrerequisitesCheck available KprobesClone the RepositoryGenerate Structs codesBuildRunTestCheck eBPF Program in the KernelCheck with bpftool(Optional) Check with bpftopArgument Handling in KprobesHow to Identify Argument TypesGenerate Struct Codes by aya-toolRead values from… Continue reading Writing eBPF Kprobe Program with Rust Aya
Tetragon Process Lifecycle Observation: Tetragon Agent Part
TL;DR In this post, I explain how the Tetragon Agent reads process lifecycle data from the eBPF Map and sends it to clients.π Process lifecycle data flow IntroductionObserver Reading Process Lifecycle Data from eBPF MapRead data from eBPF MapDeserialization of Process Lifecycle DataEvent type (operation types)DeserializationNotify Events to ListenersProcessManager Passes Data to server.ListenersProcess Lifecycle Data… Continue reading Tetragon Process Lifecycle Observation: Tetragon Agent Part
Tetragon Process Lifecycle Observation: eBPF Part
TL;DR In this post, I explain how Tetragon detects process creation and termination using eBPF.π IntroductionOverviewkprobes and tracepointseBPF ProgramseBPF MapsTetragon AgentProcess creationeBPF program attached to tracepointWrite data to eBPF MapProcess terminationeBPF program attached to tracepointWrite data to eBPF MapWrap upNext stepRelated posts Introduction I was really impressed when I used Tetragon for the first time.… Continue reading Tetragon Process Lifecycle Observation: eBPF Part




