Steampipe - 클라우드 리소스 가시화 툴

https://medium.com/ctc-mzc/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%A6%AC%EC%86%8C%EC%8A%A4-observability-%ED%99%95%EB%B3%B4-%EB%8F%84%EA%B5%AC-steampipe-%EC%82%AC%EC%9A%A9%EA%B8%B0-ce2c454ddf71

 

https://steampipe.io/

클라우드 리소스를 SQL 형태로 검색할 수 있음. 리소스 현황 파악을 할 수도 있고 사전에 정의한 내용에 따라 보안검사 등도 할 수가 있음.

별도 DBMS 설치 필요없고 프로그램만 설치하면 됨.

Ubuntu 에 설치

https://steampipe.io/downloads

$ sudo /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/turbot/steampipe/main/install.sh)" # version check $ steampipe -v # Install your first plugin $ steampipe plugin install steampipe # first query $ steampipe query "select name from steampipe_registry_plugin;" $ steampipe query > .tables

 

https://steampipe.io/docs 문서는 AWS 기준으로 되어 있음.

 Steampipe mods  라는 것을 이용하여 자주 사용하는 쿼리를 저장하고 레포트 형태로 사용을 할 수가 있음.

AWS query, dashboard

https://steampipe.io/docs

# install aws plugin $ steampipe plugin install aws # query $ $ steampipe query > .tables select name from aws_iam_role $ git clone https://github.com/turbot/steampipe-mod-gcp-compliance.git $ cd steampipe-mod-gcp-compliance $ steampipe check all

 

대시보드 : Steampipe를 사용하여 AWS 리소스에 대한 대시보드 및 보고서를 생성

https://hub.steampipe.io/mods/turbot/aws_insights

git clone https://github.com/turbot/steampipe-mod-aws-insights.git cd steampipe-mod-aws-insights steampipe dashboard

mac에서는 steampipe dashboard 가 실행이 안되었는데 이에 대해서는 확인 필요. (최신 버전으로 업데이트 시 실행이 되었음)

AWS Compliance Mod for Steampipe

https://hub.steampipe.io/mods/turbot/aws_compliance

https://github.com/turbot/steampipe-mod-aws-compliance

모든 AWS 리전에서 업계에서 정의한 보안 모범 사례를 다루는 300개 이상의 검사. PCI DSS, AWS Foundational Security, HIPAA, NIST 800-53, NIST CSF, Reserve Bank of India, Audit Manager Control Tower 및 최신(v1.4.0) CIS 벤치 마크를 포함한 여러 모범 사례 벤치마크에 대한 완전한 지원 포함

 

Includes support for:

 

AWS Security Hub 에서 지원하는 AWS CIS는 v.1.2.0 인데 Steampipe 에서는 AWS CIS v1.3.0, AWS CIS v1.4.0 임.

AWS Security Hub 에서 지원하는 AWS Foundational Security Best Practices 은 Steampipe에서 심각도에 따라서 구분을 할 수 있어서 편리함.

 

CIS Amazon Web Services Foundations Benchmark v1.4.0 - 05-28-2021 https://www.cisecurity.org/cis-benchmarks/

 

 

AWS Compliance Mod for Steampipe 실행. 아래와 같이 실행시에는 여러 모범 사례 벤치마크를 실행하기 때문에 항목이 1천여가지가 됨. 필요한 벤치마크만 실행하는 것이 좋을 것 같음.

AWS CIS v1.4.0 , AWS Foundational Security Best Practices 를 먼저 활용을 하면 될 듯 하다. AWS CIS v1.4.0 는 항목이 매우 많은데 Steampipe에서는 심각도별로 정보가 나오지 않는 듯 하다. AWS Foundational Security Best Practices 의 경우는 심각도별로 정보가 나오기 때문에 심각도가 높은 것만 뽑아서 설정을 업데이트하는 것이 좋겠다.

CIS Amazon Web Services Foundations Benchmark v1.4.0

AWS CIS v1.4.0 : 5가지 항목으로 체크 함.

  • Identity and Access Management : MFA 강제, Access key 90일 이내, group 통해서만 권한 받기 등.

  • Storage : S3, ec2, RDS 데이터 암호화

  • Logging : CloudTrail 활성화, CloudTrail 을 CloudWatch Logs 로 보내기.

  • Monitoring : 보안 관련한 메트릭 및 알람 모니터링 설정

  • Networking : NACL, SG 체크

export 옵션에서 html로 출력.

https://steampipe.io/docs/check/overview

https://steampipe.io/docs/check/formatting

AWS Foundational Security Best Practices

AWS의 각 서비스에 따라서 체크를 함. severity 심각도를 이용할 수 있다.

benchmark check

AWS Foundational Security Best Practices 에서 critical, high만 확인.

--dry-run 플래그를 이용해서 어떤 컨트롤을 적용하는지 목록 확인.

 

각 항목별로 나오는 내용에 대해서는 steampipe 에서도 어떻게 작업을 하면 되는지 나오며 https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp-controls.html 의 문서를 참고해도 된다. severity 는 AWS 문서에서만 나온다.

기타 AWS mod for Steampipe

https://hub.steampipe.io/mods/turbot/aws_thrifty

Be Thrifty on AWS! This mod checks for unused resources and opportunities to optimize your spend on AWS.

 

https://hub.steampipe.io/mods/turbot/aws_tags

Run tagging controls across all your AWS accounts to look for untagged resources, missing tags, resources with too many tags, and more.