Вопросы по теме 'ebpf'

Может ли eBPF изменить возвращаемое значение или параметры системного вызова?
Чтобы смоделировать некоторое поведение, я хотел бы прикрепить зонд к системному вызову и изменить возвращаемое значение при передаче определенных параметров. В качестве альтернативы также было бы достаточно изменить параметры функции до того, как...
3850 просмотров
schedule 07.03.2024

eBPF: программы/карты bpf по умолчанию?
Я столкнулся со странным поведением bpf с последним ядром net-next . Со всеми включенными параметрами ядра BPF (включая CONFIG_BPF_JIT_ALWAYS_ON ) и без загруженных каких-либо bpf программ bpftool сообщает следующее: # ./bpftool prog...
516 просмотров
schedule 01.04.2024

Ошибка при загрузке программы BPF, которая копирует буфер в стек BPF.
Я пытаюсь загрузить программу BPF, которая просто копирует параметр buf из tty_write в стек BPF. Моя программа выглядит следующим образом: #define BUFSIZE 256 SEC("kprobe/tty_write") int kprobe__tty_write(struct pt_regs *ctx, struct file...
388 просмотров
schedule 07.09.2022

Как определить направление пакета в программе-вердикте BPF_PROG_TYPE_SK_SKB?
Я пишу программу вердикта BPF_PROG_TYPE_SK_SKB для принятия решений о перенаправлении. Как определить направление пакета (вход/выход)? У меня есть доступ к локальным и удаленным port каждого пакета, но я не могу определить, какой из них...
223 просмотров
schedule 10.06.2023

Верификатор BPF отклоняет программу XDP из-за заднего края, даже если используется pragma unroll
Итак, согласно заголовку, я пытаюсь загрузить программу XDP, когда неожиданно верификатор bpf плюет мне в лицо со знаменитой ошибкой back-edge : libbpf: load bpf program failed: Invalid argument libbpf: -- BEGIN DUMP LOG --- libbpf: back-edge...
517 просмотров
schedule 31.08.2022

Не удалось загрузить код eBPF/XDP на Raspberry Pi
Основная проблема в том, что я не могу загрузить код eBPF в сетевой интерфейс (XDP). Я пытаюсь загрузить Raspberry Pi 3 со следующей конфигурацией: Raspbian GNU/Linux 10 (Бастер) Ядро 4.19.50-v7+ Я использую команду ip следующим...
1216 просмотров
schedule 09.04.2024

Написать программу фильтрации пакетов в ebpf
Если я хочу написать программу cBPF, которая фильтрует пакеты icmp, я могу сделать это, выполнив tcpdump с параметром -dd , который Дамп кода сопоставления пакетов в виде фрагмента программы на C. .. см. пример ниже Как я могу...
638 просмотров
schedule 15.10.2022

Как остановить открытие файла с помощью Ebpf?
Я хочу использовать EBPF и поместить зонд в открытый системный вызов, поэтому, когда пользователь хочет открыть определенный файл, я проверяю его имя, и если это целевое имя, я останавливаю его открытие. Единственное, я не знаю, как на самом деле...
326 просмотров
schedule 21.12.2023

Как распечатать путь к файлу из открытого системного вызова с помощью ebpf python?
Я использую bpf из модуля python bcc, и я хочу, чтобы моя функция probe печатала путь к текущему файлу (своего рода пользовательский упрощенный opensnoop). Как я могу это сделать? Это то, что у меня есть до сих пор: b = BPF(text=""" #include...
450 просмотров
schedule 24.01.2024

Функциональность хэша BPF структуры карт
Я пишу инструмент BPF, который поддерживает трассировку для каждого процесса, а это значит, что мне понадобится какая-то двумерная структура данных. Чтобы обойти ограничение в 512 байт, я решил, что лучше всего использовать поддерживаемые структуры...
535 просмотров
schedule 19.02.2023