Найти в Дзене
Ошибки 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, т...
10 месяцев назад
Использование 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...
10 месяцев назад
Харденинг кубов
Харденинг кубов 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...
10 месяцев назад
Доставка 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...
10 месяцев назад
API honeypot на FastApi
API honeypot на FastApi Ссылка на проект тут. Хонипот основан на библиотеке baitroute. Суть работы очень простая, из директории rules подгружаются разные как-бы уязвимые endpoints, которые могут обрабатывать GET, POST, HEAD запросы, в зависимости от конфигурации. Запустить и потыкать можно так: poetry install --no-root python -m src...
10 месяцев назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала