1. Установите вид CloudTrail-данных
Определите account, bucket, ключ объекта, региональный контекст и период. GetObject относится к data events S3. Они не включаются по умолчанию и не появляются в обычном Event history как management events. Нужны действовавшие настройки сбора для ресурса, а не факт существования любого trail. Формат версии события фиксируйте по найденной записи.
2. Отберите сохранённую выгрузку
В стандартном файле CloudTrail пройдите Records[] и выберите eventSource=s3.amazonaws.com вместе с eventName=GetObject. Затем уточните bucketName,key и время. Если SIEM уже преобразовала событие, сначала установите форму данных и сохраните исходный JSON. jq не обращается к AWS и не скачивает объект; он работает с полученной копией.
3. Прочитайте пример без лишних выводов
Пример фрагмента содержит IAMUser demo-reader, учебный bucket/key и адрес 192.0.2.20. Это сокращённая запись, где опущены другие поля, поэтому одно отсутствие errorCode в иллюстрации не является доказательством успешного результата полного события. requestID помогает сопоставить запрос, а eventTime описывает время завершения по сервисному endpoint. Не заменяйте его временем индексации коллектора.
4. Уточните вызывающую identity и исход
В реальной записи проверьте тип userIdentity, возможный сеанс роли, доступный errorCode и параметры запроса. Техническая IAM-identity или presigned-доступ не всегда устанавливают человека, прочитавшего данные. Обращение к API, объём реально выданных байтов и сохранение файла на клиенте требуют разных свидетельств. Путь объекта без версии также может быть недостаточен для установления содержимого.
5. Постройте цепочку чтения
Свяжите CloudTrail с доступным клиентским/прокси-журналом и контекстом аутентификации, используя идентификаторы и время. Если расследуется доступ через роль, найдите соответствующий сеанс и владельца задания или приложения. Сопоставьте права и состояние bucket на момент обращения. Вывод об утечке требует подтверждённого содержания, получателя и результата, а не только имени GetObject.
6. Если GetObject не найден
Проверьте selectors data events для нужного ресурса и действие сбора в прошлом, account, период, доставку и ротацию. Поиск только в Event history здесь заведомо неполон. Уточните, не обращались ли к другому ключу, версии или endpoint. Если data events тогда не сохранялись, прямо отметьте отсутствие этого источника; включение сегодня не восстановит прошлую историю чтения.