Skip to content

Conversation

@maheshbhatiya73
Copy link
Member

  • Implemented eBPF kprobe udp_monitor in Rust using aya
  • Attached to __x64_sys_sendto and __x64_sys_sendmsg syscalls
  • Counted UDP send attempts per process (PID)
  • Used a fallback key { pid, dst_ip = 0 } to ensure stable operation without pointer dereferencing
  • Integrated with Go using cilium/ebpf for loading, attaching, and map polling
  • Validated functionality with C-based sendto test client and netcat
  • Final structure supports extendable map output and clean userland signal handling

- Implemented eBPF kprobe `udp_monitor` in Rust using aya
- Attached to `__x64_sys_sendto` and `__x64_sys_sendmsg` syscalls
- Counted UDP send attempts per process (PID)
- Used a fallback key `{ pid, dst_ip = 0 }` to ensure stable operation without pointer dereferencing
- Integrated with Go using cilium/ebpf for loading, attaching, and map polling
- Validated functionality with C-based sendto test client and netcat
- Final structure supports extendable map output and clean userland signal handling
@maheshbhatiya73 maheshbhatiya73 merged commit 55e3623 into main Jul 8, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants