+ All Categories
Home > Technology > Amazon Web Services v praxi - Bezpecnost v cloudu

Amazon Web Services v praxi - Bezpecnost v cloudu

Date post: 15-Apr-2017
Category:
Upload: jiri-pihik
View: 182 times
Download: 0 times
Share this document with a friend
31
Amazon Web Services v praxi Jiří Pihík Bezpečnost v cloudu
Transcript
Page 1: Amazon Web Services v praxi - Bezpecnost v cloudu

Amazon Web Services v praxi

Jiří Pihík

Bezpečnost v cloudu

Page 2: Amazon Web Services v praxi - Bezpecnost v cloudu
Page 3: Amazon Web Services v praxi - Bezpecnost v cloudu

● plán pro migraci 9000 aplikací do AWS během 3 let● redukce datacenter: z 34 zbydou 4● 2 000 nových pozic v Center of Software Excellence

AWS ReInvent 2015: https://youtu.be/D5-ifl7KJ00

Page 4: Amazon Web Services v praxi - Bezpecnost v cloudu

"When the data center comes up for lease, what people are doing is looking at, 'I could spend a big pile of money to refit it, or I could replace it with an AWS account'."

Adrian Cockcroft, former Cloud Architect

Page 5: Amazon Web Services v praxi - Bezpecnost v cloudu
Page 6: Amazon Web Services v praxi - Bezpecnost v cloudu

Cloud je bezpečný.

https://aws.amazon.com/compliance/

Page 7: Amazon Web Services v praxi - Bezpecnost v cloudu

AWS IAM

Page 8: Amazon Web Services v praxi - Bezpecnost v cloudu

● Identity and Access Management = Správa přístupu a účtů● Authentication = Kdo jsem? Ověření● Authorization = Co mohu dělat? Povolení

Vymezení pojmů

Page 9: Amazon Web Services v praxi - Bezpecnost v cloudu

Hierarchie v AWS cloudu

Root

Superadmin

Power user

IAM user Federated user Instance role

Page 10: Amazon Web Services v praxi - Bezpecnost v cloudu

Role

Page 11: Amazon Web Services v praxi - Bezpecnost v cloudu

IAM CloudTrail

Služby AWSLogovací nástroje

Záznamy o aktivitě

Autorizace servisních rolí

Autorizace uživatelů

Životní cyklus

Notifikace

Akce

Page 12: Amazon Web Services v praxi - Bezpecnost v cloudu
Page 13: Amazon Web Services v praxi - Bezpecnost v cloudu

● Least privilege● Deny by default● Deny vs Deny vs Allow = ?● MFA● Servisní účty● Role● Všechno je API● Big Brother = CloudTrail

Koncepty

Page 14: Amazon Web Services v praxi - Bezpecnost v cloudu

(Vše)mocný jazyk zabezpečení

NotPrincipalPrincipal

Resource NotResource

Allow Deny

StringNotLike StringLike

Action NotAction

Policy

Policy

Policy

Results

Page 15: Amazon Web Services v praxi - Bezpecnost v cloudu

Ukázky řešení

Page 16: Amazon Web Services v praxi - Bezpecnost v cloudu

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "rds:*", ], "Effect": "Allow", "Resource": "*" }, { "Action": "rds:Create*", "Effect": "Deny", "NotResource": [ "arn:aws:rds:eu-west-1:012345678910:db:*", "arn:aws:rds:eu-west-1:012345678910:snapshot:*" ] } ]}

Omezení vytvářet nové RDS instance mimo Evropu

Page 17: Amazon Web Services v praxi - Bezpecnost v cloudu

{ "Sid": "RDSomezenyPristup", "Action": [ "rds:ModifyDBInstance", "rds:CreateDBSnapshot", "rds:DeleteDBInstance" ], "Effect": "Deny", "Resource": "*", "Condition": { "StringNotEquals": { "rds:db-tag/Stav": "Archiv" } }},{ "Sid": "RDSplnyPristup", "Action": [ "rds:*" ], "Effect": "Allow", "Resource": "*"},{ "Sid": "NoveDatabazePouzeEU", "Action": "rds:Create*", "Effect": "Deny", "NotResource": [ "arn:aws:rds:eu-west-1:012345678910:db:*", "arn:aws:rds:eu-west-1:012345678910:snapshot:*" ]}

Vyhodnocení pravidel:

1 .Všechny aktivity nutné ke správě RDS jsou povolené pro všechny instance.

2. Mazat nebo měnit RDS instance je možné pouze s tagem Stav: Archiv.

3. Vytvářet nové RDS instance je možné pouze v Evropě

Page 18: Amazon Web Services v praxi - Bezpecnost v cloudu

