Mikrotik Ninja
3.45K subscribers
334 photos
7 videos
55 files
1.14K links
Канал по новым компьютерным технологиям и защите компьютерных программ


Блог http://bubnovd.net
https://medium.com/@dbubnov
https://xakep.ru/author/bubnovd/
Мысли неглупых людей https://t.me/channel1name
Книги https://t.me/mreadninja
Download Telegram
Курс Мумшада про СKS выглядит интересно даже для тех, кто не работает с кубом. Тут и AppArmor, и SSH Hardening, и модули ядра, и СIS Benchmarks. Выписал себе интересные темы, попробую найти на ютубе лекции по этим темам. Если найду - обязательно поделюсь. Нет, мне не жалко денег Мумшаду, просто хочется чуть глубже разобраться в темах

Cluster Setup and Hardening:
- The 4C's of Cloud NAtive Security
- CIS Benchmarks for OS and k8s
- Kube-bench
- TLS
- KubeConfig
- API Groups
- Dashboard and its securing
- Verify platform binaries
- Securing ControlPlane Communications with Ciphers

System Hardening:
- Minimize host OS footprint info
- Limit Node Access
- SSH Hardening
- Restrict Kernel Modules
- AquaSec Tracee
- Restrict syscalls using seccomp
- Implement seccomp in k8s
- AppArmor
- Linux Capabilities

Minimize Microservice Vulnerabilities:
- Security Contexts
- Admission Controllers
- Open Policy Agent
- Gatekeeper
- Container Sandboxing
- gVisor
- kata containers
- Runtime Classes
- One way SSL VS mutual SSL
- Pod to pod encryption with mTLS

Supply Chain Security:
- Minimize base image footprint
- Whitelist Allowed Registries - Image Policy Webhook
- Use static analysis of user workloads
- kubesec
- Trivy

Monitoring, Logging, Runtime Security
- Perform behavioral analytics of syscall process
- Falco
- Audit Logs
Kubernetes Deconstructed: Understanding Kubernetes by Breaking It Down

Доклад про куб уровня "поработал немного с кубом и хочу чуть больше подробностей". Можно смотреть и совсем без опыта. Про поды, сервисы, ингресы, coontrolplane, взаимодействие между компонентами

#k8s
Forwarded from Privacy Accelerator
Когда заблокируют VPN // Чем опыт обхода цензуры в Китае может быть полезен России и другим странам

То, что происходит в России с блокировками в VPN последнее время - очень плохая история. Но эта история случилась не только у нас, но и в других странах, в частности в Китае, в Иране, Туркменистане. И там это уже длится давно.

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

Итак, первый фильм цикла "Когда заблокируют VPN?", рассказывающий о Китае. Мы говорим с Джексоном Сиппом, представителем команды GFW Report, который занимается вопросами безопасности сетевых систем, конфиденциальности и борьбы с цензурой.

🤖 https://youtu.be/Bfln5XcDSZE


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

➡️ Текстовая версия материала: https://roskomsvoboda.org/post/great-firewall-of-china-gfw-report-interview/
Как получить доступ на ноду kubernetes, если есть kubeconfig, но нет доступа по ключу ssh?

У kubectl есть режим debug, позволяющий дебажить кластер. Один из его параметров запускает под и монтирует файловую систему ноды внутрь этого пода.

Запускаем под
k  debug node/${NODENAME} -it --image=busybox
Вся ФС ноды есть в поде в директории /host

Добавляем свой ключ
echo "ssh-ed25519 KEY_DATA_HERE mikrotik-ninja@bubnovd.net" >> /host/home/mikrotik-ninja/.ssh/authorized_keys

Только не забудьте два раза написать > в последней команде, чтобы не затереть уже существующие ключи и не получить пизблагодарность от коллег

#k8s #security
Немного устаревшая, но всё же схема работы Apple Multi-CND, доставляющей обновки на твой айфон
Санкции добрались до модемов
Если вдруг вы не знали:
VS Code, да и, наверное, любой инструмент, работающий с регулярными выражениями, позволяет трансформировать регистр символов при поиске

Например
find: \{\{ (\w+) \}\}
replace-to: {{ requiredEnv "\U$1" }}

Заменит все строки, содержащие двойные скобки, типа такой
{{ variable }}
на такую {{ requiredEnv "VARIABLE" }}

Не то, чтобы это было какое-то грандиозное открытие. Но если вы всё ещё не пользуетесь регэкспами, то самое время начать! Это сэкономит кучу времени.
Кстати, регэкспы есть и в любимом многими notepad++
Полезное из курса CKS
Узнал о существовании kubectl replace

Когда у нас есть под с именем pod и мы хотим что-то в нем поменять и сохранить имя, то получим ошибку вроде Объект с таким именем существует. Надо сначала удалить его, а потом сделать kubectl apply -f pod.yaml

С replace можно не удалять, например
kubectl get pod mypod -o yaml | sed 's/\(image: myimage\):.*$/\1:v4/' | kubectl replace -f -
Выложили доклады с eBPF Summit 2023

https://www.youtube.com/playlist?list=PLDg_GiBbAx-l4D4oKbscJhPFKv2oqPcD_

Программа доступна тут
https://ebpf.io/summit-2023-schedule/
Часто приходят с вопросами про VPN. Я устал говорить, что не занимаюсь этим. Зато занимается один мой хороший товарищ. Дальше его текст. Не реклама, просто хочу помочь обеим сторонам.


Итак, я допилил новый сервер VPN. Для подключения необходимо выполнить инструкции ниже. Старый продолжает работать, но стабильность гарантировать не могу, т.к. РКН блокирует протокол WireGuard.
Принципы прежние: не делай глупостей под VPN, регулярные донаты улучшают твою карму, делиться VPN можно и нужно - информация должна быть свободной. Спасибо за поддержку и участие.

Чтобы безопасно подключиться к интернету, используйте этот сервер.

1. Скачайте и установите на устройство приложение Outline:

iOS: https://itunes.apple.com/app/outline-app/id1356177741
macOS: https://itunes.apple.com/app/outline-app/id1356178125
Windows: https://s3.amazonaws.com/outline-releases/client/windows/stable/Outline-Client.exe
Linux: https://s3.amazonaws.com/outline-releases/client/linux/stable/Outline-Client.AppImage
Android: https://play.google.com/store/apps/details?id=org.outline.android.client
Дополнительная ссылка для Android: https://s3.amazonaws.com/outline-releases/client/android/stable/Outline-Client.apk

2. Получите ключ доступа, который начинается с ss://, а затем скопируйте его. От mikrotik ninja: писать сюда

3. Откройте клиент Outline. Если ваш ключ доступа определился автоматически, нажмите "Подключиться". Если этого не произошло, вставьте ключ в поле и нажмите "Подключиться".

Теперь у вас есть доступ к свободному интернету. Чтобы убедиться, что вы подключились к серверу, введите в Google Поиске фразу "Какой у меня IP-адрес". IP-адрес, указанный в Google, должен совпадать с IP-адресом в клиенте Outline.

Дополнительные сведения можно найти на странице https://getoutline.org/.
kubesec Верификатор k8s манифестов

Может работать как бинарник на хосте, контейнер, плагин к kubectl или внешний http сервис. Есть даже AdmissionController, который позволяет проверять ресурсы на лету - при создании пода/деплоймента/демонсета/...

Проверяет манифесты на соответствие security best practices. Судя по гитхабу - можно дописать свои правила

#k8s #security
Немного тулзов, чтобы у твоего кубернетеса не было дыры в безопасности

- rbac-manager - оператор для удобной работы с RBAC. Позволяет биндить роли по лейблам на ресурсах, создавать биндинги в разных неймспейсах из одного манифеста и по-другому упрощает жизнь кластер админа

- rbac-lookup - CLI утилита для просмотра прав юзеров. Одной строкой выводит все биндинги

- audit2rbac - читает аудит логи к8с и генерирует RBAC исходя из того, что нужно юзерам

#k8s #security #rbac
CTR_KUBERNETES_HARDENING_GUIDANCE_1.2_20220829.PDF
4.6 MB
Ну и в догонку Kubernetes Hardening Guide от NSA
Ужас какой
Forwarded from k8s (in)security (Дмитрий Евдокимов)
Недавно мой товарищ поднял один достаточно интересный вопрос о решении ServiceMesh Istio, о котором мы с командой ранее даже не задумывались ввиду того что не эксплуатируем данное решения.

И так вопрос и ситуация следующая: Для работы istio-init контейнер, который добавляется во ВСЕ Pods в ServiceMesh, требует NET_ADMIN и NET_RAW capabilities, которые обычно рекомендуется забирать из-за их опасности (пример) ... При этом чаще всего когда системное приложение все же требует таких capabilities оно живет в своем отдельном namespace и его достаточно просто можно добавить в исключение в том же PolicyEngine. Но как вы понимаете в данной ситуации это будет ВЕЗДЕ - во всех namespaces с вашими прикладными микросервисами в ServiceMesh ...

Как с этим живете? Как это контролируете? Как спят ваши безопасники?)

P.S. В последствии я еще заметил, что там же runAsUser: 0, runAsGroup: 0, runAsNonRoot: false
P.S.S. Контролировать это можно, но надо постараться. Пост тут скорее чтобы обратить ваше внимание на эту ситуацию
Ловите промокод на 20% скидки на СKS. Возможно, прокатит и на другие экзамены от Linux Foundation.

20KODE
Не могу вспомнить кто у меня недавно спрашивал можно ли сдать СKA из России. Вот что написано на сайте

Получается, что можно, но не из всей России. Если найдете способ оплатить