Picosnitch — мониторинг сетевого трафика на каждый исполняемый файл с помощью BPF
📌 Подробнее: https://github.com/elesiuta/picosnitch
MemOps🤨
Получение уведомлений при подключении к сети новой программы или при ее изменении
Контролирует пропускную способность сети, разбивая трафик по исполняемым файлам, хэшам, родителям, доменам, портам или пользователям с течением времени
При желании можно проверить хэши или исполняемые файлы с помощью VirusTotal
Хеши исполняемых файлов кэшируются на основе устройства + inode для повышения производительности и работают с приложениями, запущенными в контейнерах
Используется BPF для точного мониторинга пропускной способности с низкими накладными расходами и fanotify для контроля исполняемых файлов на предмет модификации
Поскольку приложения могут вызывать других пользователей для отправки/получения данных для них, родительский исполняемый файл и хэш также регистрируются для каждого соединения
Прагматичный и минималистичный дизайн, сфокусированный на точном обнаружении с четким сообщением об ошибке, когда это невозможно
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
GitLab Secrets Manager выдаёт секреты только нужным задачам CI/CD
📌 Подробнее: https://about.gitlab.com/blog/secrets-manager-ga/
MemOps🤨
Ключ для выкладки в production не нужен задаче, которая проверяет форматирование кода. Если обе получают его через общую переменную, компрометация любой из них расширяет область утечки.
В GitLab Secrets Manager задача явно запрашивает секрет через secrets: в .gitlab-ci.yml. Доступ можно ограничить веткой, её защищённостью и целевым окружением. Например, разрешить чтение только из защищённой ветки для production/*.
Значение хранится в OpenBao. Задача получает его по короткоживущему токену, а в окружение передаётся путь к временному файлу. В аудите чтения сохраняются идентификаторы задачи и конвейера.
Это не отменяет ротацию: если задача успела прочитать и передать ключ злоумышленнику, ключ нужно заменить. Динамические учётные данные пока заявлены как следующая возможность.
Secrets Manager доступен в GitLab 19.5 на Premium и Ultimate для GitLab.com и собственной установки. Поддержка Dedicated появится позже.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
GitLab
GitLab Secrets Manager: Govern secrets like your code
Tighten credential security by scoping build-time secrets to the jobs that need them and serving runtime secrets from the same store.
👍2
Forwarded from Типичный Сисадмин
ИБшники позвонили в 6:12 утра.
- Срочно патчите все PHP-серверы. Прямо сейчас.
- Что стряслось?
- Две критические уязвимости. RCE. Удаленное выполнение кода без авторизации.
Красота.
Спрашиваю: "А сколько у нас вообще серверов на пыхе?"
По CMDB и документации: 12.
По факту: хз.
Пошли искать по сетке. Нашли:
• Один полуживой WordPress;
• Три древних внутренних тулзы;
• Один гудящий системник под столом у завхоза;
• Два закрытых вендорских апплайнса;
• Забытый телефонный справочник сотрудников за 2016 год;
• И виртуалочку с именем PHP-STAROE-NE-TROGAT
Естественно, на ней крутится выгрузка зарплатных ведомостей.
Следом откопали тазик на PHP 5.6.
Спрашиваю: "Кто его запиливал?"
В README.txt в корне проекта написано: СЕРЁГА.
Серёга уволился в 2019 году.
Набрали Серёге. Серёга в трубку:
- "Охренеть, этот кусок говна до сих пор работает?!"
Душевно
К 8:00 на аварийный колл подтянулось руководство.
Генеральный:
- То есть хакеры реально могут зайти снаружи?
ИБ:
- Потенциально... да.
Генеральный:
- И даже без пароля?
ИБ:
- Вообще без пароля.
Генеральный:
- А нахрена МЫ тогда каждые три месяца эти пароли меняем?!
(Понятно, суть проблемы уловил не до конца)
Подключился финансовый отдел. Спросили, нельзя ли отложить патчинг до выходных, потому что "даунтайм уронит выручку".
Безопасники вежливо пояснили, что альтернатива - это когда рандомные хацкеры будут бесплатно запускать любые скрипты на наших серверах.
Финики попросили "прислать сравнительную табличку затрат"
В 9:17 кто-то предложил: " А давайте временно потушим уязвимые веб-морды".
Маркетинг в отказ: "Нельзя! У нас прямо сейчас крутится реклама вебинара со скидкой 20%!"
В итоге следующий час топ-менеджмент на полном серьёзе перетирал, что лендос со скидоном на вебинар важнее, чем полный захват инфраструктуры компании
Вроде всё нашли, изолировали, пропатчили. Выдохнули.
И тут сетевой сканер находит ещё один хост.
Имя: TEMP-PHP-2014
Аптайм: 4512 дней.
Никто не знает, что там крутится.
Ни за кем не числится.
Отключить нельзя - потому что как только мы рубим ему порт, у нас складе перестают печататься накладные.
ИБ вздохнуло и присвоило тачке статус "критическая инфраструктура".
Там стоит PHP 5.4.
Уязвимость в нём существует дольше, чем средний возраст джуна в компании.
Так и прошел один из дней на одной из реальных галер.
Типичный
Please open Telegram to view this post
VIEW IN TELEGRAM
😁17🤯7❤1🔥1
В iximiuz Labs появился новый сложный челлендж по контейнеризации:
Сможете найти первопричину и исправить сборку?
📌 Подробнее: https://labs.iximiuz.com/challenges/fix-go-container-image-broken-by-recent-change
MemOps🤨
Отладить Go-контейнер, который перестал запускаться после недавнего изменения.
Сможете найти первопричину и исправить сборку?
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3
Glances — инструмент с открытым исходным кодом для мониторинга состояния серверов. Собирает основные показатели на одном экране и помогает быстро определить, какие процессы и ресурсы требуют внимания.
📌 Подробнее: https://github.com/nicolargo/glances
MemOps🤨
Возможности:
— Мониторинг CPU, оперативной памяти, дисков и сети.
— Просмотр работающих процессов и потребляемых ими ресурсов.
— Отображение температур, напряжений и скорости вентиляторов при наличии поддерживаемых датчиков.
— Мониторинг контейнеров Docker и LXC.
— Работа в терминале и через веб-интерфейс, наблюдение за удалёнными системами.
— Доступ к метрикам через REST API и экспорт данных в файлы и внешние системы хранения.
Glances написан на Python, поддерживает Linux, BSD, macOS и Windows. Также можно расширить его возможности при помощи плагинов.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Grafana ограничивает рост числа рядов при автоматической оптимизации метрик
📌 Подробнее: https://grafana.com/blog/coverage-first-or-cost-first-two-ways-to-automatically-apply-adaptive-metrics-recommendations/
MemOps🤨
Автоматическая агрегация метрик экономит ресурсы, пока кто-нибудь не запросит подробные данные обратно. Восстановление детализации увеличивает число активных временных рядов.
В Adaptive Metrics появился режим cost-first. Сначала применяются рекомендации, уменьшающие число рядов. Затем система рассматривает увеличивающие рекомендации, начиная с самых небольших, и останавливается перед превышением исходного количества.
Допустим, есть три изменения: −10, +5 и +10 рядов. Первые два пройдут, последнее останется на рассмотрение. Итог цикла — на пять рядов меньше.
Режим coverage-first применяет все рекомендации, включая восстановление детализации для востребованных данных. Для критичных метрик это может быть предпочтительнее.
Режимы можно выбирать отдельно по сегментам: например, командам или окружениям. При этом ограничение прогнозируемого числа рядов в цикле не задаёт жёсткий потолок всему счёту Grafana Cloud.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
Grafana Labs
Coverage-first or cost-first: two ways to automatically apply Adaptive Metrics' recommendations | Grafana Labs
Auto-apply is available with two modes: coverage-first, which keeps pace with usage, and cost-first, a built-in safeguard that only applies recommendations that won’t increase your total active series.
GitHub автоматизировал отзыв неподтверждённых доступов к репозиториям
📌 Подробнее: https://github.blog/engineering/platform-security/staying-evergreen-how-we-automated-secure-access-and-repo-hygiene-in-a-shared-org/
MemOps🤨
Внешний подрядчик закончил работу, а доступ к репозиторию остался. Если проверка зависит от памяти владельца, такие разрешения легко переживают сам проект.
В GitHub для одной из внутренних организаций сделали Evergreen. Раз в квартал приложение открывает задачу со списком внешних участников. Ответственный отмечает тех, кому доступ ещё нужен, и закрывает её.
Неподтверждённые разрешения отзываются. Если ответа нет, после установленного срока отзывается весь доступ из списка. На проверку предусмотрены две недели. Случайный ручной запуск не должен сокращать этот период.
Состояние проверок хранится в JSON-файлах в Git. По истории изменений видно, кто принял решение и что произошло. Отдельный процесс предупреждает о заброшенных репозиториях и затем архивирует их.
Авторы показывают внутреннюю реализацию на GitHub App, Actions и задачах. Этот процесс можно взять за основу для собственной проверки доступов.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
The GitHub Blog
Staying Evergreen: How we automated secure access and repo hygiene in a shared org
Automate outside collaborator access reviews and stale-repository archival in your shared GitHub organization with native platform features.
Изучайте Linux-сети на практике
📌 Подробнее: https://labs.iximiuz.com/challenges/linux-inspect-network-interfaces-and-routes
MemOps🤨
Новый практический челлендж — потренируйтесь разбираться в сетевой конфигурации Linux-хостов: находить имена интерфейсов, IP- и MAC-адреса, шлюз по умолчанию, а также определять, какие маршруты сервер использует для доступа к разным адресам.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
iximiuz Labs
Inspect Network Interfaces, IP Addresses, and Routes on a Linux Host | Challenge
Practice reading the network configuration of Linux hosts: find interface names, IP and MAC addresses, the default gateway, and detect which routes a server uses to reach different destinations.
❤3👍1🔥1😁1🫡1
Ozon Tech Platform Meetup — ничего страшного: исключительно полезные доклады
30 октября команда Ozon Tech расскажет, как устроена платформа большого бигтеха и какие инженерные решения помогают её развивать.
В программе:
— устройство платформы, стандарты разработки, CI/CD и сетевая инфраструктура;
— оптимизация архитектуры за счёт сокращения микросервисов и высвобождения 7000+ CPU;
— портал платформы данных и интеграция с множеством сервисов.
Доклады — по делу, а времени на общение хватит с запасом. Регистрируйтесь заранее, чтобы прийти офлайн, задать вопросы и пообщаться с руководителями платформенных команд Ozon Tech.
30 октября | 19:00 мск | Москва, лофт Casa Picassa
Регистрация: ozon.tech
Ждут всех, не только Go-разработчиков
30 октября команда Ozon Tech расскажет, как устроена платформа большого бигтеха и какие инженерные решения помогают её развивать.
В программе:
— устройство платформы, стандарты разработки, CI/CD и сетевая инфраструктура;
— оптимизация архитектуры за счёт сокращения микросервисов и высвобождения 7000+ CPU;
— портал платформы данных и интеграция с множеством сервисов.
Доклады — по делу, а времени на общение хватит с запасом. Регистрируйтесь заранее, чтобы прийти офлайн, задать вопросы и пообщаться с руководителями платформенных команд Ozon Tech.
30 октября | 19:00 мск | Москва, лофт Casa Picassa
Регистрация: ozon.tech
Ждут всех, не только Go-разработчиков
❤3🔥1
Kubernetes тестирует вытеснение подов ради увеличения ресурсов работающего приложения
📌 Подробнее: https://kubernetes.io/blog/2026/09/10/kubernetes-v1-37-scheduler-preemption-for-in-place-pod-resize-alpha/
MemOps🤨
Работающий под запросил больше памяти, но на узле её нет. Увеличение ресурсов остаётся в состоянии Deferred, хотя сам запрос допустим. Появление свободного узла в кластере не добавляет памяти на текущем.
В Kubernetes 1.37 появилась альфа механизма, который позволяет планировщику освобождать место для такого увеличения. Он может вытеснить менее приоритетные поды с нужного узла, чтобы запрос более важного приложения выполнился.
Возможность включается через InPlacePodVerticalScalingSchedulerPreemption. Это экспериментальная функция, её нужно проверять отдельно от уже стабильного изменения ресурсов работающего пода.
Приоритеты здесь влияют на доступность соседних сервисов. До включения проверьте, кого допустимо вытеснять, и что произойдёт с этой нагрузкой после остановки.
Механизм помогает преодолеть нехватку свободной ёмкости на узле. Запрос, превышающий возможности самой машины, он выполнить не сможет.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
Kubernetes
Kubernetes v1.37: Scheduler Preemption for In-Place Pod Resize (Alpha)
In Kubernetes, resource allocation has historically been a static decision made during a Pod's initial scheduling and placement. With the graduation of the core in-Place Pod resize feature to General Availability in v1.35, application developers and cluster…
👍3
Перед закрытием HCP Vagrant нужно перенести образы и каталог их версий
📌 Подробнее: https://www.hashicorp.com/en/blog/hcp-vagrant-deprecation-important-dates-and-migration-guidance
MemOps🤨
HashiCorp закрывает HCP Vagrant поэтапно. Создание новых образов и реестров прекращено с 1 октября. Поддержка и обслуживание заканчиваются 2 ноября, работа сервиса — 31 декабря 2026 года.
Проверьте, откуда команда скачивает образы: ссылки в Vagrantfile, задачи CI/CD, скрипты и инструкции для новых сотрудников. Отдельно учтите собственные публичные и закрытые образы и тех, кто от них зависит.
Для переноса нужны файлы .box и метаданные каталога. В них хранятся версии, провайдеры виртуализации, архитектуры, адреса загрузки и контрольные суммы. Копирования одного последнего образа может оказаться недостаточно.
После переноса проверьте загрузку нужных версий с чистой машины и из CI. Локальный кеш способен скрыть неработающую ссылку.
Закрытие касается облачного сервиса. Vagrant CLI и исходный код остаются доступны, образы можно размещать на собственном хостинге.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Grafana IRM сохраняет хронологию инцидента вместе с сообщениями команды
📌 Подробнее: https://grafana.com/blog/go-from-alert-to-post-incident-review-with-grafana-cloud-irm-and-ai/
MemOps🤨
После восстановления сервиса приходится вспоминать, когда начались ошибки, кто предложил откат и почему одну из гипотез отбросили. Часть ответов остаётся в переписке.
В Grafana Cloud IRM сообщения из Slack можно добавлять в хронологию инцидента реакцией с эмодзи робота. Вместе с текстом сохраняются автор и время. Так полезное наблюдение попадает в запись сразу, пока команда ещё разбирается с проблемой.
К записи привязаны оповещения, панели и данные расследования. Grafana Assistant использует этот контекст для гипотез. Участники могут смотреть источники, опровергать предположения и возвращать их на проверку.
Такая история помогает подготовить разбор после инцидента: восстановить последовательность решений и найти пробелы в процессе.
Связи со Slack и другими сервисами нужно настроить заранее. Вывод помощника остаётся гипотезой, которую команда проверяет по данным.
MemOps
Please open Telegram to view this post
VIEW IN TELEGRAM
Grafana Labs
Go from alert to post-incident review with Grafana Cloud IRM and AI | Grafana Labs
Follow a frontend incident from the first page to the investigation and response to a post-incident review with Grafana Cloud IRM and AI.