🧠 Skills: С Днём сисадмина. Честный разговор о профессии в 2026 году.
Коллеги, сегодня 31 июля — наш день. День системного администратора. И вместо поздравительной открытки — честный разговор о профессии. Потому что это полезнее.
Что произошло с профессией за первые семь месяцев 2026 года:
Мы закрыли больше уязвимостей за полгода чем раньше за год. Мы реагировали на Copy Fail, Dirty Frag, Fragnesia, DirtyClone, GhostLock, Januscape, CIFSwitch, CVE-2026-46333 — восемь LPE за 90 дней. Мы провели через RC4 Kerberos, Secure Boot истечение, Entra hard match, рекордные Patch Tuesday. Мы видели Atomic Arch и supply chain атаки на npm. И выстояли.
Это не мелкие задачи. Это то что большинство людей за пределами нашей профессии не замечают пока всё работает.
Три честных наблюдения о профессии:
Один совет на второе полугодие:
С Днём системного администратора, коллеги.
Вы держите мир работающим. Серверы не падают, данные не теряются, компании продолжают работать — во многом потому что вы делаете свою работу профессионально каждый день.
Это не всегда замечают. Но это важно. По-настоящему важно.
Отдыхайте сегодня. Вы заслужили.
#skills #деньсисадмина #sysadmin #карьера #профессия #admin_future
Коллеги, сегодня 31 июля — наш день. День системного администратора. И вместо поздравительной открытки — честный разговор о профессии. Потому что это полезнее.
Что произошло с профессией за первые семь месяцев 2026 года:
Мы закрыли больше уязвимостей за полгода чем раньше за год. Мы реагировали на Copy Fail, Dirty Frag, Fragnesia, DirtyClone, GhostLock, Januscape, CIFSwitch, CVE-2026-46333 — восемь LPE за 90 дней. Мы провели через RC4 Kerberos, Secure Boot истечение, Entra hard match, рекордные Patch Tuesday. Мы видели Atomic Arch и supply chain атаки на npm. И выстояли.
Это не мелкие задачи. Это то что большинство людей за пределами нашей профессии не замечают пока всё работает.
Три честных наблюдения о профессии:
НАБЛЮДЕНИЕ 1: СЛОЖНОСТЬ РАСТЁТ, ВИДИМОСТЬ — НЕТ
622 CVE в один Patch Tuesday.
400+ уязвимостей ядра за 24 часа.
AI находит баги быстрее чем вендоры их закрывают.
Бизнес видит: "всё работает, зачем платить больше?"
Реальность: чтобы "всё работало" — нужна системная работа
которую раньше не было.
Что делать: считай нагрузку в цифрах и показывай.
"В июле я закрыл 3 критических CVE с активной эксплуатацией,
обновил 47 серверов, мигрировал SharePoint с EOL"
— это не хвастовство, это операционный отчёт.
НАБЛЮДЕНИЕ 2: ПРОФЕССИЯ РАЗДЕЛИЛАСЬ НА ДВЕ
Первая: реактивный администратор.
Тушит пожары, устаёт, не успевает учиться.
Каждый новый LPE — паника.
Вторая: инженер инфраструктуры.
Строит системы (EPSS, CISA KEV, ModuleJail, IaC).
Новый LPE — плановая задача в трекере.
Разница не в знаниях. В подходе.
Второй путь доступен всем кто решит его выбрать.
НАБЛЮДЕНИЕ 3: ЦЕННОСТЬ РАСТЁТ, НО ЕЁ НУЖНО ОБЪЯСНЯТЬ
Безопасная инфраструктура невидима.
Никто не видит атаки которые ты предотвратил.
Никто не ценит апдейт который прошёл без инцидента.
Один инструмент который меняет это:
инженерный журнал. Ты его ведёшь?
Январь: Copy Fail митигейшн — 2 часа, 30 серверов
Апрель: DC reboot loop — 4 часа, восстановление
Июль: 622 CVE, SharePoint EOL, SQL Server 2016 — неделя
Через год это доказательство.
На собеседовании, на ревью, при разговоре о зарплате.
Один совет на второе полугодие:
Выбери одну вещь которую делаешь руками каждую неделю
и автоматизируй её до конца августа.
Не всё. Одну.
Патчинг? → unattended-upgrades или dnf-automatic
Мониторинг сертификатов? → скрипт + cron + алерт
RC4 аудит? → скрипт на PowerShell в расписание
Один автоматизированный процесс в месяц —
это 6 к концу года. Это уже другая инфраструктура.
С Днём системного администратора, коллеги.
Вы держите мир работающим. Серверы не падают, данные не теряются, компании продолжают работать — во многом потому что вы делаете свою работу профессионально каждый день.
Это не всегда замечают. Но это важно. По-настоящему важно.
Отдыхайте сегодня. Вы заслужили.
#skills #деньсисадмина #sysadmin #карьера #профессия #admin_future
❤2
🐧 Skills: три CVE ядра Linux в CISA KEV — и почему «локальная» уязвимость с CVSS 9.8 должна насторожить.
Коллеги, 18 сентября CISA добавила в KEV сразу три уязвимости ядра. Red Hat 19-го подтвердил эксплуатацию и наличие публичного эксплойта. Срок для федеральных агентств — 21 сентября, всего три дня. Это нетипично мало.
ЧТО ЗАКРЫТО:
CVE-2025-39682 (9.8) — kernel TLS (модуль tls), путь приёма
CVE-2026-53266 (8.8) — ebtables SNAT, out-of-bounds write при переписывании ARP
CVE-2025-39964 (7.8) — AF_ALG, гонка при двух записях в один сокет
ФАКТ vs ИНТЕРПРЕТАЦИЯ:
Все три по описанию требуют локального доступа. CVSS 9.8 при локальном векторе — противоречие: такую оценку обычно дают сетевым багам без аутентификации. Значит, либо оценка завышена, либо вектор шире описанного. До разъяснений исходим из худшего. Практический смысл: это стадия повышения привилегий после первичного доступа — через веб-шелл, контейнер или украденный SSH-ключ.
ПРОВЕРКА:
uname -r
# Загружены ли уязвимые подсистемы
lsmod | grep -E '^(tls|ebt_snat|ebtable_nat|ebtables|af_alg|algif_[a-z]+)\s'
# Не вшиты ли в ядро (=y — блэклист не поможет, только обновление)
grep -E 'CONFIG_TLS=|CONFIG_BRIDGE_EBT_SNAT=|CONFIG_CRYPTO_USER_API' /boot/config-$(uname -r)
# Статус по дистрибутиву
# https://security-tracker.debian.org/tracker/CVE-2025-39682
apt update && apt list --upgradable 2>/dev/null | grep -E 'linux-image|proxmox-kernel'
ВРЕМЕННАЯ МЕРА (если патч прямо сейчас невозможен):
cat > /etc/modprobe.d/kev-2026-09.conf <<'EOF'
install tls /bin/false
install ebt_snat /bin/false
install algif_aead /bin/false
install algif_skcipher /bin/false
install algif_hash /bin/false
EOF
⚠️ Перед блэклистом проверить зависимости:
• kTLS используют nginx/HAProxy с ktls и часть NFS-over-TLS
• ebtables использует pve-firewall на Proxmox
• AF_ALG задействуют cryptsetup в отдельных режимах, iwd и часть криптобиблиотек
Блэклист — это мост до перезагрузки в новое ядро, а не решение.
Итог: «локальная» не значит «неважная». В KEV эти CVE попали потому, что их используют как второй шаг атаки. Обновить ядро, перезагрузиться, проверить uname -r — сегодня, если на хосте есть контейнеры, общие учётки или сервисы, доступные извне.
#skills #linux #kernel #cve #kev #proxmox #sysadmin #admin_future
Коллеги, 18 сентября CISA добавила в KEV сразу три уязвимости ядра. Red Hat 19-го подтвердил эксплуатацию и наличие публичного эксплойта. Срок для федеральных агентств — 21 сентября, всего три дня. Это нетипично мало.
ЧТО ЗАКРЫТО:
CVE-2025-39682 (9.8) — kernel TLS (модуль tls), путь приёма
CVE-2026-53266 (8.8) — ebtables SNAT, out-of-bounds write при переписывании ARP
CVE-2025-39964 (7.8) — AF_ALG, гонка при двух записях в один сокет
ФАКТ vs ИНТЕРПРЕТАЦИЯ:
Все три по описанию требуют локального доступа. CVSS 9.8 при локальном векторе — противоречие: такую оценку обычно дают сетевым багам без аутентификации. Значит, либо оценка завышена, либо вектор шире описанного. До разъяснений исходим из худшего. Практический смысл: это стадия повышения привилегий после первичного доступа — через веб-шелл, контейнер или украденный SSH-ключ.
ПРОВЕРКА:
uname -r
# Загружены ли уязвимые подсистемы
lsmod | grep -E '^(tls|ebt_snat|ebtable_nat|ebtables|af_alg|algif_[a-z]+)\s'
# Не вшиты ли в ядро (=y — блэклист не поможет, только обновление)
grep -E 'CONFIG_TLS=|CONFIG_BRIDGE_EBT_SNAT=|CONFIG_CRYPTO_USER_API' /boot/config-$(uname -r)
# Статус по дистрибутиву
# https://security-tracker.debian.org/tracker/CVE-2025-39682
apt update && apt list --upgradable 2>/dev/null | grep -E 'linux-image|proxmox-kernel'
ВРЕМЕННАЯ МЕРА (если патч прямо сейчас невозможен):
cat > /etc/modprobe.d/kev-2026-09.conf <<'EOF'
install tls /bin/false
install ebt_snat /bin/false
install algif_aead /bin/false
install algif_skcipher /bin/false
install algif_hash /bin/false
EOF
⚠️ Перед блэклистом проверить зависимости:
• kTLS используют nginx/HAProxy с ktls и часть NFS-over-TLS
• ebtables использует pve-firewall на Proxmox
• AF_ALG задействуют cryptsetup в отдельных режимах, iwd и часть криптобиблиотек
Блэклист — это мост до перезагрузки в новое ядро, а не решение.
Итог: «локальная» не значит «неважная». В KEV эти CVE попали потому, что их используют как второй шаг атаки. Обновить ядро, перезагрузиться, проверить uname -r — сегодня, если на хосте есть контейнеры, общие учётки или сервисы, доступные извне.
#skills #linux #kernel #cve #kev #proxmox #sysadmin #admin_future
👍2🔥1
🧠 Skills: Veeam Agent CVE-2026-32996 — эксплуатируется или нет? Разбираем, где факт, а где заголовок.
Коллеги, на этой неделе новость «Veeam эксплуатируется в дикой природе» разошлась по лентам. Хороший повод проверить, на чём она держится.
ФАКТЫ:
CVE-2026-32996, Veeam Agent for Microsoft Windows, LPE до SYSTEM, CVSS v4 7.3
Механизм: когда админ открывает агент с повышенными правами, служба VeeamEndpointBackupSvc выдаёт идентификатор сессии. Этот идентификатор пишется открытым текстом в лог, который читают все пользователи машины. Любой, кто его прочитал, может предъявить его службе и выполнять команды как SYSTEM.
Уязвимы: сборки 13.0.2.1102 и ниже
Исправлено: 13.0.3.1220+ (актуальная standalone-версия — 13.1.1.700)
Публичный PoC: с 14 сентября
ЧТО НЕ ФАКТ:
Arctic Wolf сообщил об активной эксплуатации, а затем убрал бюллетень. В бюллетене самого Veeam упоминаний эксплуатации нет, в CISA KEV на момент написания уязвимости тоже нет.
Подтверждённой эксплуатации нет. Но публичный PoC для локальной LPE — это вопрос недель, а не месяцев.
УСЛОВИЯ АТАКИ:
• локальный доступ к машине
• админ хотя бы раз открыл агент с повышенными правами, и сессия активна
Самые рискованные машины — терминальные серверы и общие рабочие станции, где много пользователей и сидит агент.
# Версия агента на машине
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*',
'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*' |
? DisplayName -like '*Veeam Agent*' | Select DisplayName, DisplayVersion
# По списку серверов
$srv = Get-Content .\servers.txt
Invoke-Command -ComputerName $srv -ScriptBlock {
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*' |
? DisplayName -like '*Veeam Agent*' | Select DisplayName, DisplayVersion
} | Select PSComputerName, DisplayName, DisplayVersion
КАК ОБНОВЛЯТЬ:
Standalone → 13.1.1.700
Агенты под управлением VBR → сначала VBR до 13.0.2.29+, затем убедиться, что агенты реально обновились. Обновление VBR само по себе не означает обновлённых агентов.
Итог: «эксплуатируется» здесь — неподтверждённое утверждение, а публичный PoC и тривиальный механизм — факт. Для решения хватает второго: обновляем, начиная с RDS-хостов.
#skills #veeam #backup #cve #lpe #sysadmin #admin_future
Коллеги, на этой неделе новость «Veeam эксплуатируется в дикой природе» разошлась по лентам. Хороший повод проверить, на чём она держится.
ФАКТЫ:
CVE-2026-32996, Veeam Agent for Microsoft Windows, LPE до SYSTEM, CVSS v4 7.3
Механизм: когда админ открывает агент с повышенными правами, служба VeeamEndpointBackupSvc выдаёт идентификатор сессии. Этот идентификатор пишется открытым текстом в лог, который читают все пользователи машины. Любой, кто его прочитал, может предъявить его службе и выполнять команды как SYSTEM.
Уязвимы: сборки 13.0.2.1102 и ниже
Исправлено: 13.0.3.1220+ (актуальная standalone-версия — 13.1.1.700)
Публичный PoC: с 14 сентября
ЧТО НЕ ФАКТ:
Arctic Wolf сообщил об активной эксплуатации, а затем убрал бюллетень. В бюллетене самого Veeam упоминаний эксплуатации нет, в CISA KEV на момент написания уязвимости тоже нет.
Подтверждённой эксплуатации нет. Но публичный PoC для локальной LPE — это вопрос недель, а не месяцев.
УСЛОВИЯ АТАКИ:
• локальный доступ к машине
• админ хотя бы раз открыл агент с повышенными правами, и сессия активна
Самые рискованные машины — терминальные серверы и общие рабочие станции, где много пользователей и сидит агент.
# Версия агента на машине
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*',
'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*' |
? DisplayName -like '*Veeam Agent*' | Select DisplayName, DisplayVersion
# По списку серверов
$srv = Get-Content .\servers.txt
Invoke-Command -ComputerName $srv -ScriptBlock {
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*' |
? DisplayName -like '*Veeam Agent*' | Select DisplayName, DisplayVersion
} | Select PSComputerName, DisplayName, DisplayVersion
КАК ОБНОВЛЯТЬ:
Standalone → 13.1.1.700
Агенты под управлением VBR → сначала VBR до 13.0.2.29+, затем убедиться, что агенты реально обновились. Обновление VBR само по себе не означает обновлённых агентов.
Итог: «эксплуатируется» здесь — неподтверждённое утверждение, а публичный PoC и тривиальный механизм — факт. Для решения хватает второго: обновляем, начиная с RDS-хостов.
#skills #veeam #backup #cve #lpe #sysadmin #admin_future
👍1
📅 Суббота — инвентаризация: SQL Server 2016 уже без поддержки, Windows Server 2016 — через 108 дней.
Коллеги, выходные — лучшее время посчитать то, что в будни всегда откладывается.
ФАКТЫ:
SQL Server 2016 — расширенная поддержка закончилась 14 июля 2026
Windows Server 2016 — закончится 12 января 2027
ESU для WS2016 Microsoft предлагает через Azure Arc
ИНТЕРПРЕТАЦИЯ ДЛЯ НАС:
Microsoft прекратил продажи в РФ в 2022 году, поэтому для большинства российских организаций ESU недоступен. На практике после 12 января у 2016-х серверов остаются два пути: миграция или изоляция и компенсирующие меры. Вспомните два сентябрьских zero-day EoP в Windows: после EOL такие уязвимости останутся открытыми навсегда.
ШАГ 1 — СЧИТАЕМ WINDOWS:
Get-ADComputer -Filter 'OperatingSystem -like "*Server 2016*" -and Enabled -eq $true' `
-Properties OperatingSystem, LastLogonDate, IPv4Address |
Sort LastLogonDate -Descending |
Select Name, IPv4Address, LastLogonDate |
Export-Csv .\ws2016.csv -NoTypeInformation -Encoding UTF8
ШАГ 2 — СЧИТАЕМ SQL (major 13 = 2016):
sql
SELECT @@SERVERNAME AS server,
SERVERPROPERTY('ProductVersion') AS version,
SERVERPROPERTY('ProductLevel') AS level,
SERVERPROPERTY('Edition') AS edition,
CASE WHEN CAST(PARSENAME(CAST(SERVERPROPERTY('ProductVersion') AS nvarchar(32)),4) AS int) <= 13
THEN 'EOL' ELSE 'OK' END AS status;
ШАГ 3 — ДЛЯ КАЖДОЙ МАШИНЫ ОДНО РЕШЕНИЕ:
□ Мигрировать — на что, кто отвечает, в какой срок
□ Вывести из эксплуатации — роль уже никому не нужна
□ Изолировать — если зависимость не снять (легаси-1С, железо, лицензии): отдельный VLAN, доступ по белому списку, никакого RDP из общей сети, усиленный мониторинг
Строка без ответственного и даты — это не план, а список.
Итог: 108 дней — это примерно три цикла Patch Tuesday. Выгрузку и таблицу «сервер → решение → ответственный → срок» лучше сделать в эти выходные.
#skills #eol #windowsserver #sqlserver #inventory #sysadmin #admin_future
Коллеги, выходные — лучшее время посчитать то, что в будни всегда откладывается.
ФАКТЫ:
SQL Server 2016 — расширенная поддержка закончилась 14 июля 2026
Windows Server 2016 — закончится 12 января 2027
ESU для WS2016 Microsoft предлагает через Azure Arc
ИНТЕРПРЕТАЦИЯ ДЛЯ НАС:
Microsoft прекратил продажи в РФ в 2022 году, поэтому для большинства российских организаций ESU недоступен. На практике после 12 января у 2016-х серверов остаются два пути: миграция или изоляция и компенсирующие меры. Вспомните два сентябрьских zero-day EoP в Windows: после EOL такие уязвимости останутся открытыми навсегда.
ШАГ 1 — СЧИТАЕМ WINDOWS:
Get-ADComputer -Filter 'OperatingSystem -like "*Server 2016*" -and Enabled -eq $true' `
-Properties OperatingSystem, LastLogonDate, IPv4Address |
Sort LastLogonDate -Descending |
Select Name, IPv4Address, LastLogonDate |
Export-Csv .\ws2016.csv -NoTypeInformation -Encoding UTF8
ШАГ 2 — СЧИТАЕМ SQL (major 13 = 2016):
sql
SELECT @@SERVERNAME AS server,
SERVERPROPERTY('ProductVersion') AS version,
SERVERPROPERTY('ProductLevel') AS level,
SERVERPROPERTY('Edition') AS edition,
CASE WHEN CAST(PARSENAME(CAST(SERVERPROPERTY('ProductVersion') AS nvarchar(32)),4) AS int) <= 13
THEN 'EOL' ELSE 'OK' END AS status;
ШАГ 3 — ДЛЯ КАЖДОЙ МАШИНЫ ОДНО РЕШЕНИЕ:
□ Мигрировать — на что, кто отвечает, в какой срок
□ Вывести из эксплуатации — роль уже никому не нужна
□ Изолировать — если зависимость не снять (легаси-1С, железо, лицензии): отдельный VLAN, доступ по белому списку, никакого RDP из общей сети, усиленный мониторинг
Строка без ответственного и даты — это не план, а список.
Итог: 108 дней — это примерно три цикла Patch Tuesday. Выгрузку и таблицу «сервер → решение → ответственный → срок» лучше сделать в эти выходные.
#skills #eol #windowsserver #sqlserver #inventory #sysadmin #admin_future
🧠 Skills: SharePoint CVE-2026-65660 — «spoofing», который оказался RCE. Почему метке CVE нельзя верить на слово.
Коллеги, хороший кейс к моему июльскому посту о приоритизации.
ФАКТЫ:
CVE-2026-65660, SharePoint Server 2016, 2019, Subscription Edition. CVSS 8.8.
Исправлено августовскими обновлениями безопасности (11 августа). Патч по умолчанию отключает уязвимую функцию.
В августе Microsoft классифицировал уязвимость как Spoofing. Позже классификацию сменили на RCE (code injection).
Механизм: компонент ToolPane восстанавливает директивы Register, не экранируя кавычки. Через них внедряются свои директивы, регистрируются произвольные .NET-классы, дальше — десериализация через XamlServices.Parse() и выполнение кода.
Нужна любая учётная запись с базовыми правами в SharePoint.
Эксплойт опубликован. 25 сентября Microsoft подтвердил атаки, в тот же день CVE попала в CISA KEV.
По данным исследователя, уязвима и SharePoint 2013, но она без поддержки с апреля 2023, и патча для неё не будет.
ПОЧЕМУ ЭТО ВАЖНО:
Приоритизация по типу CVE («spoofing — подождёт») в августе отправила эту уязвимость в плановый цикл. Полтора месяца спустя это эксплуатируемый RCE.
Вывод: тип и CVSS — это интерпретация вендора на момент публикации, а не свойство уязвимости. Факт эксплуатации (KEV) и EPSS пересчитываются, а метка — нет.
# На сервере SharePoint (SharePoint Management Shell)
(Get-SPFarm).BuildVersion
Get-SPProduct -Local | Select -ExpandProperty PatchableUnitDisplayNames
# Были ли обращения к ToolPane
Get-ChildItem 'C:\inetpub\logs\LogFiles\W3SVC*\*.log' |
Select-String -Pattern 'ToolPane\.aspx' |
Select -First 50 Path, LineNumber, Line
ЧТО ДЕЛАТЬ:
□ Сверить BuildVersion с августовским CU/SU для вашей редакции (MSRC → CVE-2026-65660)
□ Если август не установлен — ставить сейчас, это KEV
□ SharePoint 2013 — изолировать от пользователей или выводить из эксплуатации
□ Если в IIS-логах ToolPane.aspx встречается от необычных учёток или в нерабочее время — разбираться как с инцидентом
Итог: раз в месяц прогоняйте прошлые «низкие» CVE через KEV и EPSS заново. Метки вендора стареют быстрее, чем вы успеваете патчить.
#skills #sharepoint #cve #kev #patchmanagement #sysadmin #admin_future
Коллеги, хороший кейс к моему июльскому посту о приоритизации.
ФАКТЫ:
CVE-2026-65660, SharePoint Server 2016, 2019, Subscription Edition. CVSS 8.8.
Исправлено августовскими обновлениями безопасности (11 августа). Патч по умолчанию отключает уязвимую функцию.
В августе Microsoft классифицировал уязвимость как Spoofing. Позже классификацию сменили на RCE (code injection).
Механизм: компонент ToolPane восстанавливает директивы Register, не экранируя кавычки. Через них внедряются свои директивы, регистрируются произвольные .NET-классы, дальше — десериализация через XamlServices.Parse() и выполнение кода.
Нужна любая учётная запись с базовыми правами в SharePoint.
Эксплойт опубликован. 25 сентября Microsoft подтвердил атаки, в тот же день CVE попала в CISA KEV.
По данным исследователя, уязвима и SharePoint 2013, но она без поддержки с апреля 2023, и патча для неё не будет.
ПОЧЕМУ ЭТО ВАЖНО:
Приоритизация по типу CVE («spoofing — подождёт») в августе отправила эту уязвимость в плановый цикл. Полтора месяца спустя это эксплуатируемый RCE.
Вывод: тип и CVSS — это интерпретация вендора на момент публикации, а не свойство уязвимости. Факт эксплуатации (KEV) и EPSS пересчитываются, а метка — нет.
# На сервере SharePoint (SharePoint Management Shell)
(Get-SPFarm).BuildVersion
Get-SPProduct -Local | Select -ExpandProperty PatchableUnitDisplayNames
# Были ли обращения к ToolPane
Get-ChildItem 'C:\inetpub\logs\LogFiles\W3SVC*\*.log' |
Select-String -Pattern 'ToolPane\.aspx' |
Select -First 50 Path, LineNumber, Line
ЧТО ДЕЛАТЬ:
□ Сверить BuildVersion с августовским CU/SU для вашей редакции (MSRC → CVE-2026-65660)
□ Если август не установлен — ставить сейчас, это KEV
□ SharePoint 2013 — изолировать от пользователей или выводить из эксплуатации
□ Если в IIS-логах ToolPane.aspx встречается от необычных учёток или в нерабочее время — разбираться как с инцидентом
Итог: раз в месяц прогоняйте прошлые «низкие» CVE через KEV и EPSS заново. Метки вендора стареют быстрее, чем вы успеваете патчить.
#skills #sharepoint #cve #kev #patchmanagement #sysadmin #admin_future
🧠 Skills: Zyxel GS1900 — 996 скомпрометированных коммутаторов. Коммутатор доступа — тоже сервер.
Коллеги, неуправляемые и «умные» коммутаторы — самый забытый класс устройств в инвентаризации. Их не обновляют годами, потому что «они просто работают».
ФАКТЫ:
CVE-2026-7273, CVSS 8.8, stack-based buffer overflow
Атакующий без аутентификации, находящийся в той же сети, отправляет специальный HTTP-запрос на веб-интерфейс и выполняет команды ОС.
Модели: GS1900-8, -8HP, -10HP, -16, -24, -24E, -24EP, -24HPv2, -48, -48HPv2
Уязвимы прошивки 2.90(xxxx.1)C0 и старше, исправлено в 2.90(xxxx.2)C0
Эксплуатация с 17 августа 2026: 996 коммутаторов в 48 странах
После взлома атакующие скачивают по TFTP скрипты-сборщики конфигураций и учётных данных
CISA KEV: с 21 сентября
ИНТЕРПРЕТАЦИЯ (моя):
996 устройств в 48 странах при «LAN-based» векторе означают одно из двух: либо веб-интерфейс торчит в интернет, либо атакующий уже был внутри и использовал коммутатор для закрепления. Оба варианта — про гигиену management plane, а не про Zyxel.
Скомпрометированный коммутатор — идеальная точка: он видит весь трафик сегмента, EDR на нём не стоит, в SIEM он почти никогда не логирует.
bash
# Найти GS1900 в management-подсети
nmap -p 80,443 --open --script http-title 10.0.0.0/24 | grep -B4 -i "GS1900"
# TFTP-трафик от коммутаторов (на шлюзе или зеркале порта)
tcpdump -ni any 'udp port 69'
# Проверка из внешнего сегмента: веб-интерфейс коммутаторов не должен отвечать
nmap -p 80,443 -Pn <IP_коммутатора>
MANAGEMENT PLANE — МИНИМУМ:
□ Управление коммутаторами — только из выделенного VLAN, ACL на самом коммутаторе
□ Веб-интерфейс выключен там, где хватает SSH/CLI
□ Исходящий трафик от коммутаторов запрещён, кроме NTP, syslog и сервера обновлений. TFTP наружу — однозначно нет
□ Syslog с коммутаторов → в SIEM
□ Коммутаторы — в реестре прошивок наравне с серверами
Итог: если в инвентаризации нет колонки «версия прошивки» для коммутаторов, значит там есть устройства, которые никто не обновлял с момента установки.
#skills #zyxel #network #switch #cve #kev #sysadmin #admin_future
Коллеги, неуправляемые и «умные» коммутаторы — самый забытый класс устройств в инвентаризации. Их не обновляют годами, потому что «они просто работают».
ФАКТЫ:
CVE-2026-7273, CVSS 8.8, stack-based buffer overflow
Атакующий без аутентификации, находящийся в той же сети, отправляет специальный HTTP-запрос на веб-интерфейс и выполняет команды ОС.
Модели: GS1900-8, -8HP, -10HP, -16, -24, -24E, -24EP, -24HPv2, -48, -48HPv2
Уязвимы прошивки 2.90(xxxx.1)C0 и старше, исправлено в 2.90(xxxx.2)C0
Эксплуатация с 17 августа 2026: 996 коммутаторов в 48 странах
После взлома атакующие скачивают по TFTP скрипты-сборщики конфигураций и учётных данных
CISA KEV: с 21 сентября
ИНТЕРПРЕТАЦИЯ (моя):
996 устройств в 48 странах при «LAN-based» векторе означают одно из двух: либо веб-интерфейс торчит в интернет, либо атакующий уже был внутри и использовал коммутатор для закрепления. Оба варианта — про гигиену management plane, а не про Zyxel.
Скомпрометированный коммутатор — идеальная точка: он видит весь трафик сегмента, EDR на нём не стоит, в SIEM он почти никогда не логирует.
bash
# Найти GS1900 в management-подсети
nmap -p 80,443 --open --script http-title 10.0.0.0/24 | grep -B4 -i "GS1900"
# TFTP-трафик от коммутаторов (на шлюзе или зеркале порта)
tcpdump -ni any 'udp port 69'
# Проверка из внешнего сегмента: веб-интерфейс коммутаторов не должен отвечать
nmap -p 80,443 -Pn <IP_коммутатора>
MANAGEMENT PLANE — МИНИМУМ:
□ Управление коммутаторами — только из выделенного VLAN, ACL на самом коммутаторе
□ Веб-интерфейс выключен там, где хватает SSH/CLI
□ Исходящий трафик от коммутаторов запрещён, кроме NTP, syslog и сервера обновлений. TFTP наружу — однозначно нет
□ Syslog с коммутаторов → в SIEM
□ Коммутаторы — в реестре прошивок наравне с серверами
Итог: если в инвентаризации нет колонки «версия прошивки» для коммутаторов, значит там есть устройства, которые никто не обновлял с момента установки.
#skills #zyxel #network #switch #cve #kev #sysadmin #admin_future
🧠 Skills: Aurora шифрует ESXi. AI на разведке, но цель сдаёт обычный LDAP-запрос
Коллеги, разбор свежей тактики вымогателей, который напрямую касается каждого, кто держит виртуализацию — будь то VMware ESXi, vCenter или Proxmox.
📌 ФАКТЫ (по свежему отчёту Gambit Security)
Кампания Aurora Ransomware: две волны атак в 2026 году на бизнес в Европе, США и Израиле.
AI в роли Co-pilot злоумышленника: оператор использовал Cursor Agent (на базе Claude Sonnet) для автоматизации рутины — генерации конфигов
Операционная дисциплина: атакующий осознанно выставил агенту жесткие рамки — никаких DCSync, без локаута аккаунтов, без регистрации новых машин в домене. Задача — нулевой шум в SIEM.
Как находили виртуализацию: самописный модуль NetExec (
Удар: Linux-бинарник шифровальщика с флагом
💡 В ЧЁМ СУТЬ
🛠 АУДИТ БЕЗОПАСНОСТИ
1. Проверяем хост ESXi (по SSH):
Bash
2. Сканируем из пользовательского сегмента (быстрый smoke-тест):
Bash
🛡 БАЗОВЫЙ ЧЕКЛИСТ ЗАЩИТЫ ГИПЕРВИЗОРОВ
Изолированный Out-of-Band / Management VLAN: интерфейсы управления ESXi, vCenter и Proxmox VE не должны маршрутизироваться в клиентские подсети. Доступ — строго через выделенный Jump-хост с MFA.
Никакого прямого членства в Active Directory: гипервизорам не место в корпоративном домене. Если ESXi все еще там — срочно проверяйте группу
Харденинг хостов: флаг
Неизменяемые (Immutable) бэкапы: резервные копии должны лежать в изолированном пуле (WORM/S3 Object Lock/air-gapped), к которому нет и не может быть доступа с доменными учетками.
Гипервизор — самая дорогая и желанная точка отказа в инфраструктуре. Одна команда — и ложится всё предприятие разом. Проектируйте доступ к нему так, словно злоумышленник уже захватил доменную рабочую станцию.
#skills #esxi #vmware #proxmox #ransomware #virtualization #sysadmin #admin_future
Коллеги, разбор свежей тактики вымогателей, который напрямую касается каждого, кто держит виртуализацию — будь то VMware ESXi, vCenter или Proxmox.
📌 ФАКТЫ (по свежему отчёту Gambit Security)
Кампания Aurora Ransomware: две волны атак в 2026 году на бизнес в Европе, США и Израиле.
AI в роли Co-pilot злоумышленника: оператор использовал Cursor Agent (на базе Claude Sonnet) для автоматизации рутины — генерации конфигов
proxychains/VPN, парсинга выдачи Nmap и NetExec, разведки Active Directory, NTLM relay и атак на AD CS.Операционная дисциплина: атакующий осознанно выставил агенту жесткие рамки — никаких DCSync, без локаута аккаунтов, без регистрации новых машин в домене. Задача — нулевой шум в SIEM.
Как находили виртуализацию: самописный модуль NetExec (
esxi_finder.py) вытягивал список хостов через стандартные LDAP-запросы, опрашивал порты 443 и 902, а затем по TLS-сертификату однозначно детектировал гипервизоры и vCenter.Удар: Linux-бинарник шифровальщика с флагом
-esxi тушит виртуальные машины через штатный esxcli и зашифровывает диски (ChaCha20 + RSA-4096).💡 В ЧЁМ СУТЬ
ИИ здесь не взламывает квантовым алгоритмом — он просто снимает рутину и ускоряет рекогносцировку. Архитектурная дыра ровно та же, что и 5 лет назад: гипервизоры видны из пользовательского сегмента или привязаны к общему AD. Если порт виден наружу, его найдут и без нейросетей.
🛠 АУДИТ БЕЗОПАСНОСТИ
1. Проверяем хост ESXi (по SSH):
Bash
# Проверить, активен ли Lockdown Mode
vim-cmd -U dcui vimsvc/auth/lockdown_is_enabled
# Ограничение белых списков IP для SSH и веб-морды
esxcli network firewall ruleset allowedip list --ruleset-id sshServer
esxcli network firewall ruleset allowedip list --ruleset-id webAccess
# Блокировка запуска неподписанных бинарников (дропает чужой шифровальщик)
esxcli system settings encryption get
# Ревизия локальных учетных записей
esxcli system account list
2. Сканируем из пользовательского сегмента (быстрый smoke-тест):
Bash
nmap -Pn -p 443,902,8006 <подсеть_гипервизоров>
# Порты должны быть отфильтрованы в глухую! (8006 — для Proxmox VE)
🛡 БАЗОВЫЙ ЧЕКЛИСТ ЗАЩИТЫ ГИПЕРВИЗОРОВ
Изолированный Out-of-Band / Management VLAN: интерфейсы управления ESXi, vCenter и Proxmox VE не должны маршрутизироваться в клиентские подсети. Доступ — строго через выделенный Jump-хост с MFA.
Никакого прямого членства в Active Directory: гипервизорам не место в корпоративном домене. Если ESXi все еще там — срочно проверяйте группу
ESX Admins и закрывайте дыру CVE-2024-37085.Харденинг хостов: флаг
execInstalledOnly включен, SSH заглушен на уровне службы и поднимается только под регламентные работы.Неизменяемые (Immutable) бэкапы: резервные копии должны лежать в изолированном пуле (WORM/S3 Object Lock/air-gapped), к которому нет и не может быть доступа с доменными учетками.
Гипервизор — самая дорогая и желанная точка отказа в инфраструктуре. Одна команда — и ложится всё предприятие разом. Проектируйте доступ к нему так, словно злоумышленник уже захватил доменную рабочую станцию.
#skills #esxi #vmware #proxmox #ransomware #virtualization #sysadmin #admin_future
🧠 Skills: Branch Target Reuse — свежий вариант Spectre v2 крадёт хеш root за 3–5 минут. Дежурный sysctl не спасёт
Коллеги, среда — время хардкорных разборов. Сегодня погружаемся в фундаментальные проблемы кремния, которые нельзя решить галочкой в GUI.
📌 ФАКТЫ (исследование VUsec + Scuola Superiore Sant'Anna)
Механика Branch Target Reuse: когда JIT-компилятор переиспользует память под новые инструкции, аппаратный предсказатель ветвлений процессора (Branch Target Buffer) продолжает помнить старые адреса ветвлений. Атакующий манипулирует спекулятивным исполнением и читает память соседних процессов.
Масштаб по кремнию: уязвимы актуальные архитектуры Intel, AMD и Arm. На уровне микроархитектуры современных CPU банально нет механизма мгновенной синхронизации предсказателя с динамически генерируемым кодом.
PoC на Linux: непривилегированный пользователь через классический cBPF считывает хеш пароля root прямо из процесса
Идентификаторы:
Софт под ударом: затронуты не только ядра ОС, но и рантаймы: Oracle уже рандомизирует кэш кода в GraalVM, а Mozilla экстренно ужесточает изоляцию сайтов в SpiderMonkey/Firefox. Патчи для ядра Linux уже в апстриме.
⚠️ ГЛАВНЫЙ НЮАНС (почему старые рецепты не работают)
Многие админы выставляют
🛠 АУДИТ ХОСТА ЧЕРЕЗ ТЕРМИНАЛ
Bash
💡 В ЧЁМ СУТЬ И ГДЕ РЕАЛЬНЫЙ РИСК
Атака локальная, и наружу улетает хеш, а не открытый пароль.
Где риск минимален: на изолированном сервере или одиночном гипервизоре, где в консоль ходите только вы по ключам.
Где горит: любые многопользовательские среды, где чужой/недоверенный код запускается рядом с привилегированными процессами:
Общие терминальные Linux-серверы и VDI;
CI/CD раннеры с общим ядром (shared Docker-хосты без изоляции гипервизором);
Jump-хосты и бастионы с пулом из десятков инженеров.
Если пароль root у вас до сих пор захэширован в устаревший MD5 или сотрудники авторизуются через интерактивный
🛡 ЧЕКЛИСТ ДЕЙСТВИЙ
Обновить ядра: в первую очередь накатить свежие сборки ядра на shared-хостах, терминалах и сборочных нодах CI/CD.
Аудит
Отказ от
#skills #linux #kernel #security #spectre #cpu #bpf #cve #sysadmin #admin_future
Коллеги, среда — время хардкорных разборов. Сегодня погружаемся в фундаментальные проблемы кремния, которые нельзя решить галочкой в GUI.
📌 ФАКТЫ (исследование VUsec + Scuola Superiore Sant'Anna)
Механика Branch Target Reuse: когда JIT-компилятор переиспользует память под новые инструкции, аппаратный предсказатель ветвлений процессора (Branch Target Buffer) продолжает помнить старые адреса ветвлений. Атакующий манипулирует спекулятивным исполнением и читает память соседних процессов.
Масштаб по кремнию: уязвимы актуальные архитектуры Intel, AMD и Arm. На уровне микроархитектуры современных CPU банально нет механизма мгновенной синхронизации предсказателя с динамически генерируемым кодом.
PoC на Linux: непривилегированный пользователь через классический cBPF считывает хеш пароля root прямо из процесса
su. Скорость утечки — около 8 байт/с (~3 минуты на ядрах Raptor Cove и ~5 минут на Lion Cove).Идентификаторы:
CVE-2026-64507 — внедрение IBPB-flush при выделении памяти под BPF JIT.CVE-2026-64508 — защита от JIT spraying.Софт под ударом: затронуты не только ядра ОС, но и рантаймы: Oracle уже рандомизирует кэш кода в GraalVM, а Mozilla экстренно ужесточает изоляцию сайтов в SpiderMonkey/Firefox. Патчи для ядра Linux уже в апстриме.
⚠️ ГЛАВНЫЙ НЮАНС (почему старые рецепты не работают)
Многие админы выставляют
kernel.unprivileged_bpf_disabled, будучи уверенными, что закрыли тему. Но этот параметр режет только современный eBPF.Вектор эксплойта опирается на классический cBPF, который по умолчанию открыт любому пользователю системы через штатные сокет-фильтры (
SO_ATTACH_FILTER).
Режим
net.core.bpf_jit_harden=2(constant blinding) исследователи также обошли: атака замедляется, но всё равно занимает смешные 5 минут. Единственное реальное лечение — ядро с патчем.
🛠 АУДИТ ХОСТА ЧЕРЕЗ ТЕРМИНАЛ
Bash
# 1. Смотрим текущую версию ядра
uname -r
# 2. Проверяем состояние BPF и механизмов защиты
sysctl net.core.bpf_jit_enable net.core.bpf_jit_harden kernel.unprivileged_bpf_disabled
# 3. Проверяем, можно ли в теории отключить BPF JIT (если =y — флаг зашит намертво)
grep CONFIG_BPF_JIT_ALWAYS_ON /boot/config-$(uname -r)
# 4. Проверяем алгоритм хеша root в /etc/shadow:
# $y$ = yescrypt (хорошо), $6$ = SHA-512 (нормально), $1$ = MD5 (катастрофа)
awk -F: '$1=="root"{print substr($2,1,3)}' /etc/shadow
# 5. Проверяем доступность обновлений ядра в дистрибутиве
apt update && apt list --upgradable 2>/dev/null | grep -E 'linux-image|proxmox-kernel'
💡 В ЧЁМ СУТЬ И ГДЕ РЕАЛЬНЫЙ РИСК
Атака локальная, и наружу улетает хеш, а не открытый пароль.
Где риск минимален: на изолированном сервере или одиночном гипервизоре, где в консоль ходите только вы по ключам.
Где горит: любые многопользовательские среды, где чужой/недоверенный код запускается рядом с привилегированными процессами:
Общие терминальные Linux-серверы и VDI;
CI/CD раннеры с общим ядром (shared Docker-хосты без изоляции гипервизором);
Jump-хосты и бастионы с пулом из десятков инженеров.
Если пароль root у вас до сих пор захэширован в устаревший MD5 или сотрудники авторизуются через интерактивный
su с общим паролем — вам не нужен никакой Spectre, чтобы получить инцидент.🛡 ЧЕКЛИСТ ДЕЙСТВИЙ
Обновить ядра: в первую очередь накатить свежие сборки ядра на shared-хостах, терминалах и сборочных нодах CI/CD.
Аудит
/etc/shadow: убедиться, что пароли хешируются современными функциями (yescrypt или SHA-512), а устаревшие алгоритмы выпилены из PAM.Отказ от
su: окончательно заблокировать прямой вход под root и перевести администрирование на персональные учетки с гранулярным sudo и логированием.#skills #linux #kernel #security #spectre #cpu #bpf #cve #sysadmin #admin_future
🧠 Skills: RC4 в Kerberos окончательно похоронен. Если в AD что-то «само сломалось» с лета — проверяйте это первым
Коллеги, второй разбор на сегодня. Тема не просто горит — она уже сгорела у тех, кто проспал таймлайн обновлений Microsoft. Если сервисы внезапно начали сыпать ошибками аутентификации, дело наверняка в протоколах шифрования.
📌 ФАКТЫ (CVE-2026-20833, этапы выпиливания RC4)
Январь 2026 — Режим аудита: включен мониторинг событий KDCSVC с кодами 201–209 в журнале System без блокировки трафика.
Апрель 2026 — Дефолтный AES: для всех аккаунтов без явно заданных алгоритмов шифрования дефолтом стал AES. Фолбэк на устаревший RC4 был практически отключен.
Июль 2026 — Полный отказ: режим аудита окончательно удален из кода. Параметр реестра
Что ломается: любые учетные записи, у которых атрибут
💥 КТО В ЗОНЕ РИСКА
Сервисные учетки (gMSA / sMSA / обычные пользователи с SPN) с древними паролями: в базе NTDS банально отсутствуют AES-ключи до тех пор, пока учетке не сбросят пароль.
Linux-интеграции и демоны с устаревшими keytab: Samba, прокси-серверы, Java-бэкенды, Tomcat, веб-SSO, где keytab нарезался сто лет назад под RC4 (
Legacy-железо: древние СХД, прошивки принтеров/МФУ и сетевые сканеры с доменной авторизацией.
🛠 ДИАГНОСТИКА ЧЕРЕЗ POWERSHELL
Выполняем на контроллере домена или рабочей станции с RSAT:
PowerShell
🔧 РЕШЕНИЕ ПРОБЛЕМЫ
Включить флаг в реестре для возврата к RC4 больше нельзя — лазейку закрыли. Выход только один: планомерно переводить всё на AES.
PowerShell
💡 В ЧЁМ СУТЬ
План на смену: выгрузить сервисные аккаунты без AES, запланировать смену паролей с владельцами сервисов и пересобрать ключевые keytab-файлы. Это час спокойной работы, который избавит вас от ночного дежурства при падении SSO.
#skills #activedirectory #kerberos #rc4 #aes #security #windows #powershell #sysadmin #admin_future
Коллеги, второй разбор на сегодня. Тема не просто горит — она уже сгорела у тех, кто проспал таймлайн обновлений Microsoft. Если сервисы внезапно начали сыпать ошибками аутентификации, дело наверняка в протоколах шифрования.
📌 ФАКТЫ (CVE-2026-20833, этапы выпиливания RC4)
Январь 2026 — Режим аудита: включен мониторинг событий KDCSVC с кодами 201–209 в журнале System без блокировки трафика.
Апрель 2026 — Дефолтный AES: для всех аккаунтов без явно заданных алгоритмов шифрования дефолтом стал AES. Фолбэк на устаревший RC4 был практически отключен.
Июль 2026 — Полный отказ: режим аудита окончательно удален из кода. Параметр реестра
RC4DefaultDisablementPhase больше не учитывается операционной системой, а фолбэк на RC4 вырезан из протокола на уровне KDC.Что ломается: любые учетные записи, у которых атрибут
msDS-SupportedEncryptionTypes равен 0x4 / 0x7 (только RC4/DES) или вообще не задан, если клиент или сервис не умеют согласовывать AES.💥 КТО В ЗОНЕ РИСКА
Сервисные учетки (gMSA / sMSA / обычные пользователи с SPN) с древними паролями: в базе NTDS банально отсутствуют AES-ключи до тех пор, пока учетке не сбросят пароль.
Linux-интеграции и демоны с устаревшими keytab: Samba, прокси-серверы, Java-бэкенды, Tomcat, веб-SSO, где keytab нарезался сто лет назад под RC4 (
rc4-hmac).Legacy-железо: древние СХД, прошивки принтеров/МФУ и сетевые сканеры с доменной авторизацией.
🛠 ДИАГНОСТИКА ЧЕРЕЗ POWERSHELL
Выполняем на контроллере домена или рабочей станции с RSAT:
PowerShell
# 1. Поиск сервисных учеток (с SPN) без явного AES или застрявших на RC4
Get-ADUser -LDAPFilter '(&(servicePrincipalName=*)(|(!(msDS-SupportedEncryptionTypes=*))(msDS-SupportedEncryptionTypes=4)(msDS-SupportedEncryptionTypes=7)))' `
-Properties servicePrincipalName, msDS-SupportedEncryptionTypes, PasswordLastSet |
Select SamAccountName, msDS-SupportedEncryptionTypes, PasswordLastSet
# 2. Мониторинг запросов билетов с шифрованием RC4 (TicketEncryptionType = 0x17)
Get-WinEvent -LogName Security -MaxEvents 2000 -FilterXPath `
"*[System[EventID=4769] and EventData[Data[@Name='TicketEncryptionType']='0x17']]" |
ForEach-Object { ([xml]$_.ToXml()).Event.EventData.Data |
Where-Object { $_.Name -in 'TargetUserName','ServiceName','IpAddress' } |
ForEach-Object { "$($_.Name)=$($_.'#text')" } } | Select-Object -First 60
# 3. Проверка событий KDC в журнале System (ошибки согласования типов шифрования)
Get-WinEvent -FilterHashtable @{
LogName = 'System';
ProviderName = 'Microsoft-Windows-Kerberos-Key-Distribution-Center';
Id = 201..209
} -MaxEvents 50 -ErrorAction SilentlyContinue
🔧 РЕШЕНИЕ ПРОБЛЕМЫ
Включить флаг в реестре для возврата к RC4 больше нельзя — лазейку закрыли. Выход только один: планомерно переводить всё на AES.
PowerShell
# Шаг 1. Явно разрешаем использование современных типов шифрования
Set-ADUser svc_app -KerberosEncryptionType AES128,AES256
# Шаг 2. ОБЯЗАТЕЛЬНО меняем пароль (только в этот момент генерируются хеши AES!)
Set-ADAccountPassword svc_app -Reset
# Шаг 3. Перевыпускаем keytab для Linux-хостов с поддержкой AES256
# Через ktpass:
# ktpass /princ HTTP/app.corp.local@CORP.LOCAL /pass * /crypto AES256-SHA1 /ptype KRB5_NT_PRINCIPAL /out app.keytab
# Либо через msktutil:
# msktutil --enctypes 0x18 --auto-update
💡 В ЧЁМ СУТЬ
Времени на плавную раскатку больше нет — фолбэка нет физически. Отдельный маркер при ревизии: колонка
PasswordLastSet. Если у сервисной учетки пароль не трогали с 2012 года, то помимо отсутствия AES-ключей вы получаете готовую дыру для атак Kerberoasting с мгновенным подбором слабого хеша в офлайне.
План на смену: выгрузить сервисные аккаунты без AES, запланировать смену паролей с владельцами сервисов и пересобрать ключевые keytab-файлы. Это час спокойной работы, который избавит вас от ночного дежурства при падении SSO.
#skills #activedirectory #kerberos #rc4 #aes #security #windows #powershell #sysadmin #admin_future
Алертинг в SIEM / EDR: повесить триггеры на запуск
#skills #windows #hardening #lolbins #asr #applocker #threathunting #sysadmin #admin_future
mshta.exe, активность интерпретаторов wscript.exe/cscript.exe, а также вызов системных утилит за пределами C:\Windows\System32.#skills #windows #hardening #lolbins #asr #applocker #threathunting #sysadmin #admin_future
🔎 Cisco SD-WAN CVE-2026-76504: замена буквы на
Коллеги, детальный разбор классической архитектурной ошибки, которая с завидной регулярностью всплывает в веб-интерфейсах сетевых appliance и контроллеров управления.
📌 ФАКТЫ
Уязвимость:
Механика обхода (Improper URL Handling): security-прокси проверяет путь запроса до декодирования URL, а само Java-приложение за ним парсит путь уже после декодирования.
Запрос к
Условия эксплуатации: удаленно, без учетных данных. Cisco зафиксировала реальные атаки «в дикой природе» при расследовании тикета в TAC в сентябре.
Workaround отсутствует. Дыра уже в каталоге CISA KEV (дедлайн на закрытие истек 3 октября).
Контекст: это уже четвертая критическая брешь в SD-WAN Manager за 2026 год (после CVE-2026-20182, 20245, 20262). Предыдущие патчи эту дыру не закрывают.
📦 МАТРИЦА ИСПРАВЛЕНИЙ
Plaintext
🛠 ФОРЕНЗИКА И ПРОВЕРКА ЛОГОВ (на ноде vManage)
Bash
Быстрый аудит любого веб-сервиса на расхождение в парсинге URL:
Bash
💡 В ЧЁМ СУТЬ
🛡 ЧЕКЛИСТ ДЕЙСТВИЙ
Экстренный накат патча: обновиться до актуального таргетированного билда (прошлые заплатки бессильны против
Периметральная изоляция: порты
Глубокий аудит логов: просканировать логи
Реакция на инцидент: при обнаружении совпадений снять диагностический бандл
#skills #cisco #sdwan #network #security #authbypass #cve #kev #sysadmin #admin_future
%6a даёт права админа. Как несогласованная URL-нормализация ломает аутентификациюКоллеги, детальный разбор классической архитектурной ошибки, которая с завидной регулярностью всплывает в веб-интерфейсах сетевых appliance и контроллеров управления.
📌 ФАКТЫ
Уязвимость:
CVE-2026-76504, наивысший CVSS 9.8 (Critical), затрагивает API Cisco Catalyst SD-WAN Manager (ранее vManage).Механика обхода (Improper URL Handling): security-прокси проверяет путь запроса до декодирования URL, а само Java-приложение за ним парсит путь уже после декодирования.
Запрос к
POST /%6a_security_check (%6a — hex-код символа j) пролетает мимо фильтра безопасности, попадает в бэкенд как /j_security_check и приводит к мгновенной аутентификации в системе с привилегиями admin / netadmin.Условия эксплуатации: удаленно, без учетных данных. Cisco зафиксировала реальные атаки «в дикой природе» при расследовании тикета в TAC в сентябре.
Workaround отсутствует. Дыра уже в каталоге CISA KEV (дедлайн на закрытие истек 3 октября).
Контекст: это уже четвертая критическая брешь в SD-WAN Manager за 2026 год (после CVE-2026-20182, 20245, 20262). Предыдущие патчи эту дыру не закрывают.
📦 МАТРИЦА ИСПРАВЛЕНИЙ
Plaintext
Ветка Исправленный релиз Ветка Исправленный релиз
──────────────────────────────────────────────────────────────────
20.9 20.9.10.1 20.18 20.18.4.1
20.12 20.12.8.2 26.1 26.1.2.1
20.15 20.15.6.1 26.2 26.2.1
──────────────────────────────────────────────────────────────────
Ветки < 20.9 — официальный EOL (только плановая миграция на 20.9+)
🛠 ФОРЕНЗИКА И ПРОВЕРКА ЛОГОВ (на ноде vManage)
Bash
# 1. Поиск URL-encoded паттернов в логах реверс-прокси
grep -E 'POST /%[0-9a-fA-F]{2}_security_check' \
/var/log/nms/containers/service-proxy/serviceproxy-access.log*
# 2. Аудит вызовов j_security_check и аномалий под служебными учетками viptela-reserved-*
grep -E 'j_security_check|viptela-reserved-' /var/log/nms/vmanage-server.log* | tail -100
Быстрый аудит любого веб-сервиса на расхождение в парсинге URL:
Bash
# Сравниваем HTTP-коды ответа на прямой и URL-encoded запросы
curl -sk -o /dev/null -w 'Декодированный путь: %{http_code}\n' https://<host>/j_security_check
curl -sk -o /dev/null -w 'Экранированный путь (%6a): %{http_code}\n' https://<host>/%6a_security_check
💡 В ЧЁМ СУТЬ
Корень проблемы — CWE-177 (URL Parsing/Discrepancy). Это фундаментальная проблема многослойных архитектур: когда фронтенд-фильтр (WAF, Envoy, Nginx, внутренний контейнер-прокси) и целевой бэкенд (Spring/Tomcat) нормализуют URL по разным стандартам.
Золотое правило: валидатор прав и обработчик бизнес-логики обязаны работать с одинаково канонизированным представлением строки запроса.
Четыре критических обхода авторизации подряд на одном продукте за год — четкий сигнал: консоль управления SD-WAN Manager нельзя считать доверенной по умолчанию, даже если на нее накачены прошлые обновления.
🛡 ЧЕКЛИСТ ДЕЙСТВИЙ
Экстренный накат патча: обновиться до актуального таргетированного билда (прошлые заплатки бессильны против
%6a).Периметральная изоляция: порты
TCP/443 (Web/API), TCP/22 (SSH) и TCP/830 (NETCONF) контроллеров vManage должны быть полностью отрезаны от публичного интернета. Доступ — строго через VPN / выделенный OOB Jump-хост.Глубокий аудит логов: просканировать логи
serviceproxy-access за сентябрь на наличие шестнадцатеричных последовательностей %XX_security_check.Реакция на инцидент: при обнаружении совпадений снять диагностический бандл
request admin-tech и немедленно эскалировать кейс в Cisco TAC.#skills #cisco #sdwan #network #security #authbypass #cve #kev #sysadmin #admin_future
👍1
🧠 Skills: journalctl — 10 команд, которые заменяют
Коллеги, навык недели. Начиная с Debian 12
🛠 10 БАЗОВЫХ КОМАНД
Bash
⚠️ ПРОВЕРЬТЕ ПЕРСИСТЕНТНОСТЬ (сохраняются ли логи после ребута)
Bash
Если каталога
Bash
💡 В ЧЁМ СУТЬ
#skills #linux #systemd #journalctl #debian #troubleshooting #sysadmin #admin_future
grep по /var/logКоллеги, навык недели. Начиная с Debian 12
rsyslog по умолчанию не ставится — классических текстовых логов на свежих инсталляциях может просто не быть. Всё уходит в бинарный журнал systemd-journald.🛠 10 БАЗОВЫХ КОМАНД
Bash
# 1. Только ошибки (от err и выше) с момента текущего старта системы
journalctl -p err -b
# 2. Логи конкретного сервиса за последний час
journalctl -u nginx --since "1 hour ago"
# 3. Режим live-мониторинга (аналог tail -f) по конкретной службе
journalctl -u ssh -f
# 4. Список всех зафиксированных загрузок ОС (с их ID и временными метками)
journalctl --list-boots
# 5. Сообщения ядра (dmesg) за ПРЕДЫДУЩУЮ загрузку (ключевое при анализе падений)
journalctl -k -b -1
# 6. Фильтр по исполняемому файлу в чистом текстовом выводе
journalctl _COMM=sshd -o cat | grep -i 'failed'
# 7. Выборка событий в жестком временном окне
journalctl --since "2026-10-05 09:00" --until "2026-10-05 10:00"
# 8. Просмотр структуры записи со всеми служебными метаполями (для построения точных фильтров)
journalctl -o json-pretty -n 1
# 9. Проверка дискового пространства, занятого журналами прямо сейчас
journalctl --disk-usage
# 10. Ротация и очистка архивов старше 30 дней
journalctl --vacuum-time=30d
⚠️ ПРОВЕРЬТЕ ПЕРСИСТЕНТНОСТЬ (сохраняются ли логи после ребута)
Bash
# Проверка наличия каталога постоянного хранения
ls -d /var/log/journal 2>/dev/null && echo "Логи пишутся на диск" || echo "ВНИМАНИЕ: логи живут только в RAM до ребута!"
# Проверка конфигурации лимитов
grep -E '^(Storage|SystemMaxUse)' /etc/systemd/journald.conf
Если каталога
/var/log/journal нет — журнал по дефолту сбрасывается в tmpfs (RAM). После аварийной перезагрузки расследовать причину сбоя будет физически невозможно:Bash
# Включение постоянного хранения логов на диске
mkdir -p /var/log/journal && systemctl restart systemd-journald
💡 В ЧЁМ СУТЬ
Связка флагов
-b -1и
-p errзакрывает 80% всех типовых инцидентов из серии «почему сервер упал ночью».
Персистентное хранилище на диске с жестко зафиксированным лимитом
SystemMaxUseв
journald.conf— обязательный базовый харденинг, который настраивается сразу после установки ОС.
#skills #linux #systemd #journalctl #debian #troubleshooting #sysadmin #admin_future
👍1
⏱️ Ubuntu 27.04 переходит на ntpd-rs. Повод проверить, кто вообще задаёт время в вашей сети
Коллеги, среда. Время — сервис, о котором вспоминают, только когда внезапно разваливается аутентификация в Kerberos.
📌 ФАКТЫ
Планы Canonical: в релизе Ubuntu 26.10 пакет
Архитектурная причина: переход на memory-safe реализацию протокола NTP на языке Rust со встроенной поддержкой NTS (Network Time Security).
Критичность точного времени: от стабильности часов напрямую зависят валидация цепочек TLS-сертификатов, работа тикетов Kerberos, корреляция меток в журналах SIEM и сквозной аудит событий.
🛠 ПРОВЕРКА ЗА МИНУТУ
1. Хосты под управлением Linux
Bash
2. Инфраструктура Windows / Active Directory
PowerShell
⚠️ ТИПОВЫЕ ОШИБКИ В СЕТЯХ
Неверный источник на контроллере: источник у DC определяется как
Нарушение иерархии FSMO: внешний стратум NTP настроен не на держателе роли PDC Emulator, а на произвольном контроллере домена.
Конфликт синхронизации на виртуальных DC: на виртуальных машинах контроллеров домена оставлена включённой интеграция времени с хостом виртуализации (Integration Services / VMware Tools Time Sync).
💡 В ЧЁМ СУТЬ
#skills #ntp #time #activedirectory #kerberos #ubuntu #linux #sysadmin #admin_future
Коллеги, среда. Время — сервис, о котором вспоминают, только когда внезапно разваливается аутентификация в Kerberos.
📌 ФАКТЫ
Планы Canonical: в релизе Ubuntu 26.10 пакет
ntpd-rs включён в архив для открытого тестирования, а начиная с Ubuntu 27.04 он станет системной службой времени по умолчанию.Архитектурная причина: переход на memory-safe реализацию протокола NTP на языке Rust со встроенной поддержкой NTS (Network Time Security).
Критичность точного времени: от стабильности часов напрямую зависят валидация цепочек TLS-сертификатов, работа тикетов Kerberos, корреляция меток в журналах SIEM и сквозной аудит событий.
🛠 ПРОВЕРКА ЗА МИНУТУ
1. Хосты под управлением Linux
Bash
# Общий статус службы времени и синхронизации
timedatectl
# Текущее смещение, стратум и активный источник (chrony)
chronyc tracking
# Детальный список апстрим-серверов и их состояние
chronyc sources -v
2. Инфраструктура Windows / Active Directory
PowerShell
# Общий статус службы Windows Time и текущее смещение
w32tm /query /status
# Фактический источник синхронизации для хоста
w32tm /query /source
# Замер расхождения времени с контроллером домена в реальном времени
w32tm /stripchart /computer:dc01 /samples:5 /dataonly
⚠️ ТИПОВЫЕ ОШИБКИ В СЕТЯХ
Неверный источник на контроллере: источник у DC определяется как
Local CMOS Clock или VM IC Time Synchronization Provider — в итоге время всего домена задаётся батарейкой BIOS материнской платы либо дрейфующими часами гипервизора.Нарушение иерархии FSMO: внешний стратум NTP настроен не на держателе роли PDC Emulator, а на произвольном контроллере домена.
Конфликт синхронизации на виртуальных DC: на виртуальных машинах контроллеров домена оставлена включённой интеграция времени с хостом виртуализации (Integration Services / VMware Tools Time Sync).
💡 В ЧЁМ СУТЬ
Протокол Kerberos по умолчанию допускает расхождение часов не более 5 минут.
Иерархия времени в инфраструктуре должна быть строго монолитной:
Внешний доверенный NTP-пул → PDC Emulator → остальные DC домена → рядовые серверы и клиенты.
Любая самодеятельность в этой цепочке превращается в причину «плавающих» и трудноуловимых сбоев входа в домен.
#skills #ntp #time #activedirectory #kerberos #ubuntu #linux #sysadmin #admin_future
🧠 Skills: IBM и Red Hat нашли 400+ неизвестных уязвимостей в Java-библиотеках. А вы знаете, сколько JAR-файлов у вас на серверах?
Коллеги, важная новость из мира Enterprise Open Source — отличный повод прокачать навык инвентаризации зависимостей в инфраструктуре.
📌 ФАКТЫ
Программа Lightwell: совместная инициатива IBM и Red Hat закрыла более 400 ранее неизвестных уязвимостей в популярных Java-библиотеках.
Главный фокус — глубокий бэкпорт: секьюрити-патчи создаются точечно под те устаревшие версии библиотек, которые реально крутятся на продакшене у клиентов, избавляя бизнес от риска сломать прод мажорным апгрейдом.
Сервис Clearinghouse: корпоративные заказчики могут централизованно отправлять свои списки используемых зависимостей на приоритетный секьюрити-аудит.
Текущий статус: точные названия библиотек и идентификаторы CVE пока держатся под эмбарго — исправления постепенно уходят в апстрим по процедуре ответственного раскрытия (Coordinated Vulnerability Disclosure).
🛠 ИНВЕНТАРИЗАЦИЯ JAVA НА СЕРВЕРАХ ЗА 5 МИНУТ
Bash
💡 В ЧЁМ СУТЬ
#skills #java #sbom #supplychain #security #devops #linux #sysadmin #admin_future
Коллеги, важная новость из мира Enterprise Open Source — отличный повод прокачать навык инвентаризации зависимостей в инфраструктуре.
📌 ФАКТЫ
Программа Lightwell: совместная инициатива IBM и Red Hat закрыла более 400 ранее неизвестных уязвимостей в популярных Java-библиотеках.
Главный фокус — глубокий бэкпорт: секьюрити-патчи создаются точечно под те устаревшие версии библиотек, которые реально крутятся на продакшене у клиентов, избавляя бизнес от риска сломать прод мажорным апгрейдом.
Сервис Clearinghouse: корпоративные заказчики могут централизованно отправлять свои списки используемых зависимостей на приоритетный секьюрити-аудит.
Текущий статус: точные названия библиотек и идентификаторы CVE пока держатся под эмбарго — исправления постепенно уходят в апстрим по процедуре ответственного раскрытия (Coordinated Vulnerability Disclosure).
🛠 ИНВЕНТАРИЗАЦИЯ JAVA НА СЕРВЕРАХ ЗА 5 МИНУТ
Bash
# 1. Считаем общее число JAR-файлов в локальной файловой системе (без сетевых шар)
find / -xdev -name '*.jar' 2>/dev/null | wc -l
# 2. Топ каталогов с наибольшей концентрацией JAR (где прячется JVM-софт)
find / -xdev -name '*.jar' 2>/dev/null | xargs -r dirname | sort | uniq -c | sort -rn | head
# 3. Инспекция «толстых» JAR/fat-JAR (Spring Boot) без полной распаковки архива
unzip -l app.jar | grep -E 'BOOT-INF/lib/.*\.jar' | awk '{print $4}'
# 4. Сборка полного SBOM (Software Bill of Materials) на лету через Syft
syft dir:/opt -o table | grep -i java-archive
💡 В ЧЁМ СУТЬ
Java прячется даже там, где вы её не ждёте:
В экосистеме 1С:Предприятие (1C:EDT, Сервер взаимодействия);
В CI/CD и мониторинге (Jenkins, Elasticsearch, Logstash);
Во внутренних системах документации (Confluence, Jira);
Во встроенных веб-консолях управления СХД, KVM и ИБП.
Урок Log4Shell показал: найти уязвимый компонент на сотне серверов занимает в разы больше времени, чем накатить патч. Снятый заранее SBOM превращает неделю судорожного поиска в один моментальный
grep.
#skills #java #sbom #supplychain #security #devops #linux #sysadmin #admin_future
🧠 Skills: EXT4 объявила
Коллеги, пятница. Короткая проверка на две минуты в терминале, которая убережёт от неприятных сюрпризов при будущих апгрейдах ядра.
📌 ФАКТЫ
Статус Deprecated: начиная с ядра Linux 7.3 режим монтирования
Таймлайн удаления: полное выпиливание кода запланировано на начало 2028 года (аккурат после стабилизации LTS-ветки 2027 года).
Что это за режим: в журнал транзакций пишутся не только метаданные файловой системы, но и само тело файлов (данные). Это давало максимальную защиту от повреждений ценой катастрофической просадки пропускной способности (двойная запись). Режим наглухо отключает Delayed Allocation и Direct I/O.
По умолчанию EXT4 работает в режиме
🛠 БЫСТРЫЙ ЧЕК СВОИХ СИСТЕМ
Bash
💡 В ЧЁМ СУТЬ
#skills #linux #ext4 #kernel #filesystem #storage #sysadmin #admin_future
data=journal устаревшим. Удаление — в 2028 году. Проверьте свои маунтыКоллеги, пятница. Короткая проверка на две минуты в терминале, которая убережёт от неприятных сюрпризов при будущих апгрейдах ядра.
📌 ФАКТЫ
Статус Deprecated: начиная с ядра Linux 7.3 режим монтирования
data=journal в файловой системе EXT4 официально помечен как устаревший.Таймлайн удаления: полное выпиливание кода запланировано на начало 2028 года (аккурат после стабилизации LTS-ветки 2027 года).
Что это за режим: в журнал транзакций пишутся не только метаданные файловой системы, но и само тело файлов (данные). Это давало максимальную защиту от повреждений ценой катастрофической просадки пропускной способности (двойная запись). Режим наглухо отключает Delayed Allocation и Direct I/O.
По умолчанию EXT4 работает в режиме
data=ordered (журналируются только метаданные) — его эти изменения никак не затрагивают.🛠 БЫСТРЫЙ ЧЕК СВОИХ СИСТЕМ
Bash
# 1. Смотрим, смонтировано ли что-то прямо сейчас в режиме data=journal
findmnt -t ext4 -o TARGET,SOURCE,OPTIONS | grep "data=journal"
# 2. Проверяем статическую конфигурацию в fstab
grep -n 'data=journal' /etc/fstab
# 3. Проверяем, не зашит ли режим в суперблок раздела как опция по умолчанию
for d in $(findmnt -t ext4 -no SOURCE | sort -u); do
echo "Устройство $d:"
tune2fs -l "$d" 2>/dev/null | grep -i 'default mount options'
done
⚠️ Если в выводе суперблока есть параметр
journal_data— режим активируется ядром по умолчанию при каждом монтировании, даже если в
/etc/fstabон явно не указан!
💡 В ЧЁМ СУТЬ
Опцию
data=journalисторически любили включать «для железобетонной надёжности» под базы данных, транзакционные логи или серверы 1С:Предприятия.
На практике за это платили колоссальным падением производительности дисковой подсистемы и деградацией SSD, получая взамен мнимую безопасность. Реальную сохранность данных дают качественные ИБП, корректная работа приложения с системным вызовом
fsync()и регулярные проверенные бэкапы, а не костыли на уровне драйвера ФС.
Запас времени на миграцию ещё есть, но найти и перевести такие разделы в стандартный
data=orderedлучше уже сейчас.
#skills #linux #ext4 #kernel #filesystem #storage #sysadmin #admin_future
🐍 Python 3.15 вышел: UTF-8 по умолчанию может сломать ваши скрипты на Windows
Коллеги, важный релиз для всех, кто пишет скрипты автоматизации, интеграции и парсеры системных логов на Python.
📌 ФАКТЫ
Стабильный релиз: 9 октября представлена финальная ветка Python 3.15.
UTF-8 Mode по умолчанию (PEP 686): встроенная функция
Ленивые импорты (PEP 810): синтаксис вида
Экспериментальный JIT: прирост производительности +7–8% на архитектуре x86_64 под Linux.
Сэмплирующий профилировщик Tachyon: низкоуровневый профилировщик без остановки рантайма. Умеет аттачиться к уже запущенному production-процессу и строить flame graph узких мест.
Новые базовые типы: добавлены нативные
⚠️ ГДЕ ВЫСТРЕЛИТ НА WINDOWS
Исторически на русскоязычных Windows-серверах и рабочих станциях
После обновления интерпретатора до 3.15:
Выгрузки отчетов, реестров и прайсов из 1С:Предприятия;
Экспортированные CSV-таблицы из классического Excel;
Текстовые журналы старых служб, конфиги и
при попытке прочитать их «по старинке» (
🛠 КАК ПРАВИЛЬНО ОБРАБАТЫВАТЬ КОДИРОВКИ
1. Явная фиксация кодировки в Python
Python
2. Временный откат поведения через переменные окружения
PowerShell
3. Экспресс-аудит репозитория скриптов перед обновлением Python
Bash
💡 В ЧЁМ СУТЬ
#skills #python #automation #windows #1c #linux #devops #sysadmin #admin_future
Коллеги, важный релиз для всех, кто пишет скрипты автоматизации, интеграции и парсеры системных логов на Python.
📌 ФАКТЫ
Стабильный релиз: 9 октября представлена финальная ветка Python 3.15.
UTF-8 Mode по умолчанию (PEP 686): встроенная функция
open() без явного параметра encoding теперь всегда открывает файлы в кодировке UTF-8, игнорируя региональные параметры операционной системы (locale.getencoding()).Ленивые импорты (PEP 810): синтаксис вида
lazy import json — модуль парсится и загружается в память только при первом фактическом вызове атрибута (включается строго явно флагом или директивой). Существенно срезает время холодного старта CLI-утилит.Экспериментальный JIT: прирост производительности +7–8% на архитектуре x86_64 под Linux.
Сэмплирующий профилировщик Tachyon: низкоуровневый профилировщик без остановки рантайма. Умеет аттачиться к уже запущенному production-процессу и строить flame graph узких мест.
Новые базовые типы: добавлены нативные
frozendict (неизменяемый словарь) и sentinel (удобные уникальные маркеры-заглушки вместо object()).⚠️ ГДЕ ВЫСТРЕЛИТ НА WINDOWS
Исторически на русскоязычных Windows-серверах и рабочих станциях
open() по умолчанию поднимал кодировку CP1251 (ANSI) для файлов и CP866 (OEM) для консольных утилит.После обновления интерпретатора до 3.15:
Выгрузки отчетов, реестров и прайсов из 1С:Предприятия;
Экспортированные CSV-таблицы из классического Excel;
Текстовые журналы старых служб, конфиги и
.bat/.cmd скрипты в кодировке ANSIпри попытке прочитать их «по старинке» (
open('file.txt')) мгновенно уронят процесс с ошибкой UnicodeDecodeError: 'utf-8' codec can't decode byte... либо тихо запишут кракозябры при сохранении.🛠 КАК ПРАВИЛЬНО ОБРАБАТЫВАТЬ КОДИРОВКИ
1. Явная фиксация кодировки в Python
Python
# Чтение локальных Windows-выгрузок (1С, Excel, старые сервисы)
with open('export_1c.csv', mode='r', encoding='cp1251') as f:
data = f.read()
# Корректный перехват stdout системных CLI-команд Windows (ipconfig, ping, netstat)
import subprocess
res = subprocess.run(
['ipconfig', '/all'],
capture_output=True,
encoding='cp866',
check=True
)
print(res.stdout)
2. Временный откат поведения через переменные окружения
PowerShell
# Принудительное отключение UTF-8 режима для конкретного сеанса PowerShell
$env:PYTHONUTF8 = '0'
python automation_script.py
3. Экспресс-аудит репозитория скриптов перед обновлением Python
Bash
# Ищем потенциально опасные вызовы open() без аргумента encoding в проекте
grep -rnE "open\([^)]*\)" --include="*.py" . | grep -v "encoding="
💡 В ЧЁМ СУТЬ
Явный параметр
encoding=в каждом вызове
open()— базовый стандарт инженерной гигиены, делающий скрипт полностью переносимым между Windows Server, Debian/Ubuntu и любыми версиями рантайма.
Перед тем как обновлять глобальный Python на серверах автоматизации или в контейнерах сборщиков, прогоните аудит кода регуляркой выше.
#skills #python #automation #windows #1c #linux #devops #sysadmin #admin_future
📧 Skills: 5 RCE в Outlook с CVSS 9.8 — достаточно открыть письмо в области чтения. Проверяем версию Office по всему парку
Коллеги, разбираем детально самый неприятный и опасный блок октябрьского Patch Tuesday.
📌 ФАКТЫ
Идентификаторы уязвимостей:
Критичность: максимальный базовый балл CVSS 9.8 (Remote Code Execution, класс — классические переполнения буфера в парсерах форматов сообщений).
Вектор атаки — Preview Pane (Zero-Click): по официальному бюллетеню безопасности Microsoft, эксплуатация инициируется автоматически при отображении письма в области предварительного просмотра (Reading Pane) — пользователю не нужно открывать вложения или переходить по ссылкам.
Затронутые платформы: почтовые клиенты Outlook в составе Microsoft 365 Apps for enterprise, Office LTSC 2021 и Office LTSC 2024 (как под Windows, так и под macOS). Для двух уязвимостей патчи под Mac LTSC задержатся до конца месяца.
Статус эксплуатации: в дикой природе активных эксплойтов пока не зафиксировано («Exploitation Less Likely»).
Главный риск: обходных путей (workarounds) и изолирующих настроек реестра вендор не предоставил — единственным методом защиты является установка апдейта сборок Office.
🛠 ИНВЕНТАРИЗАЦИЯ И ПРИНУДИТЕЛЬНЫЙ ПУШ ОБНОВЛЕНИЙ (Click-to-Run)
В большинстве сетей Microsoft 365 Apps и Office 2021/2024 развернуты по модели Click-to-Run (C2R), минуя классический каталог WSUS:
PowerShell
💡 В ЧЁМ СУТЬ ДЛЯ СИСАДМИНА
#skills #outlook #office #security #cve #powershell #patchmanagement #sysadmin #admin_future
Коллеги, разбираем детально самый неприятный и опасный блок октябрьского Patch Tuesday.
📌 ФАКТЫ
Идентификаторы уязвимостей:
CVE-2026-88156, CVE-2026-97016, CVE-2026-70291, CVE-2026-70242, CVE-2026-97749.Критичность: максимальный базовый балл CVSS 9.8 (Remote Code Execution, класс — классические переполнения буфера в парсерах форматов сообщений).
Вектор атаки — Preview Pane (Zero-Click): по официальному бюллетеню безопасности Microsoft, эксплуатация инициируется автоматически при отображении письма в области предварительного просмотра (Reading Pane) — пользователю не нужно открывать вложения или переходить по ссылкам.
Затронутые платформы: почтовые клиенты Outlook в составе Microsoft 365 Apps for enterprise, Office LTSC 2021 и Office LTSC 2024 (как под Windows, так и под macOS). Для двух уязвимостей патчи под Mac LTSC задержатся до конца месяца.
Статус эксплуатации: в дикой природе активных эксплойтов пока не зафиксировано («Exploitation Less Likely»).
Главный риск: обходных путей (workarounds) и изолирующих настроек реестра вендор не предоставил — единственным методом защиты является установка апдейта сборок Office.
🛠 ИНВЕНТАРИЗАЦИЯ И ПРИНУДИТЕЛЬНЫЙ ПУШ ОБНОВЛЕНИЙ (Click-to-Run)
В большинстве сетей Microsoft 365 Apps и Office 2021/2024 развернуты по модели Click-to-Run (C2R), минуя классический каталог WSUS:
PowerShell
# 1. Проверка текущей версии, CDN-источника и статуса автообновлений локально
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration' |
Select-Object VersionToReport, CDNBaseUrl, UpdatesEnabled
# 2. Массовая инвентаризация версий Office по доменным рабочим станциям через WinRM
$pcs = (Get-ADComputer -Filter 'OperatingSystem -like "*Windows 1*" -and Enabled -eq $true').Name
Invoke-Command -ComputerName $pcs -ErrorAction SilentlyContinue -ScriptBlock {
$c2r = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration' -ErrorAction SilentlyContinue
if ($c2r) {
[PSCustomObject]@{
Version = $c2r.VersionToReport
Enabled = $c2r.UpdatesEnabled
}
}
} | Select-Object PSComputerName, @{N='OfficeVersion'; E={$_.Version}}, @{N='UpdatesActive'; E={$_.Enabled}} |
Sort-Object OfficeVersion
# 3. Принудительный старт тихой фоновой загрузки и установки обновлений на клиенте
$c2rClient = "$env:CommonProgramFiles\microsoft shared\ClickToRun\OfficeC2RClient.exe"
if (Test-Path $c2rClient) {
Start-Process -FilePath $c2rClient -ArgumentList '/update user displaylevel=false'
}
💡 В ЧЁМ СУТЬ ДЛЯ СИСАДМИНА
Office C2R часто существует обособленно от централизованного патч-менеджмента ОС и тихо обновляется из CDN Microsoft — ровно до тех пор, пока ключ
UpdatesEnabledне оказывается отключен.
Часто это происходит при развертывании машин из старых кастомных образов, после оптимизационных твикеров или если обновления замораживали локально, «чтобы интерфейс не дёргался посреди рабочего дня».
При RCE через Reading Pane со скорингом 9.8 любая рабочая станция со старой сборкой Outlook внутри корпоративной сети превращается в открытый плацдарм для закрепления через одно-единственное входящее письмо. Скрипт выше выявляет отставшие машины за пару минут.
#skills #outlook #office #security #cve #powershell #patchmanagement #sysadmin #admin_future
🧠 Skills: Rust coreutils добрались до
Коллеги, навык выходного дня — короткий и полезный.
📌 ФАКТЫ
В Ubuntu 26.04 LTS большинство утилит coreutils уже работает на uutils (переписаны на Rust)
В 26.10 к ним добавились самые «опасные» в скриптах:
Цель Canonical — безопасность памяти. Но любая переписанная утилита может по-другому обрабатывать редкие флаги, сообщения об ошибках и граничные случаи
🛠 ЧЬИ У ВАС УТИЛИТЫ
Bash
🛠 ПРОГОН СКРИПТОВ В КОНТЕЙНЕРЕ
Bash
⚠️ НА ЧТО СМОТРЕТЬ
Парсинг вывода
Проверки по тексту ошибок (
Редкие флаги
💡 В ЧЁМ СУТЬ
#skills #linux #bash #ubuntu #rust #coreutils #sysadmin #admin_future
cp, mv и rm. Как проверить, что ваши скрипты не сломаютсяКоллеги, навык выходного дня — короткий и полезный.
📌 ФАКТЫ
В Ubuntu 26.04 LTS большинство утилит coreutils уже работает на uutils (переписаны на Rust)
В 26.10 к ним добавились самые «опасные» в скриптах:
cp, mv, rmЦель Canonical — безопасность памяти. Но любая переписанная утилита может по-другому обрабатывать редкие флаги, сообщения об ошибках и граничные случаи
🛠 ЧЬИ У ВАС УТИЛИТЫ
Bash
cp --version | head -1 # «uutils coreutils» или «GNU coreutils»
ls -l "$(command -v cp)" # куда ведёт бинарь
🛠 ПРОГОН СКРИПТОВ В КОНТЕЙНЕРЕ
Bash
# Чистая 26.10 рядом, ничего не ломая на сервере
docker run --rm -it -v "$PWD/scripts:/scripts:ro" ubuntu:26.10 bash
# внутри: прогоняем скрипты на тестовых данных
bash -x /scripts/backup.sh
⚠️ НА ЧТО СМОТРЕТЬ
Парсинг вывода
ls, df, du, stat через awk/cut — формат может отличатьсяПроверки по тексту ошибок (
grep 'No such file')Редкие флаги
cp (--reflink, --preserve=..., --sparse)💡 В ЧЁМ СУТЬ
Хороший скрипт проверяет код возврата, а не текст в выводе. Если скрипт ломается от смены реализации
ls, значит, он и так был хрупким. Повод переписать его на
find -printfили
stat -cс явным форматом.
#skills #linux #bash #ubuntu #rust #coreutils #sysadmin #admin_future
🧠 Skills: nginx 1.30.6 и 1.31.7 закрыли 5 уязвимостей. Проверяем, задевают ли они ваш конфиг, одной командой
Коллеги, навык дня — аудит конфигурации nginx перед обновлением.
📌 ФАКТЫ (nginx.org, 14 октября)
Исправления в 1.30.6 (stable) и 1.31.7 (mainline). F5 выпустила внеплановые обновления и для NGINX Plus
Затронутые места:
вычисление строковых выражений с переменными — переполнение буфера
HTTP/3 — внедрение в тело запроса
ротация ключей TLS session tickets — подделка сессии
Отдельно обновлён njs 1.0.2 (разбор XML)
🛠 ПРОВЕРКА
Bash
Пусто — риск ниже, но обновиться всё равно стоит. Есть совпадения — обновляемся в первую очередь.
Bash
💡 В ЧЁМ СУТЬ
#skills #nginx #webserver #linux #security #sysadmin #admin_future
Коллеги, навык дня — аудит конфигурации nginx перед обновлением.
📌 ФАКТЫ (nginx.org, 14 октября)
Исправления в 1.30.6 (stable) и 1.31.7 (mainline). F5 выпустила внеплановые обновления и для NGINX Plus
Затронутые места:
alias вместе с rewrite — переполнение буферавычисление строковых выражений с переменными — переполнение буфера
HTTP/3 — внедрение в тело запроса
ротация ключей TLS session tickets — подделка сессии
ngx_http_ssi_module вместе с AIO — use-after-freeОтдельно обновлён njs 1.0.2 (разбор XML)
🛠 ПРОВЕРКА
Bash
nginx -v
# Полный эффективный конфиг — ищем рискованные сочетания
nginx -T 2>/dev/null | grep -nE '^\s*(alias|rewrite|ssi on|aio|ssl_session_ticket_key|listen .*quic|http3)'
Пусто — риск ниже, но обновиться всё равно стоит. Есть совпадения — обновляемся в первую очередь.
Bash
apt update && apt install --only-upgrade nginx # из репозитория nginx.org
nginx -t && systemctl reload nginx
💡 В ЧЁМ СУТЬ
nginx -T— недооценённая команда: она показывает итоговый конфиг со всеми include. Её вывод полезно хранить в git после каждого изменения — так видно, что и когда поменялось.
#skills #nginx #webserver #linux #security #sysadmin #admin_future
🧠 Skills: видит ли ваш сервер ошибки ECC-памяти? Повод проверить — из Linux 7.4 убирают старые EDAC-драйверы
Коллеги, навык про железо, о котором обычно вспоминают только после «необъяснимых» падений серверов и внезапных kernel panic.
📌 ФАКТЫ
В ветке Linux 7.4 окончательно удаляются устаревшие EDAC-драйверы для платформ: Intel 975X, X38, 3200/3210 и AppliedMicro X-Gene (Ampere eMAG)
Мейнтейнер подсистемы Borislav Petkov (AMD) объяснил причину прямо: на фоне «лихорадки сгенерированных ИИ патчей» legacy-код становится прямой угрозой стабильности — тестировать входящие правки для древнего кремния физически не на чем
EDAC (Error Detection and Correction) — ключевая подсистема ядра Linux, собирающая телеметрию контроллеров памяти об исправленных (CE) и неисправимых (UE) аппаратных сбоях RAM
🛠 ПРОВЕРКА В СИСТЕМЕ
Bash
⚠️ КАК ИНТЕРПРЕТИРОВАТЬ ВЫВОД
Счётчик CE (Correctable Errors) стабильно растёт на конкретном канале/диме — ячейки модуля деградируют. Планка ещё жива за счёт ECC-коррекции, но модуль пора отправлять под замену по RMA
UE (Uncorrectable Errors) > 0 — случился фатальный битфлип, который алгоритм исправить не смог. Возможна тихая порча данных в памяти или падение хоста
Каталог
Bash
💡 В ЧЁМ СУТЬ
#skills #linux #hardware #ecc #monitoring #zabbix #sysadmin #admin_future
Коллеги, навык про железо, о котором обычно вспоминают только после «необъяснимых» падений серверов и внезапных kernel panic.
📌 ФАКТЫ
В ветке Linux 7.4 окончательно удаляются устаревшие EDAC-драйверы для платформ: Intel 975X, X38, 3200/3210 и AppliedMicro X-Gene (Ampere eMAG)
Мейнтейнер подсистемы Borislav Petkov (AMD) объяснил причину прямо: на фоне «лихорадки сгенерированных ИИ патчей» legacy-код становится прямой угрозой стабильности — тестировать входящие правки для древнего кремния физически не на чем
EDAC (Error Detection and Correction) — ключевая подсистема ядра Linux, собирающая телеметрию контроллеров памяти об исправленных (CE) и неисправимых (UE) аппаратных сбоях RAM
🛠 ПРОВЕРКА В СИСТЕМЕ
Bash
# Проверяем, зарегистрированы ли контроллеры памяти в sysfs (пусто = ядро не видит EDAC)
ls /sys/devices/system/edac/mc/
# Быстрое чтение счётчиков ошибок по всем контроллерам:
grep -H . /sys/devices/system/edac/mc/mc*/{ce_count,ue_count} 2>/dev/null
# Современный вариант через демон RAS (Reliability, Availability, Serviceability):
apt install rasdaemon && systemctl enable --now rasdaemon
ras-mc-ctl --summary
ras-mc-ctl --errors
⚠️ КАК ИНТЕРПРЕТИРОВАТЬ ВЫВОД
Счётчик CE (Correctable Errors) стабильно растёт на конкретном канале/диме — ячейки модуля деградируют. Планка ещё жива за счёт ECC-коррекции, но модуль пора отправлять под замену по RMA
UE (Uncorrectable Errors) > 0 — случился фатальный битфлип, который алгоритм исправить не смог. Возможна тихая порча данных в памяти или падение хоста
Каталог
/sys/.../edac/mc/ пуст — аппаратная коррекция на уровне BIOS/BMC может работать, но ОС о событиях «вслепую» не знает. В таком случае смотрим аппаратный SEL через IPMI:Bash
ipmitool sel elist | grep -i -E 'memory|ecc'
💡 В ЧЁМ СУТЬ
Исправимые ошибки (CE) — это заблаговременный индикатор скорой смерти планки RAM: модуль может неделями тихо сыпать счётчиком, пока сервер не словит первый неисправимый краш посреди рабочего дня.
Заведите опрос
ce_countили трапы
rasdaemonв Zabbix/Prometheus — это копеечный по ресурсам мониторинг, спасающий от внезапных падений гипервизоров и СУБД.
#skills #linux #hardware #ecc #monitoring #zabbix #sysadmin #admin_future