Як експортувати логи за допомогою Amazon Athena

Як експортувати логи за допомогою Amazon Athena

SOC Prime Team
SOC Prime Team linkedin icon Стежити

Athena не зберігає логи сама. Вона запитує лог-файли в S3, такі як CloudTrail, VPC Flow Logs, логи балансувальника навантаження та WAF, через таблиці, які ви визначаєте. Результати звичайних запитів зберігаються як CSV у вашому результуючому бакеті. Щоб отримати JSON, використовуйте запит у UNLOAD … WITH (format = ‘JSON’): Athena записує JSON, розділений новими рядками, у префікс S3, і ви його завантажуєте.

Багато команд AWS зберігають місяці логів у S3 та запитують їх за допомогою Athena, а не переводять все до SIEM. Prime Core має більше ніж 24 000 унікальних правил виявлення, які відповідають 676 технікам MITRE ATT&CK. Нижче наведено, як отримати зріз, очистити його та провести безкоштовне розслідування в LogTotal.

Розпочніть безкоштовно

Перш ніж ви почнете

Дозволи. Вам потрібно запускати запити Athena (athena:StartQueryExecution та інші), читати визначення таблиць у Glue, читати початковий бакет та записувати в експортувальний бакет. Додайте kms:Decrypt, якщо логи зашифровані за допомогою KMS.

Знати таблицю та її розділення. Таблиця CloudTrail зазвичай розділена за регіонами та датами, або із проекцією розділів, або з розділами, які ви додали. Athena стягує плату за обсяг відсканованих даних, тому кожного разу фільтруйте за розділами. Запит без них може відсканувати логів за багато років.

Робоча група. Athena запускає запити у робочій групі з результатами локалізації. UNLOAD записує до своєї цільової точки, але робоча група все ще повинна бути налаштована.

Експорт з UNLOAD

UNLOAD (
  SELECT *
  FROM cloudtrail_logs
  WHERE region = 'eu-west-1'
    AND day = '2026/10/19'
    AND useridentity.arn LIKE '%suspicious-user%'
)
TO 's3://my-athena-exports/ct-1019/'
WITH (format = 'JSON', compression = 'NONE')

Адаптуйте стовпці розділів (region, day) до визначення вашої таблиці. Цільовий префікс повинен бути порожнім.

З командного рядка:

QID=$(aws athena start-query-execution –work-group primary
  –query-string “$(cat unload.sql)”
  –query ‘QueryExecutionId’ –output text)

# чекати до SUCCEEDED
until [ “$(aws athena get-query-execution –query-execution-id “$QID”
  –query ‘QueryExecution.Status.State’ –output text)” = “SUCCEEDED” ]; do sleep 5; done

aws s3 cp s3://my-athena-exports/ct-1019/ ./ct-1019/ –recursive
zcat -f ./ct-1019/* > ct_1019.jsonl

zcat -f обробляє як стиснуті, так і не стиснуті виходи, на випадок, якщо стискування залишилось за замовчуванням. Якщо запит завершується невдало, цикл очікування ніколи не завершиться. Перевірте на FAILED також, якщо ви регулярно запускаєте цей скрипт.

Чому не get-query-results? Це працює, але повертає рядки у вигляді списків рядків, 1 000 на сторінку, які потім ви повинні об’єднати назад в об’єкти. UNLOAD дає вам чистий JSON за один крок.

Завантажте, очистіть та перегляньте в LogTotal

  1. Завантажте. Відкрийте logtotal.com і скиньте файл .jsonl.
  2. Очистіть. 
  3. Перегляньте. 

Коли все йде не так

СимптомЙмовірна причинаFix
Запит сканує терабайтиНемає фільтру розділівФільтруйте за стовпцями розділів
Помилка про місце виведенняПредзаповнений цільовий префіксВикористовуйте новий префікс
Доступ забороненоВідсутні дозволи S3, Glue або KMSПеревірте кожен із них; KMS зазвичай підозрілий
Нуль рядківРозділи не завантажені, або хибний формат розділівПеревірте проекцію розділів або запустіть MSCK REPAIR TABLE
Файли виведення не відкриваються як текстСтиснення GZIPВикористовуйте zcat або встановіть compression = ‘NONE’

FAQ

Чи це те саме, що Amazon Security Lake?

Security Lake також використовує Athena, але з власними OCSF таблицями та дозволами Lake Formation.

Чи можу я експортувати сирі файли CloudTrail замість цього?

Так. Якщо вам потрібні лише цілі дні, простіше скопіювати файли з S3. Athena окупається, коли вам потрібно фільтрувати.

Приєднуйтесь до платформи Detection as Code від SOC Prime щоб покращити видимість загроз, найбільш актуальних для вашого бізнесу. Щоб допомогти вам розпочати та отримати негайну цінність, забронюйте зустріч зараз з експертами SOC Prime.