Тестувальник на проникнення отримав root-доступ до нашого кластера Kubernetes за 15 хвилин. Ось чим вони скористалися. Ланцюжок атаки: - Знайдено відкритою панеллю Kubernetes (наша погана) - На панелі приладів був сервісний обліковий запис лише для перегляду (ми думали, що це безпечно) - Сервісний обліковий запис може відображати секретні дані у всіх просторах імен - Знайдено облікові дані AWS у секреті - Використовувані облікові дані AWS для доступу до профілю екземпляра EC2 - Профіль екземпляра мав повний адміністратор Kubernetes через IAM - Використано kubectl для створення привілейованого pod - Втік до вузла - Root-доступ до всього кластера Що ми вважали правильним: - Панель приладів була доступна лише для читання - Таємниці були зашифровані в стані спокою - Були запроваджені мережеві політики - Регулярні оновлення безпеки Чого нам не вистачало: - Приладова панель взагалі не повинна бути виставлена - Сервісні облікові записи потребують принципу найменших привілеїв - Секрети не повинні містити облікові дані AWS (замість цього використовуйте IRSA) - Політики безпеки Pod не застосовувалися - Доступ до вузлів не був посилений Виправлення зайняло 2 тижні: - Повністю видалено панель Kubernetes - Реалізовано IRSA для всього доступу до pod AWS - Застосовані суворі стандарти безпеки PSP/Pod...