Пиджаки в облаках. AWS для ЦРУ.

AWS большой облачный провайдер, с множеством дата-центров, регионов, сервисов и множеством удобных вещей.
Но очевидно, что AWS это не только public cloud и free tier для VPN, но и множество вещей, скрытых от обычного пользователя.

Disclaimer

Данная статья не является “срывом покровов”, долгосрочным результатом работы кибер-разведки, или иной формой откровения. Это наглядный пример, что немалое количество информации можно получить просто почитав документацию и файлы конфигурации.
Это применимо не только к основному продукту, но и к сторонним инструментам.

Кроме того, это показывает что корпорации делают большие деньги не только на обычных пользователях, но и на больших государственных заказах. Так что немного посчитаем, сколько Amazon зарабатывает на них.

Небольшой глосcарий

  • AWS - Amazon Web Services
  • CIA - ЦРУ, оно же Центральное Разведовательное Управление США
  • IC - Intelligence Community, разведовательное сообщество, она же американская разведка
  • C2S - IC’s Commercial Cloud Services, коммерческие сервисы американской разведки

Intro

В AWS есть концепция под названием “partition” (раздел), которая объединяет несколько регионов. Классификация разделов описана в документации.

AWS группирует регионы в разделы. Каждый регион находится ровно в одном разделе, а каждый раздел имеет один или несколько регионов. Разделы имеют независимые экземпляры AWS Identity and Access Management (IAM) и обеспечивают жесткую границу между регионами в разных разделах. Коммерческие регионы AWS находятся в разделе aws, регионы в Китае - в разделе aws-cn, а регионы AWS GovCloud - в разделе aws-us-gov.

Формат доменного имени эндпоинтов API различается в зависимости от раздела.

Обзорная таблица

AWS Partition codeAWS Partition Name
awsAWS Standart
aws-chAWS China
aws-us-govAWS GovCloud (US)
aws-isoAWS ISO (US) - Top Secret
aws-iso-bAWS ISOB (US) - Secret
aws-iso-eAWS ISOE (Eu) - ?
aws-iso-fAWS ISOF - ?

Как мы можем видеть, есть целых семь partition различной интересности.
Давайте посмотрим, насколько глубока кроличья нора.

Non Secret Partitions

Стандартный partition AWS

AWS Partition codeAWS Partition Name
awsAWS Standart

Это раздел, в котором находятся общедоступные регионы.
Сюда включены все обычные коммерческие регионы, которые описаны в документации и доступны обычному пользователю.

Регионы

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const (
    AfSouth1RegionID     = "af-south-1"     // Africa (Cape Town).
    ApEast1RegionID      = "ap-east-1"      // Asia Pacific (Hong Kong).
    ApNortheast1RegionID = "ap-northeast-1" // Asia Pacific (Tokyo).
    ApNortheast2RegionID = "ap-northeast-2" // Asia Pacific (Seoul).
    ApNortheast3RegionID = "ap-northeast-3" // Asia Pacific (Osaka).
    ApSouth1RegionID     = "ap-south-1"     // Asia Pacific (Mumbai).
    ApSoutheast1RegionID = "ap-southeast-1" // Asia Pacific (Singapore).
    ApSoutheast2RegionID = "ap-southeast-2" // Asia Pacific (Sydney).
    ApSoutheast3RegionID = "ap-southeast-3" // Asia Pacific (Jakarta).
    CaCentral1RegionID   = "ca-central-1"   // Canada (Central).
    EuCentral1RegionID   = "eu-central-1"   // Europe (Frankfurt).
    EuNorth1RegionID     = "eu-north-1"     // Europe (Stockholm).
    EuSouth1RegionID     = "eu-south-1"     // Europe (Milan).
    EuWest1RegionID      = "eu-west-1"      // Europe (Ireland).
    EuWest2RegionID      = "eu-west-2"      // Europe (London).
    EuWest3RegionID      = "eu-west-3"      // Europe (Paris).
    MeSouth1RegionID     = "me-south-1"     // Middle East (Bahrain).
    SaEast1RegionID      = "sa-east-1"      // South America (Sao Paulo).
    UsEast1RegionID      = "us-east-1"      // US East (N. Virginia).
    UsEast2RegionID      = "us-east-2"      // US East (Ohio).
    UsWest1RegionID      = "us-west-1"      // US West (N. California).
    UsWest2RegionID      = "us-west-2"      // US West (Oregon).
)

Partition AWS в Китае

AWS Partition codeAWS Partition Name
aws-cnAWS China

Как следует из названия, это китайский регион AWS.
aws-cn имеет другой домен, www.amazonaws.cn, и Amazon Resource Name (ARN) синтаксически влючая в arn имена cn: aws–cn
Эти регионы не имеют прямой связи с AWS Global.
Для открытия счета необходимо юридическое лицо, зарегистрированное в Китае.

Регионы

1
2
3
4
const (
    CnNorth1RegionID     = "cn-north-1"     // China (Beijing).
    CnNorthwest1RegionID = "cn-northwest-1" // China (Ningxia).
)

Кстати, AWS проиграла в Китае судебный процесс по поводу товарного знака «AWS». Таким образом, «AWS», встречающееся в документе, не является товарным знаком, а просто аббревиатурой.
Amazon Web Services подает апелляцию после проигрыша в войне за товарные знаки AWS в Китае местному бизнесу Actionsoft

Partition AWS GovCloud (США)

AWS Partition codeAWS Partition Name
aws-us-govGovCloud (US)

AWS GovCloud был создан для обслуживания потребностей федеральных, государственных и местных органов власти.
Управляется гражданами США на территории США.
Отсутствуют некоторые сервисы (вероятно, связанно с ISO and CSA STAR Certified).
Использует конечные точки, специфичные для AWS GovCloud, которые находятся в открытом доступе в Интернете, но доступны только клиентам AWS GovCloud.

