AWS - Firewall Manager Enum

Support HackTricks

Firewall Manager

AWS Firewall Manager спрощує управління та обслуговування AWS WAF, AWS Shield Advanced, груп безпеки Amazon VPC та списків контролю доступу до мережі (ACL), а також AWS Network Firewall, AWS Route 53 Resolver DNS Firewall та сторонніх брандмауерів через кілька облікових записів та ресурсів. Це дозволяє вам налаштувати правила брандмауера, захист Shield Advanced, групи безпеки VPC та налаштування Network Firewall лише один раз, при цьому сервіс автоматично застосовує ці правила та захисти до ваших облікових записів та ресурсів, включаючи нові.

Сервіс пропонує можливість групувати та захищати конкретні ресурси разом, наприклад, ті, що мають спільну мітку або всі ваші розподіли CloudFront. Значною перевагою Firewall Manager є його здатність автоматично розширювати захист на нові ресурси, додані до вашого облікового запису.

Група правил (збірка правил WAF) може бути включена до політики AWS Firewall Manager, яка потім пов'язується з конкретними ресурсами AWS, такими як розподіли CloudFront або балансувальники навантаження додатків.

AWS Firewall Manager надає керовані списки додатків та протоколів для спрощення налаштування та управління політиками груп безпеки. Ці списки дозволяють вам визначити протоколи та додатки, які дозволені або заборонені вашими політиками. Існує два типи керованих списків:

  • Керовані списки Firewall Manager: Ці списки включають FMS-Default-Public-Access-Apps-Allowed, FMS-Default-Protocols-Allowed та FMS-Default-Protocols-Allowed. Вони керуються Firewall Manager і включають загальновживані додатки та протоколи, які повинні бути дозволені або заборонені для загального доступу. Немає можливості редагувати або видаляти їх, однак ви можете вибрати їх версію.

  • Користувацькі керовані списки: Ви керуєте цими списками самостійно. Ви можете створювати користувацькі списки додатків та протоколів, адаптовані до потреб вашої організації. На відміну від керованих списків Firewall Manager, ці списки не мають версій, але ви маєте повний контроль над користувацькими списками, що дозволяє вам створювати, редагувати та видаляти їх за потреби.

Важливо зазначити, що політики Firewall Manager дозволяють лише дії "Блокувати" або "Підрахувати" для групи правил, без опції "Дозволити".

Prerequisites

Наступні попередні кроки повинні бути виконані перед тим, як перейти до налаштування Firewall Manager для ефективного захисту ресурсів вашої організації. Ці кроки забезпечують базову налаштування, необхідну для того, щоб Firewall Manager міг застосовувати політики безпеки та забезпечувати відповідність у вашому середовищі AWS:

  1. Приєднайтеся та налаштуйте AWS Organizations: Переконайтеся, що ваш обліковий запис AWS є частиною організації AWS Organizations, де планується впровадження політик AWS Firewall Manager. Це дозволяє централізовано управляти ресурсами та політиками через кілька облікових записів AWS в межах організації.

  2. Створіть обліковий запис адміністратора за замовчуванням AWS Firewall Manager: Встановіть обліковий запис адміністратора за замовчуванням, спеціально для управління політиками безпеки Firewall Manager. Цей обліковий запис буде відповідати за налаштування та застосування політик безпеки в межах організації. Лише обліковий запис управління організації може створювати облікові записи адміністратора за замовчуванням Firewall Manager.

  3. Увімкніть AWS Config: Активуйте AWS Config, щоб надати Firewall Manager необхідні дані конфігурації та інсайти, необхідні для ефективного застосування політик безпеки. AWS Config допомагає аналізувати, перевіряти, моніторити та перевіряти конфігурації ресурсів та зміни, що сприяє кращому управлінню безпекою.

  4. Для політик сторонніх постачальників підпишіться в AWS Marketplace та налаштуйте параметри сторонніх постачальників: Якщо ви плануєте використовувати політики брандмауера сторонніх постачальників, підпишіться на них в AWS Marketplace та налаштуйте необхідні параметри. Цей крок забезпечує інтеграцію та застосування політик від надійних сторонніх постачальників.

  5. Для політик Network Firewall та DNS Firewall увімкніть спільний доступ до ресурсів: Увімкніть спільний доступ до ресурсів спеціально для політик Network Firewall та DNS Firewall. Це дозволяє Firewall Manager застосовувати захист брандмауера до VPC вашої організації та DNS-резолюції, підвищуючи безпеку мережі.

  6. Щоб використовувати AWS Firewall Manager в регіонах, які за замовчуванням вимкнені: Якщо ви плануєте використовувати Firewall Manager в регіонах AWS, які за замовчуванням вимкнені, переконайтеся, що ви вжили необхідних заходів для активації його функціональності в цих регіонах. Це забезпечує послідовне застосування безпеки в усіх регіонах, де працює ваша організація.

Для отримання додаткової інформації перегляньте: Початок роботи з AWS Firewall Manager AWS WAF політиками.

Types of protection policies

AWS Firewall Manager управляє кількома типами політик для забезпечення контролю безпеки в різних аспектах інфраструктури вашої організації:

  1. Політика AWS WAF: Цей тип політики підтримує як AWS WAF, так і AWS WAF Classic. Ви можете визначити, які ресурси захищені політикою. Для політик AWS WAF ви можете вказати набори груп правил, які виконуються першими та останніми в веб ACL. Крім того, власники облікових записів можуть додавати правила та групи правил для виконання між цими наборами.

  2. Політика Shield Advanced: Ця політика застосовує захист Shield Advanced по всій вашій організації для вказаних типів ресурсів. Вона допомагає захистити від DDoS-атак та інших загроз.

  3. Політика групи безпеки Amazon VPC: З цією політикою ви можете управляти групами безпеки, які використовуються в усій вашій організації, забезпечуючи базовий набір правил у вашому середовищі AWS для контролю доступу до мережі.

  4. Політика списку контролю доступу до мережі (ACL) Amazon VPC: Цей тип політики надає вам контроль над мережевими ACL, які використовуються у вашій організації, дозволяючи вам застосовувати базовий набір мережевих ACL у вашому середовищі AWS.

  5. Політика Network Firewall: Ця політика застосовує захист AWS Network Firewall до VPC вашої організації, підвищуючи безпеку мережі шляхом фільтрації трафіку на основі попередньо визначених правил.

  6. Політика DNS Firewall Amazon Route 53 Resolver: Ця політика застосовує захист DNS Firewall до VPC вашої організації, допомагаючи блокувати спроби шкідливої резолюції доменів та забезпечувати політики безпеки для DNS-трафіку.

  7. Політика брандмауера сторонніх постачальників: Цей тип політики застосовує захист від брандмауерів сторонніх постачальників, які доступні за підпискою через консоль AWS Marketplace. Це дозволяє інтегрувати додаткові заходи безпеки від надійних постачальників у ваше середовище AWS.

  8. Політика Palo Alto Networks Cloud NGFW: Ця політика застосовує захист Palo Alto Networks Cloud Next Generation Firewall (NGFW) та набори правил до VPC вашої організації, забезпечуючи просунуте запобігання загрозам та контроль безпеки на рівні додатків.

  9. Політика Fortigate Cloud Native Firewall (CNF) як послуга: Ця політика застосовує захист Fortigate Cloud Native Firewall (CNF) як послуги, пропонуючи провідне в галузі запобігання загрозам, веб-брандмауер (WAF) та захист API, адаптований для хмарних інфраструктур.

Administrator accounts

AWS Firewall Manager пропонує гнучкість в управлінні ресурсами брандмауера в межах вашої організації через свій адміністративний обсяг та два типи облікових записів адміністратора.

Адміністративний обсяг визначає ресурси, якими може управляти адміністратор Firewall Manager. Після того, як обліковий запис управління AWS Organizations приєднує організацію до Firewall Manager, він може створювати додаткових адміністраторів з різними адміністративними обсягами. Ці обсяги можуть включати:

  • Облікові записи або організаційні одиниці (OU), до яких адміністратор може застосовувати політики.

  • Регіони, в яких адміністратор може виконувати дії.

  • Типи політик Firewall Manager, якими адміністратор може управляти.

Адміністративний обсяг може бути або повним, або обмеженим. Повний обсяг надає адміністратору доступ до усіх вказаних типів ресурсів, регіонів та типів політик. Натомість обмежений обсяг надає адміністративні права лише на підмножину ресурсів, регіонів або типів політик. Рекомендується надавати адміністраторам лише ті дозволи, які їм потрібні для ефективного виконання своїх обов'язків. Ви можете застосувати будь-яку комбінацію цих умов адміністративного обсягу до адміністратора, забезпечуючи дотримання принципу найменшого привілею.

Існує два різних типи облікових записів адміністратора, кожен з яких виконує специфічні ролі та обов'язки:

  • Адміністратор за замовчуванням:

  • Обліковий запис адміністратора за замовчуванням створюється обліковим записом управління організації AWS Organizations під час процесу приєднання до Firewall Manager.

  • Цей обліковий запис має можливість управляти брандмауерами сторонніх постачальників і має повний адміністративний обсяг.

  • Він слугує основним обліковим записом адміністратора для Firewall Manager, відповідальним за налаштування та застосування політик безпеки в межах організації.

  • Хоча адміністратор за замовчуванням має повний доступ до всіх типів ресурсів та адміністративних функцій, він працює на тому ж рівні, що й інші адміністратори, якщо в організації використовується кілька адміністраторів.

  • Адміністратори Firewall Manager:

  • Ці адміністратори можуть управляти ресурсами в межах обсягу, визначеного обліковим записом управління AWS Organizations, як визначено конфігурацією адміністративного обсягу.

  • Адміністратори Firewall Manager створюються для виконання специфічних ролей в організації, що дозволяє делегувати обов'язки, зберігаючи при цьому стандарти безпеки та відповідності.

  • Після створення Firewall Manager перевіряє з AWS Organizations, чи є обліковий запис вже делегованим адміністратором. Якщо ні, Firewall Manager викликає Organizations, щоб призначити обліковий запис делегованим адміністратором для Firewall Manager.

Управління цими обліковими записами адміністратора включає їх створення в Firewall Manager та визначення їх адміністративних обсягів відповідно до вимог безпеки організації та принципу найменшого привілею. Призначаючи відповідні адміністративні ролі, організації можуть забезпечити ефективне управління безпекою, зберігаючи при цьому детальний контроль над доступом до чутливих ресурсів.

Важливо підкреслити, що лише один обліковий запис в межах організації може слугувати обліковим записом адміністратора за замовчуванням Firewall Manager, дотримуючись принципу "перший прийшов, останній вийшов". Щоб призначити нового адміністратора за замовчуванням, необхідно виконати ряд кроків:

  • По-перше, кожен обліковий запис адміністратора Firewall Manager повинен відкликати свій власний обліковий запис.

  • Потім існуючий адміністратор за замовчуванням може відкликати свій власний обліковий запис, фактично виводячи організацію з Firewall Manager. Цей процес призводить до видалення всіх політик Firewall Manager, створених відкликаним обліковим записом.

  • На завершення, обліковий запис управління AWS Organizations повинен призначити обліковий запис адміністратора за замовчуванням Firewall Manager.

Enumeration

# Users/Administrators

## Get the AWS Organizations account that is associated with AWS Firewall Manager as the AWS Firewall Manager default administrator
aws fms get-admin-account

## List of Firewall Manager administrators within the organization
aws fms list-admin-accounts-for-organization # ReadOnlyAccess policy is not enough for this

## Return a list of the member accounts in the FM administrator's AWS organization
aws fms list-member-accounts # Only a Firewall Manager administrator or the Organization's management account can make this request

## List the accounts that are managing the specified AWS Organizations member account
aws fms list-admins-managing-account # ReadOnlyAccess policy is not enough for this

# Resources

## Get the resources that a Firewall Manager administrator can manage
aws fms get-admin-scope --admin-account <value> # ReadOnlyAccess policy is not enough for this

## Returns the summary of the resource sets used
aws fms list-resource-sets # ReadOnlyAccess policy is not enough for this

## Get information about a specific resource set
aws fms get-resource-set --identifier <value>  # ReadOnlyAccess policy is not enough for this

## Retrieve the list of tags for a given resource
aws fms list-tags-for-resource --resource-arn <value>

## List of the resources in the AWS Organization's accounts that are available to be associated with a FM resource set. Only one account is supported per request.
aws fms list-compliance-status --member-account-ids <value> --resource-type <value> # ReadOnlyAccess policy is not enough for this

## List the resources that are currently associated to a resource set
aws fms list-resource-set-resources --identifier <value> # ReadOnlyAccess policy is not enough for this

# Policies

## Returns the list of policies
aws fms list-policies

## Get information about the specified AWS Firewall Manager policy
aws fms get-policy --policy-id <value>

## List all of the third-party firewall policies that are associated with the third-party firewall administrator's account
aws fms list-third-party-firewall-firewall-policies --third-party-firewall <PALO_ALTO_NETWORKS_CLOUD_NGFW|FORTIGATE_CLOUD_NATIVE_FIREWALL> # ReadOnlyAccess policy is not enough for this

# AppsList

## Return a list of apps list
aws fms list-apps-lists --max-results [1-100]

## Get information about the specified AWS Firewall Manager applications list
aws fms get-apps-list --list-id <value>

# Protocols

## Get the details of the Firewall Manager protocols list.
aws fms list-protocols-lists

## Get information about the specified AWS Firewall Manager Protocols list
aws fms get-protocols-list --list-id <value>

# Compliance

## Return a summary of which member accounts are protected by the specified policy
aws fms list-compliance-status --policy-id <policy-id>

## Get detailed compliance information about the specified member account (resources that are in and out of compliance with the specified policy)
aws fms get-compliance-detail --policy-id <value> --member-account <value>

# Other useful info

## Get information about the SNS topic that is used to record AWS Firewall Manager SNS logs (if any)
aws fms get-notification-channel

## Get policy-level attack summary information in the event of a potential DDoS attack
aws fms get-protection-status --policy-id <value> # Just for Shield Advanced policy

## Get the onboarding status of a Firewall Manager admin account to third-party firewall vendor tenant.
aws fms get-third-party-firewall-association-status --third-party-firewall <PALO_ALTO_NETWORKS_CLOUD_NGFW|FORTIGATE_CLOUD_NATIVE_FIREWALL> # ReadOnlyAccess policy is not enough for this

## Get violations' details for a resource based on the specified AWS Firewall Manager policy and AWS account.
aws fms get-violation-details --policy-id <value> --member-account <value> --resource-id <value> --resource-type <value>

Постексплуатація / Обхід виявлення

organizations:DescribeOrganization & (fms:AssociateAdminAccount, fms:DisassociateAdminAccount, fms:PutAdminAccount)

Зловмисник з дозволом fms:AssociateAdminAccount зможе встановити обліковий запис адміністратора за замовчуванням для Firewall Manager. З дозволом fms:PutAdminAccount зловмисник зможе створити або оновити обліковий запис адміністратора Firewall Manager, а з дозволом fms:DisassociateAdminAccount потенційний зловмисник зможе видалити асоціацію з поточним обліковим записом адміністратора Firewall Manager.

  • Від'єднання облікового запису адміністратора за замовчуванням Firewall Manager відбувається за принципом перший прийшов - останній вийшов. Усі адміністратори Firewall Manager повинні від'єднатися, перш ніж обліковий запис адміністратора за замовчуванням Firewall Manager зможе від'єднати обліковий запис.

  • Щоб створити адміністратора Firewall Manager за допомогою PutAdminAccount, обліковий запис повинен належати організації, яка раніше була підключена до Firewall Manager за допомогою AssociateAdminAccount.

  • Створення облікового запису адміністратора Firewall Manager може бути виконано лише обліковим записом управління організації.

aws fms associate-admin-account --admin-account <value>
aws fms disassociate-admin-account
aws fms put-admin-account --admin-account <value>

Потенційний вплив: Втрата централізованого управління, ухилення від політики, порушення відповідності та порушення контролю безпеки в середовищі.

fms:PutPolicy, fms:DeletePolicy

Зловмисник з правами fms:PutPolicy, fms:DeletePolicy зможе створювати, змінювати або назавжди видаляти політику AWS Firewall Manager.

aws fms put-policy --policy <value> | --cli-input-json file://<policy.json> [--tag-list <value>]
aws fms delete-policy --policy-id <value> [--delete-all-policy-resources | --no-delete-all-policy-resources]

Приклад поблажливої політики через поблажливу групу безпеки, щоб обійти виявлення, може бути таким:

{
"Policy": {
"PolicyName": "permisive_policy",
"SecurityServicePolicyData": {
"Type": "SECURITY_GROUPS_COMMON",
"ManagedServiceData": "{\"type\":\"SECURITY_GROUPS_COMMON\",\"securityGroups\":[{\"id\":\"<permisive_security_group_id>\"}], \"applyToAllEC2InstanceENIs\":\"true\",\"IncludeSharedVPC\":\"true\"}"
},
"ResourceTypeList": ["AWS::EC2::Instance", "AWS::EC2::NetworkInterface", "AWS::EC2::SecurityGroup", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::ElasticLoadBalancing::LoadBalancer"],
"ResourceType": "AWS::EC2::SecurityGroup",
"ExcludeResourceTags": false,
"ResourceTags": [],
"RemediationEnabled": true
},
"TagList": []
}

Потенційний вплив: Демонтаж засобів безпеки, ухилення від політики, порушення відповідності, оперативні збої та потенційні витоки даних у середовищі.

fms:BatchAssociateResource, fms:BatchDisassociateResource, fms:PutResourceSet, fms:DeleteResourceSet

Атакуючий з правами fms:BatchAssociateResource та fms:BatchDisassociateResource зможе асоціювати або деасоціювати ресурси з набору ресурсів Firewall Manager відповідно. Крім того, права fms:PutResourceSet та fms:DeleteResourceSet дозволять атакуючому створювати, змінювати або видаляти ці набори ресурсів з AWS Firewall Manager.

# Associate/Disassociate resources from a resource set
aws fms batch-associate-resource --resource-set-identifier <value> --items <value>
aws fms batch-disassociate-resource --resource-set-identifier <value> --items <value>

# Create, modify or delete a resource set
aws fms put-resource-set --resource-set <value> [--tag-list <value>]
aws fms delete-resource-set --identifier <value>

Потенційний вплив: Додавання надмірної кількості елементів до набору ресурсів збільшить рівень шуму в Сервісі, що потенційно може викликати DoS. Крім того, зміни наборів ресурсів можуть призвести до порушення ресурсів, ухилення від політики, порушення вимог та порушення контролю безпеки в середовищі.

fms:PutAppsList, fms:DeleteAppsList

Зловмисник з правами fms:PutAppsList та fms:DeleteAppsList зможе створювати, змінювати або видаляти списки додатків з AWS Firewall Manager. Це може бути критично, оскільки несанкціонованим додаткам може бути дозволено доступ до загальної публіки, або доступ до авторизованих додатків може бути відмовлено, що викликає DoS.

aws fms put-apps-list --apps-list <value> [--tag-list <value>]
aws fms delete-apps-list --list-id <value>

Потенційний вплив: Це може призвести до неправильних налаштувань, ухилення від політики, порушень відповідності та порушення контролю безпеки в середовищі.

fms:PutProtocolsList, fms:DeleteProtocolsList

Зловмисник з правами fms:PutProtocolsList та fms:DeleteProtocolsList зможе створювати, змінювати або видаляти списки протоколів з AWS Firewall Manager. Аналогічно до списків додатків, це може бути критично важливим, оскільки несанкціоновані протоколи можуть використовуватися загальною публікою, або використання санкціонованих протоколів може бути заборонено, що призведе до DoS.

aws fms put-protocols-list --apps-list <value> [--tag-list <value>]
aws fms delete-protocols-list --list-id <value>

Потенційний вплив: Це може призвести до неправильних налаштувань, ухилення від політики, порушень відповідності та порушення контролю безпеки в середовищі.

fms:PutNotificationChannel, fms:DeleteNotificationChannel

Зловмисник з правами fms:PutNotificationChannel та fms:DeleteNotificationChannel зможе видаляти та призначати IAM роль і тему Amazon Simple Notification Service (SNS), яку Firewall Manager використовує для запису журналів SNS.

Щоб використовувати fms:PutNotificationChannel поза консоллю, потрібно налаштувати політику доступу до теми SNS, дозволяючи вказаному SnsRoleName публікувати журнали SNS. Якщо наданий SnsRoleName є роллю, відмінною від AWSServiceRoleForFMS, це вимагає налаштування довірчих відносин, щоб дозволити службовому принципалу Firewall Manager fms.amazonaws.com приймати цю роль.

Для отримання інформації про налаштування політики доступу до SNS:

https://github.com/HackTricks-wiki/hacktricks-cloud/blob/ua/pentesting-cloud/aws-security/aws-services/aws-services/aws-sns-enum.md
aws fms put-notification-channel --sns-topic-arn <value> --sns-role-name <value>
aws fms delete-notification-channel

Потенційний вплив: Це може призвести до пропущених сповіщень про безпеку, затримки у реагуванні на інциденти, потенційних витоків даних та оперативних збоїв у середовищі.

fms:AssociateThirdPartyFirewall, fms:DisssociateThirdPartyFirewall

Зловмисник з правами fms:AssociateThirdPartyFirewall, fms:DisssociateThirdPartyFirewall зможе асоціювати або від'єднувати сторонні брандмауери від централізованого управління через AWS Firewall Manager.

Тільки за замовчуванням адміністратор може створювати та керувати сторонніми брандмауерами.

aws fms associate-third-party-firewall --third-party-firewall [PALO_ALTO_NETWORKS_CLOUD_NGFW | FORTIGATE_CLOUD_NATIVE_FIREWALL]
aws fms disassociate-third-party-firewall --third-party-firewall [PALO_ALTO_NETWORKS_CLOUD_NGFW | FORTIGATE_CLOUD_NATIVE_FIREWALL]

Потенційний вплив: Від'єднання призведе до ухилення від політики, порушення вимог та порушення контролю безпеки в середовищі. З іншого боку, асоціація призведе до порушення розподілу витрат та бюджету.

fms:TagResource, fms:UntagResource

Зловмисник зможе додавати, змінювати або видаляти теги з ресурсів Firewall Manager, порушуючи розподіл витрат вашої організації, відстеження ресурсів та політики контролю доступу на основі тегів.

aws fms tag-resource --resource-arn <value> --tag-list <value>
aws fms untag-resource --resource-arn <value> --tag-keys <value>

Потенційний вплив: Порушення розподілу витрат, відстеження ресурсів та політик контролю доступу на основі тегів.

Посилання

Support HackTricks

Last updated