Jak ZEUS czyta AWS (IAM role / access key, Boto3, GuardDuty, Security Hub)
To kluczowa lekcja dla wdrażających ZEUS u klienta z AWS. Pokazuje dokładnie, jak konektor uwierzytelnia się i jakie API odpytuje — wyłącznie do odczytu.
Tożsamość: rola IAM (preferowana) lub access key
ZEUS oferuje dwa modele uwierzytelnienia:
- Rola IAM cross-account (zalecane) — w koncie klienta tworzymy rolę
z relacją zaufania do konta ZEUS-a; konektor przyjmuje ją przez
AssumeRolei dostaje tymczasowe credentiale. Brak długoterminowych sekretów. - Access key — dla pojedynczego konta lub środowisk bez Organizations. Mniej preferowane (długoterminowy sekret), ale wspierane.
W obu wariantach tożsamość ma tylko polityki ReadOnlyAccess i
SecurityAudit — żadnych uprawnień do modyfikacji.
Polityka zaufania roli (trust policy):
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Principal": { "AWS": "arn:aws:iam::<konto-zeus>:root" },
"Action": "sts:AssumeRole",
"Condition": { "StringEquals": { "sts:ExternalId": "<unikalne-id>" } }
}]
}
Wskazówka: ExternalId chroni przed atakiem "confused deputy". ZEUS zawsze go wymaga przy konfiguracji roli cross-account — to standard branżowy dla dostępu third-party.
Mechanika skanu (Boto3)
Konektor jest zbudowany na Boto3 (patrz lekcja 04). Po przyjęciu roli:
sts = boto3.client("sts")
creds = sts.assume_role(
RoleArn="arn:aws:iam::111122223333:role/zeus-readonly",
RoleSessionName="zeus-scan",
ExternalId="<unikalne-id>",
)["Credentials"]
# ...następnie klienci EC2, S3, RDS, IAM, GuardDuty, SecurityHub z tych creds
Skan używa paginatorów (kompletność), retry z backoffem (throttling)
i wyłącznie operacji Describe/List/Get.
Źródła danych
| Źródło | Co odczytuje | Po co |
|---|---|---|
| EC2 / VPC API | instancje, sieci, security groups | inwentarz + ekspozycja |
| S3 / RDS API | buckety, bazy, szyfrowanie | data posture |
| IAM API | użytkownicy, role, polityki | identity posture |
| GuardDuty | findings (zagrożenia) | SecOps |
| Security Hub | zagregowane findings | posture + compliance |
| Access Analyzer | dostęp zewnętrzny | least privilege |
Konsolidacja wielochmurowa
Wszystkie strumienie z AWS spływają do tego samego modelu danych co Azure i GCP. Dzięki temu klient widzi jeden dashboard postawy bezpieczeństwa, jedną kolejkę alertów (GuardDuty + Defender + SCC) i jeden zestaw dowodów compliance (NIS2, DORA, ISO 27001) — niezależnie od liczby chmur.
Podsumowanie ścieżki
Od kont i IAM, przez sieci, compute, Boto3, usługi bezpieczeństwa i koszty, po konektor ZEUS — masz teraz komplet, by rozumieć, jak ZEUS "widzi" środowisko AWS klienta i poprowadzić wdrożenie czytnika read-only.