Найти в Дзене
Ошибки sudoers приводящие к получению root shell
Ошибки sudoers приводящие к получению root shell Предположим пользователю нужно мочь редактировать конфиг. Пусть это будет sshd. Казалось бы в sudoers вот такой записи будет достаточно: user ALL=(ALL) /bin/vim /etc/ssh/sshd_config Проблема в том, что редакторы и просмотрщики vim,emacs,less,more... предоставляют возможность выхода в shell. Открываем через sudo разрешенный нам редактировать конфиг и вводим: :shell После чего видим как мы получили root на машине. Команды :shell в зависимости от дистрибутива может отличаться. Чтобы избежать подобного, нужно давать использовать не vim а редактор sudoedit, т...
8 месяцев назад
Использование kubespray как ansible collection
Использование kubespray как ansible collection kubespray огромен и тащить его весь к себе в репозиторий смысла нет. Достаточно использовать его как ansible collection и переопределить в inventory только то, что нужно. Пример структуры inventory: ├── k8s.cluster.1 │   ├── group_vars │   │   ├── all │   │   │   ├── all.yml │   │   │   └── containerd.yml │   │   ├── k8s_cluster │   │   │   ├── addons.yml │   │   │   ├── k8s-cluster.yml │   │   │   └── kube_control_plane.yml │   │   └── k8s_load_balancers.yml │   └── hosts.yml ├── k8s.cluster.2 │   ├── group_vars │   │   ├── all │   │   │   ├── all...
8 месяцев назад
Харденинг кубов
Харденинг кубов 1. Мы запускаем kube-apiserver со следующим набором аргументов: --kubelet-client-certificate=<path> --kubelet-client-key=<path> --authorization-mode=Node,RBAC --enable-admission-plugins=EventRateLimit --secure-port =6443 --audit-log-path=/var/log/audit/kube-apiserver-audit.log --audit-log-maxage=30 --audit-log-maxbackup=10 --audit-log-maxsize=100 --service-account-lookup=true --service-account-key-file=<path> --etcd-certfile=<path> --etcd-keyfile=<path> --tls-cert-file=<path> --tls-private-key-file=<path> --client-ca-file=<path> --etcd-cafile=<path> --audit-policy-file=/etc/kubernetes/audit-policy/apiserver-audit-policy...
8 месяцев назад
Доставка syslog в elastic
Доставка syslog в elastic Простой пример, как можно доставлять syslog с linux машин в elasticsearch. Для сбора логов на целевой машине я буду использовать вектор. У меня ubuntu 22.04, установить vector можно так: bash -c "$(curl -L https://setup.vector.dev)" sudo apt-get install vector Далее приведем его конфигурационный файл /etc/vector/vector.yaml к следующему виду: sources: syslog: type: file include: - /var/log/syslog ignore_older: 86400 sinks: logstash: inputs: - syslog type: socket address: "<logstash_ip>:<logstash_port>" mode: tcp encoding: codec: text И запустим vector: sudo systemctl...
8 месяцев назад
API honeypot на FastApi
API honeypot на FastApi Ссылка на проект тут. Хонипот основан на библиотеке baitroute. Суть работы очень простая, из директории rules подгружаются разные как-бы уязвимые endpoints, которые могут обрабатывать GET, POST, HEAD запросы, в зависимости от конфигурации. Запустить и потыкать можно так: poetry install --no-root python -m src...
8 месяцев назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала