35просмотров
13.8%от подписчиков
27 марта 2026 г.
stats📷 ФотоScore: 39
🧐5 лайфхаков для bash 1. Детектим инъекцию в легитимный процесс:
for pid in /proc/[0-9]; do maps="$pid/maps"; [[ -f $maps ]] && grep -l "rwxp" $maps 2>/dev/null; done Исполняемые анонимные регионы памяти (rwxp без файла) - частый признак shellcode injection или memfd_create. 2. Ищем процессы без файла на диске:
for pid in /proc/[0-9]; do exe=$(readlink $pid/exe 2>/dev/null); [[ $exe == "(deleted)" ]] && cat $pid/cmdline | tr '\0' ' ' && echo; done Малварь часто удаляет себя с диска после запуска. Процесс живёт, файла нет. 3. Мониторим появление новых сетевых неймспейсов:
watch -n 5 'ls -la /proc/[0-9]*/ns/net | sort -k9 | uniq -f8' Новый сетевой неймспейс без контейнерной активности, повод смотреть внимательнее. Так прячут сетевую активность от хостового мониторинга. 4. Детектим запись в /proc через скрытый дескриптор:
lsof +D /proc 2>/dev/null | grep -v "^COMMAND" | awk '{print $1,$2,$9}' | grep -v "self\|thread" Процессы, взаимодействующие с /proc чужих PID напрямую - нетипичное поведение для легитимного софта. 5. Сравниваем /proc/net/tcp с выводом ss:
comm -23 <(awk 'NR>1 {print $2}' /proc/net/tcp | while read h; do printf "%d.%d.%d.%d:%d\n" 0x${h:6:2} 0x${h:4:2} 0x${h:2:2} 0x${h:0:2} $((16#${h:9:4})); done | sort) <(ss -tn | awk 'NR>1 {print $4}' | sort) Соединения в /proc/net/tcp, которых нет в выводе ss - признак руткита, скрывающего трафик #Кибербастион #Лайфхак #Bash