28 września 2026 opublikowano CVE-2026-12269 w ManageEngine DDI Central — na pierwszy rzut oka klasyczny High (authenticated operator → Keepalived config injection → root RCE, fix 6201). Ale DDI Central zarządza DNS, DHCP, IPAM, agentami, urządzeniami Cisco IOS i BIND — więc impact przechodzi DDI → management credential/agent → managed infrastructure. W zestawieniu z CVE-2026-95646 i CVE-2026-95651 widać wspólny temat: management plane dziedziczy krytyczność od systemów, którymi zarządza.
root na hoście DDI. Vendor poprawił sanitization oraz authorization boundary (endpoint admin-only).U+2028 przechodzi walidację DDI, ale Cisco IOS traktuje go jako command separator → dodatkowa komenda na routerze.Second interpreter problem (CVE-2026-95646)
Pierwszy interpreter (walidacja DDI) widzi wartość jako dozwolony tekst; drugi (Cisco IOS CLI) interpretuje ten sam znak jako separator komend. To klasyczny validator semantics != execution semantics — jak parser differential, shell escaping czy SQL quoting mismatch. Security review musi uwzględniać język systemu docelowego, nie tylko aplikację wejściową. Podatna aplikacja nie wykonuje finalnej komendy na sobie — robi to zarządzane urządzenie sieciowe.
Identity material compromise (CVE-2026-95651)
Nieuwierzytelniony klient sieciowy mógł przez endpoint keytab update podmienić aktywny keytab BIND (GSS-TSIG) i wywołać reload. To nie zwykły config bug: security-sensitive klucz Kerberos zostaje zastąpiony, legalne secure dynamic DNS auth może zostać zakłócone, a attacker-controlled key trafia do mechanizmu. Ważna dyscyplina VE: vendor nie wykazał arbitrary DNS updates, więc nie piszemy „unauth attacker takes over DNS” bez dowodu — potwierdzony impact (kompromitacja materiału tożsamości) i tak jest poważny.
Blast radius = graf zaufania, nie CMDB label
CMDB powie „DDI Central = infrastructure management server” — to za mało. Trzeba wiedzieć: ile węzłów DNS/DHCP zarządza, że wypycha komendy Cisco IOS, że przechowuje credentiale i relacje usług. CVSS nie modeluje całej transitivity: realny impact 95646 zależy od uprawnień konta Cisco używanego przez DDI (service credential scope → blast radius). Remediacja ma dwa obiekty: source vulnerability + downstream side effects — upgrade DDI do 6500 blokuje nowe injection, ale nie cofa zmiany już wykonanej na Cisco IOS (jak webshell po RCE, skradziony token, zatruty cache). Inventory musi obejmować Console i wszystkich Agentów (Linux/Windows) oraz managed targets (Cisco IOS, BIND GSS-TSIG), a weryfikacja po patchu — także authorization (czy operator nadal wchodzi w endpoint admin-only, czy unauth endpoint agenta odrzuca request).
Powiązane na blogu
- Cisco FMC: relacja manager↔managed — trust jako attack path
- GitPython: dane stają się kodem — dwa interpretery, jedna wartość
Źródła
- ManageEngine DDI Central — CVE-2026-12269 — manageengine.com
- ManageEngine DDI Central — CVE-2026-95646 — manageengine.com
- ManageEngine DDI Central — CVE-2026-95651 — manageengine.com
Nota redakcyjna: stan informacji 29 września 2026, na podstawie publicznych advisory ManageEngine. CVE-2026-12269 opublikowane 28.09; CVE-2026-95646 i CVE-2026-95651 naprawione w Build 6500 (użyte jako powiązane przykłady trust transitivity). Artykuł nie przypisuje CVE-2026-95651 możliwości arbitrary DNS update, której vendor nie potwierdził.