[초보자] 아마존 검사기를 사용해 보세요.

5627 단어 AWSInspector초보자

1. 목적

  • 안전 관련 서비스를 복습하고 있습니다.한 번도 접촉한 적이 없는 아마존 검사기에 대해 튜토리얼 수준의 확인을 하고 개요를 파악한다.
  • 2. Amazon Inspector란 (자신의 이해)

  • EC2 인스턴스에 대한 취약성 평가를 수행하고 위험을 시각화하는 서비스
  • 이해하기 쉬운 해설은 Developers.io 기사: "AWS 재입문 블로그 릴레이 아마존 Inspector 편" 등에 있기 때문에 그것을 보면서 손으로 확인한 것을 기록한다.
  • 3. 했던 일

  • 평가할 실례를 만듭니다.
  • 관리자에서 다음을 수행합니다.
  • 평가 목표 만들기: 목표(평가 대상 실례)를 지정하고 에이전트를 설치합니다.
  • 평가 템플릿 제작: 목표 및 평가 항목의 선택을 진행한다.
  • 평가 및 결과 확인.
  • 평가 결과에 따라 OS의 설정 수정(취약성 대응)을 실시하고 다시 평가를 실시하여 결과 변화를 확인한다.
  • 4. 구조도

  • 감사할 인스턴스를 만듭니다(Amazon Linux2).
  • Systems Manager(에이전트 설치용)와 통신하기 위해 실례에 EIP를 부여하여 인터넷 통신을 할 수 있도록 한다.

  • 5. 작업 단계


    5.1 사전 준비

  • 공용 서브넷에서 평가 대상 인스턴스(Amazon Linux2)를 작성하여 EIP를 부여합니다.표준 AMI에서 직접 시작합니다.
  • 검사기에서 평가 대상의 실례 지정은 라벨로 이루어지기 때문에 실례에 대해'Name:mksamba-inspector-target-instance'라는 라벨을 미리 부여한다.
  • 실례에 에이전트를 설치해야 검사기의 평가 대상이 될 수 있다.에이전트는 이번에 Systems Manager를 통해 설치되기 때문에 실례에 대해 Systems Manager를 사용하는 role'AmazonSSMManagedInstanceCore'를 부여했다.
  • 5.2 검사기 평가 목표 생성

  • '평가목표'화면에서 라벨을 통해 평가대상으로 지정한 실례를 통해'평가목표'를 만든다.
  • 이번에'Name: mksamba-inspector-target-instance'를 지정하여 방금 제작한 실례만 평가 대상이 되도록 합니다.
  • "Systems Manager-노드 관리-Run Command"화면에서 평가 대상의 실례에 대해run명령(inspector 에이전트 설치)을 실행한 것을 확인합니다.
  • 평가 대상 - 미리 보기 대상 화면에서 에이전트의 상태가 건강한지 확인합니다.

  • 5.3 검사기 평가 템플릿 만들기

  • '평가 템플릿'화면에서'평가 목표'와'평가 항목'의 조합을 템플릿으로 생성한다.
  • 이번 설정은 다음과 같다.
  • 평가목표: 전 단계에 따라 작성한 평가목표 지정
  • 규칙 패키지: 미리 정의된 4개의 규칙 패키지(평가 항목 집합) 중 어느 것을 사용할지 선택합니다.이번에는 네 개의 규칙 패키지를 모두 선택하세요.
  • Assessment Schedule: 이번에는 한 번만 실행하므로 선택을 취소합니다.
  • '제작 및 집행'을 실시하고 평가 템플릿의 제작 및 첫 평가 집행을 실시한다.
  • 또한 4개의 규칙 패키지의 개요는 다음과 같다.
  • 규칙 패키지
    컨텐트
    CIS Operating System Security Configuration Benchmarks-1.0
    CIS(Center for Internet Security) 기준은 보안 구성 시스템의 구성 기준과 모범 사례를 제공합니다CIS에 대한 Microsoft의 설명.
    Network Reachability-1.1
    외부 네트워크(VPC 외)의 네트워크 접근성
    Common Vulnerabilities and Exposures-1.1
    CVE 기반 평가
    Security Best Practices-1.0
    ssh를 통해 루트에 로그인할 수 있는지 여부와 같은 AWS 권장 모범 사례

    5.4 결과 확인

  • 평가 실행 화면에서 평가 실행 결과를 다운로드하여 보고할 수 있습니다.
  • 이번 결과는 다음과 같다.'CIS Operating System Security Configuration Benchmarks-1.0'에서 97개,'Common Vulner abilities and Exposures-1.1'에서 4개,'Network Reachability-1.1'에서 1개,'Security Best Practices-1.0'에서 1개가 검출됐다.
  • 규칙 패키지
    발견수
    컨텐트
    CIS Operating System Security Configuration Benchmarks-1.0
    97
    "/tmp를 적절히 설정했는지 확인하세요"등 상세한 조언이 많다.
    Network Reachability-1.1

    구상에서'ssh 비어 있다'고 지적했다.SRCPort가 축소되었으므로 문제가 없습니다.
    Common Vulnerabilities and Exposures-1.1

    cloud-init에 대해서는 3건,chrony에 대해서는 1건이 있습니다.듣자니 각자의 판본은 모두 매우 낡았다고 한다.
    Security Best Practices-1.0

    루트 로그인이 유효합니다.

    5.5 설정 수정 및 재평가

  • "Common Vulnerabilities and Exposures-1.1"에서 검출된 빈틈을 복구하기로 했습니다.
  • 발견된 4가지 내용(상응하는 CVE ID 및 객체의 소프트웨어)은 다음과 같습니다.
  • CVE ID
    대상 소프트웨어
    CVE-2018-10896
    cloudinit-0:19.3-3.amzn2
    CVE-2020-14367
    chrony-0:3.2-1.amzn2.0.5
    CVE-2020-8631
    cloudinit-0:19.3-3.amzn2
    CVE-2020-8632
    cloudinit-0:19.3-3.amzn2
  • 정상yumupdate 후,chrony와cloudinit는 모두 새로운 버전으로 업데이트되었습니다.
  • [ec2-user@ip-172-16-0-41 ~]$ sudo yum update
    Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
    amzn2-core                                               | 3.7 kB     00:00
    amzn2extra-docker                                        | 3.0 kB     00:00
    Resolving Dependencies
    --> Running transaction check
    ---> Package chrony.x86_64 0:3.2-1.amzn2.0.5 will be updated
    ---> Package chrony.x86_64 0:3.5.1-1.amzn2.0.1 will be an update
    --> Processing Dependency: libnettle.so.4()(64bit) for package: chrony-3.5.1-1.amzn2.0.1.x86_64
    ---> Package cloud-init.noarch 0:19.3-3.amzn2 will be updated
    ---> Package cloud-init.noarch 0:19.3-4.amzn2 will be an update
    
  • yumupdate 실시 후 다시 같은 평가 템플릿을 사용하여 평가를 진행했지만 상기 상황은 제거(미검출).
  • 6. 느끼는 것

  • 개념으로 예전부터'호스트형 취약성 스캐너'라는 느낌이 들어 그렇게 저항감 없이 이해할 수 있다.
  • 쉽게 실행할 수 있지만 검사된 취약성(정말 처리해야 하는지 확인)이 힘들기 때문에 사용하더라도 규칙 패키지의 선택 등에 주의해야 한다.
  • 좋은 웹페이지 즐겨찾기