2022. 9. 19. 00:29ใAWS
AWS Docs: Managing multiple accounts in Amazon GuardDuty๋ฅผ ์ฝ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์์ฑํ ํฌ์คํ ์ ๋๋ค.
์์ฑ ๋ ์ง : 22-09-18
๐ฉ GuardDuty๋?
๋ณด์ ๋ชจ๋ํฐ๋ง ์๋น์ค. ์๋๋ GuardDuty๊ฐ ๋ชจ๋ํฐ๋ง ๊ฐ๋ฅํ AWS ๋ฆฌ์์ค์ด๋ค.
- S3 logs์ ์์ด๋ CloudTrail ์ด๋ฒคํธ
- CloudTrail ๊ด๋ฆฌ ์ด๋ฒคํธ ๋ก๊ทธ
- DNS ๋ก๊ทธ
- EBS ๋ณผ๋ฅจ ๋ฐ์ดํฐ
- EKS audit log
- VPC flow log
AWS GuardDuty๋ ์ ์์ ์ธ IP์ ๋๋ฉ์ธ ๋ฆฌ์คํธ์ ๊ฐ์ ์ํ ์ธํ ๋ฆฌ์ ์ค ํผ๋์ AWS ํ๊ฒฝ ๋ด ์์ธกํ์ง ๋ชปํ๊ณ ์ธ์ฆ๋์ง ์์ ์ ์์ ์ธ ํ๋์ ์๋ณํ๊ธฐ ์ํด ๋จธ์ ๋ฌ๋์ ์ด์ฉํ๋ค.
ex) GuardDuty๋ ๋ฉ์จ์ด๋ฅผ ์๋น์คํ๊ฑฐ๋ ๋นํธ์ฝ์ธ์ ์ฑ๊ตดํ๋ ec2 ์ธ์คํด์ค๋ ์ปจํ ์ด๋ ์ํฌ๋ก๋๋ฅผ ํ์งํ ์ ์๋ค.
๐ฉ ์ฌ๋ฌ ๊ณ์ ์ AWS GuardDuty ๊ด๋ฆฌํ๊ธฐ
Amazon Gurdduty์์ ๋ค์์ ๊ณ์ ์ ๊ด๋ฆฌํ๋ ค๋ฉด GuardDuty Administrator ๊ณ์ ์ผ๋ก ํ AWS Account๋ฅผ ์ ํํด์ผ๋ง ํ๋ค. ์ด GuardDuty Administrator ๊ณ์ ์ ๋ฉค๋ฒ ๊ณ์ ์ผ๋ก ๋ค๋ฅธ ๊ณ์ ์ ์ฐ๊ฒฐํ ์ ์๋ค. ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง์ด๋ค.
- ๊ฐ์ AWS Organizations์ ์ํ ๊ฒฝ์ฐ AWS Organizations์ ํตํด ๊ณ์ ์ฐ๊ฒฐ (AWS recommend)
- GuardDuty๋ฅผ ํตํด ์ด๋
GuardDuty Administrator ๊ณ์ ์ ์๋์ ๊ฐ์ด ๋ฉค๋ฒ ๊ณ์ ์ ๊ด๋ฆฌ๋ฅผ ํ ์ ์๋ค.
- ์ฐ๊ฒฐ๋ ๋ฉค๋ฒ ๊ณ์ ์ ์ถ๊ฐํ๊ณ ์ ๊ฑฐํ ์ ์๋ค. ํ๋ก์ธ์ค๋ ์ด๋์ธ์ง ๋๋ organization์ ํตํ ์ฐ๊ฒฐ์ธ์ง์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
- GuardDuty๋ฅผ ํ์ฑํํ๊ณ ์ค์งํ๋ ๊ฒ์ ํฌํจํ์ฌ ์ฐ๊ฒฐ๋ ๋ฉค๋ฒ ๊ณ์ ์ GuardDuty ์ํ๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
- AWS Organizations์ผ๋ก๋ถํฐ ์์๋ ๊ด๋ฆฌ์ ๊ณ์ (1๋ฒ ๋ฐฉ๋ฒ์ผ๋ก ๊ณ์ ์ฐ๊ฒฐํ ๊ฒฝ์ฐ)์ ์๋์ผ๋ก ๋ฉค๋ฒ๋ก ์ถ๊ฐ๋ ๊ณ์ ์์ GuardDuty๋ฅผ ํ์ฑํํ๋ค.
- ์ค์ง ๊ท์น, ์ ๋ขฐํ ์ ์๋ IP ๋ชฉ๋ก, threat list๋ฅผ ์์ฑํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ์ ํตํด GuardDuty network ๋ด์์ ๊ฒฐ๊ณผ๋ฅผ ์ปค์คํฐ๋ง์ด์ง ํ ์ ์๋ค. ๋ค์ค account ํ๊ฒฝ์์ ๋ฉค๋ฒ ๊ณ์ ์ ์ด๋ฐ ๊ธฐ๋ฅ์ด ์ ํ๋๋ค.
๋ฐฉ๋ฒ 1. AWS Organizations๋ฅผ ์ด์ฉํ์ฌ ๋ค์์ GuardDuty Accont ๊ด๋ฆฌํ๊ธฐ
- Organization management ๊ณ์ ์ด GurdDuty์ ์์๋ฐ์ ๊ด๋ฆฌ์๋ฅผ ์ง์ ํ ์ ์๋ค.
- Organizaion management ๊ณ์ ์ผ๋ก๋ถํฐ GuardDuty ๊ด๋ฆฌ์๋ก ์์๋ฐ์ ๊ณ์ ์ GuardDuty Administrator Account๊ฐ ๋๋ค.
1-1. ๊ณ ๋ ค์ฌํญ
- ์์๋ฐ์ administrator๋ ์ต๋ 5000๊ฐ์ ๋ฉค๋ฒ ๊ณ์ ์ ๊ด๋ฆฌํ ์ ์๋ค.
- ์์๋ฐ์ administrator๋ ์ง์ญ์ ๊ท์ํ๋ค.
- GuardDuty๋ Regional Service์ด๋ค. (Organizations๋ global service)
- ๋ฐ๋ผ์ ์์๋ฐ์ administrator๋ ๋ณธ์ธ์ด ์ํ region์ member account๋ง ์ถ๊ฐํ ์ ์๋ค.
- Organization์ ํ๋์ ์์๋ฐ์ administrator๋ฅผ ๊ฐ์ง ์ ์๋ค.
- ์์๋ฐ์ administrator์ ๋ณ๊ฒฝํ๋ ๊ฒ์ member account์ GuardDuty๋ฅผ ๋นํ์ฑํํ์ง ์๋๋ค.
- ์์๋ฐ์ administrator๋ฅผ ์ ๊ฑฐํ๋ฉด, ๋ชจ๋ ์ฐ๊ด๋ member accounts๋ GuardDuty member๋ก ์ ๊ฑฐ๋์ง๋ง ๊ฐ ๊ณ์ ์์ GuardDuty๊ฐ ๋นํ์ฑํ๋์ง๋ ์๋๋ค.
๋ฐฉ๋ฒ 2. ์ด๋๋ฅผ ํตํด ๋ค์์ GuardDuty Accont ๊ด๋ฆฌํ๊ธฐ
- ์ฐ๊ฒฐํ๊ณ ์ ํ๋ ๊ณ์ ์ด AWS Organization์ ์ํ์ง ์๋ ๊ฒฝ์ฐ GuardDuty์์ Administrator account๋ฅผ specifyํ๊ณ ๊ทธ administrator ๊ณ์ ์ ์ด์ฉํ์ฌ ๋ค๋ฅธ AWS ๊ณ์ ์ ๋ฉค๋ฒ ๊ณ์ ์ผ๋ก ์ด๋ํ ์ ์๋ค. ์ด๋๊ฐ ์น๋๋๋ฉด ๊ทธ ๊ณ์ ์ GuardDuty administrator ๊ณ์ ์ ์ฐ๊ฒฐ๋ ๋ฉค๋ฒ ๊ณ์ ์ด ๋๋ค.
- ์ฐ๊ฒฐํ๊ณ ์ ํ๋ ๊ณ์ ์ด AWS Organization์ ์ํ์ง ์๋ ๊ฒฝ์ฐ ์ด๋ ๋ฐฉ๋ฒ์ ์ด์ฉํ ์ ์๋ค.
- AWS Account๋ GuardDuty administrator ๊ณ์ ์ด๋ฉด์ ๋์์ member ๊ณ์ ์ผ ์ ์๋ค.
- ์ด๋๋ก ์ธํด ์ฐ๊ฒฐ๋๋ administrator ๊ณ์ ๊ณผ member ๊ณ์ ๊ฐ์ ๊ด๊ณ๋ Organization ๋ด์์ ์์๋ฐ์ administrator ๊ณ์ ๊ณผ member ๊ณ์ ๊ฐ์ ๊ด๊ณ์ ๊ฐ๋ค. ํ์ง๋ง ์ด๋์ ์ํ administrator ๊ณ์ ์ ์ ์ ๋ member ๊ณ์ ์ ๋์ ํ์ฌ GuardDuty๋ฅผ ํ์ฑํํ๊ฑฐ๋ Organiztaions์ ์ํ ๋ค๋ฅธ member๊ฐ ์๋ ๊ณ์ ์ ๋ณด์ง ๋ชปํ๋ค.
2-1. AWS GuardDuty Console์์ ๋ค๋ฅธ Account ์ด๋ํ๊ธฐ
1) AWS GuardDuty Console > Settings > Accounts > ์ข์ธก ์๋จ์ [Add accounts] ๋ฒํผ ํด๋ฆญ
2) ์ถ๊ฐํ ๊ณ์ ์ ์ ํํ๊ณ ์ข์ธก ์๋จ์ ์์ (Actions) > ์ด๋(Invite) ํด๋ฆญ
3) ์ด๋ํ ๋ฉค๋ฒ ๊ณ์ ์ผ๋ก ์ ์ํ์ฌ, ์ด๋ ์๋ฝ
2-2. ์ฃผ์ํ ์ โ ๏ธ
์ด๋๋ก ์ธํด GuardDuty๊ฐ ๋ฉค๋ฒ ๊ณ์ ์ ๋ง๋ค ๋ cross-regional ๋ฐ์ดํฐ ์ ์ก์ด ๋ฐ์๋๋ค. ๋ฉค๋ฒ ๊ณ์ ์ ์ด๋ฉ์ผ ์ฃผ์๋ฅผ ์ธ์ฆํ๊ธฐ ์ํด GuardDuty๊ฐ US East(N. Virginia)์์ ์ด๋ฉ์ผ ์ธ์ฆ ์๋น์ค๋ฅผ ์ํํ๋ค.
๐ฉ ์ฌ๋ฌ ๊ณ์ ์ GuardDuty findings๋ฅผ S3์ ๋ก๊น ํ๊ธฐ
GuardDuty๋ findings๋ฅผ CloudWatch Events ๋ฐ AWS S3 ๋ฒํท์ผ๋ก exportํ ์ ์๋ค. GuardDuty๊ฐ ์์ฑํ๋ ์ ๊ท findings๋ ์์ฑ๋ ํ ์ฝ 5๋ถ ์ด๋ด์ ์๋์ผ๋ก ๋ณด๋ด์ง ์ ์๋ค. findings์ ๋ํ ์ ๋ฐ์ดํธ๋ฅผ CloudWatch ์ด๋ฒคํธ๋ก export ํ๋ ๋น๋๋ฅผ ์ค์ ํ ์ ์๋ค.
์ ๊ธฐ๋ฅ์ ์ด์ฉํ์ฌ S3์ findings๋ฅผ ์๋์ผ๋ก exportํ๋ ๊ฒฝ์ฐ, S3 ๋ฒํท ๋ฐ ๋์ผํ ๋ฆฌ์ ์ KMS ํค๊ฐ ํ์ํ๋ค.
์ฌ๋ฌ ๊ณ์ ์ ํตํฉํ๋ GuardDuty Administrator ๊ณ์ ์์ ๋ก๊น ์ ์ค์ ํ๋ฉด Member ๊ณ์ ์ findings๋ ํจ๊ป ๋ก๊น ๋๋ค.
์ค์๊ฐ GuardDuty ๋ก๊น ์ด ํ์ํ ๊ฒฝ์ฐ, GuardDuty Administrator Account ๊ณ์ ์์ Kinesis Data Firehose๋ฅผ ์ด์ฉํ์ฌ S3์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค. (์ฐธ๊ณ : [AWS Kinesis Data Firehose] Cross-Account ํ๊ฒฝ์์ ๋ค๋ฅธ ๊ณ์ ์ S3 Bucket์ ์ค์๊ฐ ๋ฐ์ดํฐ ์คํธ๋ฆฌ๋ฐ ํ๊ธฐ) ์ด ๊ฒฝ์ฐ, EventBridge๋ฅผ ํตํด GuardDuty์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ฉด Kinesis Data Firehose Delivery Stream์ trigger ํ๋๋ก ํ๋ ์ถ๊ฐ ๊ตฌ์ฑ์ด ํ์ํ๋ค.