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

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

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

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

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

Категории

Все категории
Loading categories
cloud-audit — Автоматизированный инструмент аудита безопасности облачных платформ, который выявляет неправомерное использование учетных данных AK/SK путем периодического аудита журналов облачных платформ с использованием обнаружения аномалий, списков блокировки и базового анализа для Tencent Cloud и AWS. | Kitploit
Инструменты/GitHubGitHub/al0ne/cloud-audit
Безопасность облачных средРазведка угрозРеагирование на ИнцидентыОбнаружение АномалийАнализ Журналов
GitHubal0ne/cloud-audit

cloud-audit

Репозиторий
44842 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →

Описание

Автоматизированный инструмент аудита безопасности облачных платформ, который выявляет неправомерное использование учетных данных AK/SK путем периодического аудита журналов облачных платформ с использованием обнаружения аномалий, списков блокировки и базового анализа для Tencent Cloud и AWS.

Поделиться

Описание проекта

cloud-audit (Помощник по аудиту облачной безопасности) — это инструмент для обнаружения использования скомпрометированных AK/SK (ключей доступа/секретных ключей) публичных облачных провайдеров. Он регулярно вызывает API облачных платформ для аудита журналов и выявляет подозрительные действия на основе аномального поведения, чёрных признаков и базовых линий.

В настоящее время поддерживаются только Tencent Cloud и AWS.

Особенности

  • Поддержка обнаружения использования AK/SK в Tencent Cloud (аномальное поведение)
    • Мониторинг создания команд / выполнения команд через AK/SK
    • Мониторинг добавления / удаления подаккаунтов через AK/SK
    • Перечисление БД в разных регионах через AK/SK
    • Перечисление экземпляров в разных регионах через AK/SK
  • Поддержка обнаружения использования AK/SK в AWS (базовая линия)
    • Мониторинг создания пользователей через AK/SK
    • Мониторинг перечисления пользователей через AK/SK
    • Мониторинг перечисления S3 через AK/SK
    • Мониторинг перечисления БД через AK/SK
    • Мониторинг повышения привилегий через AK/SK
  • Поддержка уведомлений в WeChat Work / Discord

Инструкция по использованию

Шаг 1: Установка зависимостей

root@kitploit:~
cd /opt/ && git clone https://github.com/al0ne/cloud-audit
cd cloud-audit && pip3 install -r requirements.txt

Шаг 2: Создание и изменение конфигурации .env

root@kitploit:~
cp .env.example .env

Заполните файл .env в соответствии с вашей реальной конфигурацией.

root@kitploit:~
# Информация об AK/SK Tencent Cloud, необходима для вызова API и получения журналов
TencentAccessKey="xxx"
TencentSecretKey="xxx"

# Список отслеживаемых AK/SK в Tencent Cloud
AccesskeyList="xxx,xxx,xxx"

# Информация об AK/SK AWS
AWS_ACCESS_KEY_ID="xxx"
AWS_SECRET_ACCESS_KEY="xxx"

# Уведомление Discord
discord_webhook_url=""

# Уведомление WeChat Work Bot
weixin_webhook_url=""

Шаг 3: Важные настройки программы

root@kitploit:~
# Доверенные подсети. Чувствительные операции из недоверенных подсетей вызывают немедленное предупреждение.
while_cidr = ["192.168.0.0/16", "172.16.0.0/12", "10.0.0.0/8"]

# Регионы AWS для отслеживания. События из других регионов не запрашиваются.
aws_region = [
    "us-east-1",
    "us-east-2",
    "ap-northeast-1",
    "ap-southeast-1"
]

Запуск

root@kitploit:~
python3 cloud-audit.py

Программа выполняет поиск результатов каждые 15 минут.

Пояснение к разрешениям AWS

Поскольку журналы AWS читаются и аудируются с помощью AWS CloudTrail, убедитесь, что у вашей учётной записи есть права IAM AWSCloudTrail_ReadOnlyAccess, иначе возникнет следующая ошибка:

root@kitploit:~
botocore.exceptions.ClientError: An error occurred (AccessDeniedException) when calling the LookupEvents operation: User: arn:aws:iam::xxxxx:user/test is not authorized to perform: cloudtrail:LookupEvents because no identity-based policy allows the cloudtrail:LookupEvents action

Перейдите в консоль IAM AWS, выберите пользователя → Разрешения, чтобы добавить соответствующие права.

Логика обнаружения

Логика обнаружения использования облачных платформ

При использовании инструментов, нацеленных на облачные платформы, типичные действия включают: сканирование всех регионов на наличие экземпляров RDS, EC2 или контейнеров; создание/удаление подаккаунтов; выполнение команд. Эти действия считаются чувствительными, и мы получаем информацию о них через журналы API облачных платформ.

Другой подход — обнаружение чувствительных операций из недоверенных подсетей. Обычно вызовы происходят из внутренней сети ЦОД или через внешний IP ЦОД. Если AK/SK вызываются из недоверенной сети предприятия и выполняют опасные операции, немедленно генерируется предупреждение.

Примеры распространённых чувствительных операций:

  • CreateUser
  • ListUsers
  • ListBuckets
  • DescribeInstances
  • DescribeDBInstances
  • AttachUserPolicy
  • RunCommand/CreateCommand (Tencent Cloud)

Обнаружение в Tencent Cloud

Основное отличие Tencent Cloud от AWS API заключается в том, что Tencent Cloud позволяет через API запрашивать детальные действия конкретного AK ID, в то время как в AWS можно только искать на платформе, но нельзя через AK/SK вызывать интерфейс для получения последних действий определённого AK ID.

Поэтому для обнаружения использования AK/SK в Tencent Cloud необходимо указать список отслеживаемых AK ID, используемых в онлайн-бизнесе, и периодически проверять, какие действия выполнялись с этими AK ID.

Обнаружение в AWS

В AWS журналы можно получать только по региону и действию. Используя AK/SK, мы вызываем CloudTrail, чтобы проверить, есть ли журнал для определённого действия в определённом регионе.

Поэтому в AWS обнаружение в основном основано на базовых линиях.

root@kitploit:~
def DescribeInstances(CloudTrailEvent: dict):
    """
    Обнаружение использования AK/SK для перечисления EC2
    :param CloudTrailEvent:
    :return: None
    """
    accessKeyId = CloudTrailEvent.get('userIdentity').get('accessKeyId')
    arn = CloudTrailEvent.get('userIdentity').get('arn')
    eventTime = utc_to_china_tz(CloudTrailEvent.get('eventTime'))
    eventName = CloudTrailEvent.get('eventName')
    awsRegion = CloudTrailEvent.get('awsRegion')
    sourceIPAddress = CloudTrailEvent.get('sourceIPAddress')
    userAgent = CloudTrailEvent.get('userAgent')

    sip_verify = False

    for cidr in while_cidr:
        if ipaddress.ip_address(sourceIPAddress) in ipaddress.ip_network(cidr):
            sip_verify = True

    if not sip_verify and 'aws-internal' not in userAgent:
        message = f"{text_title}\nВремя: {eventTime}\nID аккаунта: {arn}\nРегион: {awsRegion}\nAccessKey ID:{accessKeyId}\n"
        f"Выполненное действие: {eventName}\nIP-адрес: {sourceIPAddress}\nUser-Agent: {userAgent}\n\n"
        f"Обнаружен внешний IP-запрос на перечисление экземпляров. Обратите внимание, не является ли это злоумышленником!"
    send_message(message)

Скриншоты работы

Скриншот уведомления Discord

1

1

2

Планы на будущее

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

  • Вызовы AK/SK с не-SDK User-Agent
  • Базовая линия: если команда ранее не выполнялась, а выполняется впервые — немедленное предупреждение
Скачать инструмент