Общее описание из endpoints

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
    "defaults" : {
      "hostname" : "{service}.{region}.{dnsSuffix}",
      "protocols" : [ "https" ],
      "signatureVersions" : [ "v4" ],
      "variants" : [ {
        "dnsSuffix" : "amazonaws.com",
        "hostname" : "{service}-fips.{region}.{dnsSuffix}",
        "tags" : [ "fips" ]
      }, {
        "dnsSuffix" : "api.aws",
        "hostname" : "{service}-fips.{region}.{dnsSuffix}",
        "tags" : [ "dualstack", "fips" ]
      }, {
        "dnsSuffix" : "api.aws",
        "hostname" : "{service}.{region}.{dnsSuffix}",
        "tags" : [ "dualstack" ]
      } ]
    },
    "dnsSuffix" : "amazonaws.com",
    "partition" : "aws-us-gov",
    "partitionName" : "AWS GovCloud (US)",
    "regionRegex" : "^us\\-gov\\-\\w+\\-\\d+$",
    "regions" : {
      "us-gov-east-1" : {
        "description" : "AWS GovCloud (US-East)"
      },
      "us-gov-west-1" : {
        "description" : "AWS GovCloud (US-West)"
      }

Регионы

1
2
3
4
const (
    UsGovEast1RegionID = "us-gov-east-1" // AWS GovCloud (US-East).
    UsGovWest1RegionID = "us-gov-west-1" // AWS GovCloud (US-West).
)

Secret Partitions

Секретные регионы AWS отличаются от GovCloud и представляет собой регион, созданный Разведывательным сообществом США (IC) как для своих нужд, так и для предоставления коммерческих облачных услуг (C2S).

ISO partition находятся в домене ic.gov и мы можем проверить, кому принадлежит он принадлежит. На Whois сайте для доменов .gov мы обнаружим, домен принадлежит Central Intelligence Agency, оно же ЦРУ.

Секретность тут довольно спорная. Указано, что данные разделы используются IC, CIA и прочими государственными органами США, однако часть информации можно о них узнать в Go SDK, и в issue terraform-провайдера.

Так же список эндпоинтов указаны в botocore, aws-sdk-js-v3 и некоторых других инструментах.

В данном случае я буду рассматривать endpoints.json из репозитория botocore.

Partition AWS ISO (США)

AWS Partition codeAWS Partition Name
aws-isoAWS ISO (US) - Top Secret

AWS-iso был запущен для обслуживания Top secret government data. На данный момент есть два региона, которые были развернуты в рамках разных контрактов:

  1. US ISO East был запущен в 2014
  2. US ISO West был запущен в 2021.

Он не является частью общедоступного Интернета. Заявленно, что присуствует air-gap, но описание сервисов доступно в конфигурации инструментов.
Создан и запущен силами AWS, но размещается в ЦРУ (on-premise).

DNS-суффикс: c2s.ic.gov

Общее описание из endpoints

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
    "defaults" : {
      "hostname" : "{service}.{region}.{dnsSuffix}",
      "protocols" : [ "https" ],
      "signatureVersions" : [ "v4" ],
      "variants" : [ {
        "dnsSuffix" : "c2s.ic.gov",
        "hostname" : "{service}-fips.{region}.{dnsSuffix}",
        "tags" : [ "fips" ]
      } ]
    },
    "dnsSuffix" : "c2s.ic.gov",
    "partition" : "aws-iso",
    "partitionName" : "AWS ISO (US)",
    "regionRegex" : "^us\\-iso\\-\\w+\\-\\d+$",
    "regions" : {
      "us-iso-east-1" : {
        "description" : "US ISO East"
      },
      "us-iso-west-1" : {
        "description" : "US ISO WEST"
      }

Регионы

1
2
3
4
const (
    UsIsoEast1RegionID = "us-iso-east-1" // US ISO East.
    UsIsoWest1RegionID = "us-iso-west-1" // US ISO WEST.
)

IAM

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
{
"iam" : {
        "endpoints" : {
          "aws-iso-global" : {
            "credentialScope" : {
              "region" : "us-iso-east-1"
            },
            "hostname" : "iam.us-iso-east-1.c2s.ic.gov"
          }
        },
        "isRegionalized" : false,
        "partitionEndpoint" : "aws-iso-global"
      },

Partition AWS ISO B (США)

AWS Partition codeAWS Partition Name
aws-iso-bAWS ISOB (US) - Secret government data

aws-iso-b был запущен в 2017.
Может работать с рабочими нагрузками вплоть до секретного уровня.
aws-iso-b доступен как IC, так и сторонним гос. клиентам, и может использоваться в любых государственных учреждениях.

DNS-суффикс: sc2s.sgov.gov

Общее описание из endpoints

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
{
    "defaults" : {
      "hostname" : "{service}.{region}.{dnsSuffix}",
      "protocols" : [ "https" ],
      "signatureVersions" : [ "v4" ],
      "variants" : [ {
        "dnsSuffix" : "sc2s.sgov.gov",
        "hostname" : "{service}-fips.{region}.{dnsSuffix}",
        "tags" : [ "fips" ]
      } ]
    },
    "dnsSuffix" : "sc2s.sgov.gov",
    "partition" : "aws-iso-b",
    "partitionName" : "AWS ISOB (US)",
    "regionRegex" : "^us\\-isob\\-\\w+\\-\\d+$",
    "regions" : {
      "us-isob-east-1" : {
        "description" : "US ISOB East (Ohio)"
      }

IAM

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
{
      "iam" : {
        "endpoints" : {
          "aws-iso-b-global" : {
            "credentialScope" : {
              "region" : "us-isob-east-1"
            },
            "hostname" : "iam.us-isob-east-1.sc2s.sgov.gov"
          }
        },
        "isRegionalized" : false,
        "partitionEndpoint" : "aws-iso-b-global"
      },

Регионы

1
2
3
4
5
6
7
8
{
  "aws-iso-b",
  "AWS ISOB (US)",
  }{
    "us-isob-east-1": {
      "description": "US ISOB East (Ohio)"
    }
  }

Partition AWS ISO E (Европа)

AWS Partition codeAWS Partition Name
aws-iso-eAWS ISOE (Eu) - ?

Не известна дата запуска, известно только то, что оно сделано для Европы.
Вероятно, этот partition создаётся так же для правительственных нужд или нужд британской разведки.

Известен DNS-суффикс: cloud.adc-e.uk.

Регионы

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

Общее описание из endpoints

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
   {
    "defaults" : {
      "hostname" : "{service}.{region}.{dnsSuffix}",
      "protocols" : [ "https" ],
      "signatureVersions" : [ "v4" ],
      "variants" : [ {
        "dnsSuffix" : "cloud.adc-e.uk",
        "hostname" : "{service}-fips.{region}.{dnsSuffix}",
        "tags" : [ "fips" ]
      } ]
    },
    "dnsSuffix" : "cloud.adc-e.uk",
    "partition" : "aws-iso-e",
    "partitionName" : "AWS ISOE (Europe)",
    "regionRegex" : "^eu\\-isoe\\-\\w+\\-\\d+$",
    "regions" : { },
    "services" : { }
  } 

Partition AWS ISO F

AWS Partition codeAWS Partition Name
aws-iso-fAWS ISOF - ?

Не удалось найти что-либо, возможно ещё не дошло до стадии строительства.

Известен только DNS-суффикс: csp.hci.ic.gov.

Регионы

Нет указанных регионов.

Общее описание из endpoints

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
  {
    "defaults" : {
      "hostname" : "{service}.{region}.{dnsSuffix}",
      "variants" : [ {
        "dnsSuffix" : "csp.hci.ic.gov",
        "hostname" : "{service}-fips.{region}.{dnsSuffix}",
        "tags" : [ "fips" ]
      } ]
    },
    "dnsSuffix" : "csp.hci.ic.gov",
    "partition" : "aws-iso-f",
    "partitionName" : "AWS ISOF",
    "regionRegex" : "^us\\-isof\\-\\w+\\-\\d+$",
    "regions" : { },
    "services" : { }
  }

Есть ли какие-то ещё разделы и регионы не известно, в официальных источниках указаны только коммерческие регионы и разделы.

Финансовый вопрос

Информации о сделках не так много. Если рассматривать только контракты с правительством США, то были контракты на \$600 миллионов в 2013-2014 годах (судя по всему, это за aws-iso), в 2021 был заключен контракт уже на $10 миллиардов. Возможно, цифра не впечатляющая, однако это только часть пазла. Так же некоторые источники сообщают, что AWS получила государственный контракт, потенциальная сумма которого к 2026 году может достичь $178,8 млн.

Резюме

Несколько странно, что такая информация об этом попадает вообще в публичный доступ, в том числе SDK.
Само собой, это нельзя назвать какой-то утечкой информации или поводом для выезда пати-вэна к техническим писателям и разработчикам.

Но это позволяет посмотреть на AWS несколько под иным углом, даёт представление о том, где американские рыцари плаща и кинжала держат свою инфраструктуру.


Reference

AWS

AWS Docs: Partitions
AWS GovCloud
AWS: AWS GovCloud (US) or standard? Selecting the right AWS partition
AWS: Announcing the New AWS Secret Region
AWS Docs: AWS SDK for Go API Reference. pkg constants
AWS Docs: Amazon Resource Names (ARNs)

AWS Public Sector Summit

Youtube: AWS Public Sector Summit 2017 Customer Keynote: John Edwards, Central Intelligence Agency

Blogs

Neokobo: AWS Regions in Order by Partition Type
note.com: 知らなくても困らないAWSリージョンのパーティション

Github

[Github botocore. endpoints] Github: Hashicorp Issue: Support aws-iso, aws-iso-b, aws-iso-e, aws-iso-f partitions
Github: prowler. aws_regions_by_service
Github: aws-sdk-go. endpoints
Github: aws-sdk-js-v3. endpoints

Finance

The Atlantic: The Details About the CIA’s Deal With Amazon
Nextgov: Amazon Web Services Announces Second ‘Top Secret’ Cloud Region
Tender Alpha: How Much Do Government Contracts Contribute to Amazon Web Services’ Growth?

Other

Wiki: United States Intelligence Community
AWSRegion.info

0%