172 похожих чатов

А накиньте идей для политик gatekeeper/kyverno/jspolicy Вот щас у меня есть Запреты

на:
hostNetwork
hostIPC
hostPID
hostPath
hostPorts
priveleged
allowPrivilegeEscalation
capabilities
procMount
seLinuxOptions

runAsUser, runasGroup, fsGroup,supplementalGroups - только с определенного пула uid'ов
runAsNonRoot: true
разрешены только определенные seccomp/apparmor профили

разрешены только определенные tollerations
разрешены только определенные домены для ingress
разрешены только опеределнные типы волумов
разрешены только определенные sysctls
разрешены только определенные priorityClassName
allow list для аннотаций ingress

Что забыл? Мб что-то еще упустил? всякие resource quota/limitrange/network policy не учитываем

21 ответов

13 просмотров

а зачем домены в ингрессе ограничивать, например?

The BGP backend process (BIRD) is not running не подскажешь в чем может быть трабла ?

Dmitry-Sergeev 🇺🇦 Автор вопроса
John Smith
а зачем домены в ингрессе ограничивать, например?

злой человек допустим получил доступ к другому ns, и у него есть возможность создавать ingress. Он может создать ingress с существующим доменом в кластере, но накрутить свои paths и можно дальше че-то придумать

чому? js вроде гибчей

Dmitry-Sergeev 🇺🇦 Автор вопроса

не понял

Dmitry-Sergeev 🇺🇦 Автор вопроса
Sergei Mikhaltsov
чому? js вроде гибчей

kyverno достаточно гибкий, там есть jmespath, и фичи понравились

Dmitry Sergeev 🇺🇦
не понял

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

Dmitry Sergeev 🇺🇦
kyverno достаточно гибкий, там есть jmespath, и фи...

json конечно хорошо, но можно ли там полноценную логику сделать, со всякими там if/else?

Dmitry Sergeev 🇺🇦
так

раз ингресс на этот домен уже есть - значит он в списке разрешённых?

John Smith
раз ингресс на этот домен уже есть - значит он в с...

Он может быть только в определенном нс

Dmitry-Sergeev 🇺🇦 Автор вопроса
Dmitry-Sergeev 🇺🇦 Автор вопроса
John Smith
раз ингресс на этот домен уже есть - значит он в с...

если злыдень получил доступ к какому-то левому ns

Dmitry-Sergeev 🇺🇦 Автор вопроса

@gecube посоветуй, ничего критичного не упустил?

Схоронил и в очередь встал, чего еще накидают

А можно делать кроссобъектные валидации? Например не давать создать pdb в комбинации с количеством реплик = 1, чтобы не вставлять палки в колёса с обновлением нод (evict не будет возможен). Или проверять чтобы minAvailable percent != ReplicaAmount.

Dmitry-Sergeev 🇺🇦 Автор вопроса
Kirill Garbar
А можно делать кроссобъектные валидации? Например ...

я такого не делал, но я думаю это можно провернуть через external data source https://kyverno.io/docs/writing-policies/external-data-sources/#variables-from-kubernetes-api-server-calls Что нибудь такое rules: - match: any: - resources: kinds: - PodDistributionBudget context: - name: replicas apiCall: urlPath: "/apis/apps/v1/namespaces/{{request.namespace}}/deployments/{{request.name}}" jmesPath: "spec.replicas" validate: deny: conditions: any: - key: '{{replicas}}' operator: Equals value: 1 Но я не тестил

Dmitry-Sergeev 🇺🇦 Автор вопроса
Dmitry Sergeev 🇺🇦
я такого не делал, но я думаю это можно провернуть...

тут еще мб preconditions надо сделать, ну или как минимум несколько ресурсов проверять, а не только deplouments

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
52
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
буквально один оставшийся вопрос при выполнении строчки mov eax, 5 операнд "5" будет присутствовать где-либо в памяти (любой), кроме как в памяти блока .code? подвопрос: как...
12
Всем ку. Подскажите, если задекларировал массив так: int arr[10] = {1, 2, 3, 4}, то в arr[4] будет мусор или нуль?
Sasha K
14
я не понимаю mov [r11+8],rcx и прочие. мы записываем значение из rcx, куда?
Bor
15
у меня такой вопрос про память в x86 возник, может кто пояснить?.. у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше)...
Toideng
5
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
А какие расширения активно используются в промышленности? Именно идейные, по типу гадт, а не всякие оверлоадедстрингс
Степан
11
у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше): - "п1" --- виртуальный адрес, то есть тот, который ресолвится в "п...
Toideng
3
Guys Who’s kurdish on this group?
Hiwa Amiri
11
Карта сайта