"Condition" : { "DateGreaterThan" : { "aws:CurrentTime" : "2016-02-09T12:00:00Z" }, "DateLessThan": { "aws:CurrentTime" : "2016-02-09T15:00:00Z" }, "IpAddress" : { "aws:SourceIp" : ["192.0.2.0/24", "203.0.113.0/24"] }}

Podmínka - omezení přístupu pouze na daný časový termín a IP adresní rozsah

Page 19: Amazon Web Services v praxi - Bezpecnost v cloudu

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::datascript-morning-talks/finance/*", "Condition": { "Null": { "aws:MultiFactorAuthAge": true } } }, { "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::datascript-morning-talks/verejne/*" } ]}

Jakákoli aktivita ve složce /finance v bucketu datascript-morning-talks je podmíněna použitím 2-fázového ověření.Složka /verejne je věřejně dostupná z internetu.

Page 20: Amazon Web Services v praxi - Bezpecnost v cloudu

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::datascript-morning-talks/reporty/*.pdf", "Condition": { "IpAddress": { "aws:SourceIp": "109.81.209.115" } } } ]}

S3 zápis souborů PDF do složky /reporty v bucketu datascript-morning-talksZápis musí být uskutečněn z IP 109.81.209.115

Page 21: Amazon Web Services v praxi - Bezpecnost v cloudu

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/s3access" }]}

Práva použít servisní roli pro přístup na s3.

Page 22: Amazon Web Services v praxi - Bezpecnost v cloudu

Správa aplikačních strojů pro partnery.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:StartInstances", "ec2:StopInstances", "ec2:RebootInstances" ], "Effect": "Allow", "Resource": "arn:aws:ec2:eu-west-1:1111122222:instance/i-64bf84e9", "Condition": { "IpAddress": { "aws:SourceIp": "109.81.209.115" } } } ]}

Page 23: Amazon Web Services v praxi - Bezpecnost v cloudu

Trust Policy - Přístup z jiného AWS cloudu

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111111222222:root", "333333444444" ] }, "Action": "sts:AssumeRole" } ]}

Page 24: Amazon Web Services v praxi - Bezpecnost v cloudu

{ "Sid": "BucketSecurity", "Principal": { "AWS": [ "333333444444", "111111222222" ] }, "Action": [ "s3:GetBucketPolicy", "s3:DeleteBucketPolicy", "s3:PutBucketPolicy", "s3:GetBucketAcl", "s3:PutBucketAcl", "s3:GetBucketLogging", "s3:PutBucketLogging" ], "Effect": "Deny", "Resource": "arn:aws:s3:::datascript-morning-talks", "Condition": { "StringNotLike": { "aws:username": [ "jiri" ] } } },

S3 bucket policy - umožní přístup z jiných AWS účtů pouze do nastavení přístupu a logování za předpokladu že je příhlášený IAM uživatel jiri.

Page 25: Amazon Web Services v praxi - Bezpecnost v cloudu

Nástroje● IAM Policy generator● IAM Policy simulator● AWS Managed policies

http://awspolicygen.s3.amazonaws.com/policygen.htmlhttps://blogs.aws.amazon.com/security/post/Tx1OEZGD3E2FC4H/An-In-Depth-Look-at-the-IAM-Policy-Simulator

Page 26: Amazon Web Services v praxi - Bezpecnost v cloudu

Federace● firemní Active Directory● Google● Facebook● SAML 2

Page 27: Amazon Web Services v praxi - Bezpecnost v cloudu

Scenáře použití● vývojáři● administrátoři● partneři● dodavatelé● InfoSec● audit● automatizace infrastruktury● cloud brokering

Page 28: Amazon Web Services v praxi - Bezpecnost v cloudu

CloudTrail

Page 29: Amazon Web Services v praxi - Bezpecnost v cloudu

S3 access logging

0b0fbd7ab5d1058f35535fec64595ed51f7fa26ef77ac8e5d88230898be92e2f stepan-bucket [28/Jan/2016:12:47:32 +0000] 160.218.161.54 arn:aws:sts::012345678910:assumed-role/myrole/pihik 9E15D396E0071675 REST.PUT.OBJECT report.html "PUT /report.html HTTP/1.1" 200 - - 5134 457 6 "-" "aws-cli/1.9.21 Python/2.7.11 Windows/7 botocore/1.3.21" -

aws-cli s3 upload object

Page 30: Amazon Web Services v praxi - Bezpecnost v cloudu

Integrace s CloudFormation● plná kontrola nad firemním AWS pomocí skriptovatelných šablon

Page 31: Amazon Web Services v praxi - Bezpecnost v cloudu

Děkuji za pozornost

@pihikj

https://cz.linkedin.com/in/jiripihik

jiri.pihik[at]gmail.com

https://github.com/aws-scripting-guy


Recommended