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 ответов

35 просмотров

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

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

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта