Настройка NetworkPolicy в Kubernetes часто не учитывает трафик через hostNetwork, DNS и инфраструктурные компоненты. Стандартное тестирование через curl проверяет лишь ожидаемые маршруты, пропуская реальные уязвимости. Для полноценной проверки изоляции необходимо отслеживать события на уровне ядра с помощью eBPF-инструментов.
Инструменты Cilium Hubble и Tetragon позволяют видеть реальные действия в датапасе, включая статусы FORWARDED и DROPPED. При анализе важно отключать фильтры в Hubble UI, которые по умолчанию скрывают DNS-запросы и трафик узлов, так как именно через них часто проходят обходы сетевых политик.
Исследование на стенде из 11 узлов с Cilium 1.20.4 показало, что поды с hostNetwork: true могут обходить ограничения, так как Cilium по умолчанию разрешает локальному стеку узла доступ к эндпоинтам. Также выявлено, что L4-правила могут обесценивать L7-фильтрацию DNS, если они применяются одновременно к одному порту.
Для корректной защиты необходимо сначала анализировать события отброшенных пакетов в Hubble, а затем формировать политики. При использовании L7-фильтрации для DNS важно удалять старые L4-правила, иначе ограничения на доменные имена не будут работать, оставляя атакующим возможность разведки внутренних сервисов.




