Linux 기반 Amazon EC2 인스턴스에 대한 Amazon Inspector 심층 검사
Amazon Inspector의 Amazon EC2 스캔 적용 범위가 확대되어 심층 검사가 포함되었습니다. 심층 검사를 통해 Amazon Inspector는 Linux 기반 Amazon EC2 인스턴스에서 애플리케이션 프로그래밍 언어 패키지의 패키지 취약성을 탐지합니다. Amazon Inspector는 프로그래밍 언어 패키지 라이브러리의 기본 경로를 스캔합니다. 그러나 Amazon Inspector에서 기본적으로 스캔하는 경로 외에 사용자 지정 경로를 구성할 수 있습니다.
참고
심층 검사는 기본 호스트 관리 구성 설정으로 사용할 수 있습니다. 그러나 ssm:PutInventory
및 ssm:GetParameter
권한으로 구성된 역할을 생성하거나 사용해야 합니다.
Linux 기반 Amazon EC2 인스턴스에 대한 심층 검사 스캔을 수행하기 위해 Amazon Inspector는 Amazon Inspector SSM 플러그인으로 수집한 데이터를 사용합니다. Amazon Inspector SSM 플러그인을 관리하고 Linux에 대한 심층 검사를 수행하기 위해 Amazon Inspector는 계정에 SSM 연결 InvokeInspectorLinuxSsmPlugin-do-not-delete
를 자동으로 생성합니다. Amazon Inspector는 Linux 기반 Amazon EC2 인스턴스에서 6시간마다 업데이트된 애플리케이션 인벤토리를 수집합니다.
참고
Windows 또는 Mac 인스턴스에는 심층 검사가 지원되지 않습니다.
이 단원에서는 Amazon Inspector가 스캔할 사용자 지정 경로를 설정하는 방법을 포함하여 Amazon EC2 인스턴스에 대한 Amazon Inspector 심층 검사를 관리하는 방법에 대해 설명합니다.
주제
심층 검사 액세스 또는 비활성화
참고
2023년 4월 17일 이후에 Amazon Inspector를 활성화하는 계정의 경우, Amazon EC2 스캔의 일부로 심층 검사가 자동으로 활성화됩니다.
심층 검사를 관리하려면
-
자격 증명을 사용하여 로그인한 다음 Amazon Inspector 콘솔(https://console.aws.amazon.com/inspector/v2/home
)을 엽니다. -
탐색 창에서 일반 설정을 선택한 다음 Amazon EC2 스캔 설정을 선택합니다.
-
Amazon EC2 인스턴스 심층 검사에서 조직 또는 자신의 계정에 대한 사용자 지정 경로를 설정할 수 있습니다.
단일 계정에 대한 활성화 상태는 GetEc2DeepInspectionConfiguration API를 사용하여 프로그래밍 방식으로 확인할 수 있습니다. 여러 계정에 대한 활성화 상태는 BatchGetMemberEc2DeepInspectionStatus API를 사용하여 프로그래밍 방식으로 확인할 수 있습니다.
2023년 4월 17일 이전에 Amazon Inspector를 활성화한 경우 콘솔 배너 또는 UpdateEc2DeepInspectionConfiguration API를 통해 심층 검사를 활성화할 수 있습니다. Amazon Inspector에서 조직의 위임된 관리자인 경우 BatchUpdateMemberEc2DeepInspectionStatus API를 사용하여 자신과 멤버 계정에 대한 심층 검사를 활성화할 수 있습니다.
UpdateEc2DeepInspectionConfiguration API를 통해 심층 검사를 비활성화할 수 있습니다. 조직의 멤버 계정으로는 심층 검사를 비활성화할 수 없습니다. 대신 위임 관리자가 BatchUpdateMemberEc2DeepInspectionStatus API를 사용하여 멤버 계정을 비활성화해야 합니다.
Linux용 Amazon Inspector SSM 플러그인 정보
Amazon Inspector는 Amazon Inspector SSM 플러그인을 사용하여 Linux 인스턴스에 대한 심층 검사를 수행합니다. Amazon Inspector SSM 플러그인은 Linux 인스턴스의 /opt/aws/inspector/bin
디렉터리에 자동으로 설치됩니다. 실행 파일의 이름은 inspectorssmplugin
입니다.
Amazon Inspector는 Systems Manager Distributor를 사용하여 인스턴스에 플러그인을 배포합니다. 심층 검사 스캔을 수행하려면 Systems Manager Distributor 및 Amazon Inspector에서 Amazon EC2 인스턴스 운영 체제를 지원해야 합니다. Systems Manager Distributor에서 지원하는 운영 체제에 대한 자세한 내용은 AWS Systems Manager 사용 설명서에서 지원되는 패키지 플랫폼 및 아키텍처를 참조하세요.
Amazon Inspector SSM 플러그인에서 수집한 심층 검사용 데이터를 관리하기 위해 Amazon Inspector는 다음과 같은 파일 디렉터리를 생성합니다.
-
/opt/aws/inspector/var/input
-
/opt/aws/inspector/var/output
– 이 디렉터리의packages.txt
파일에는 심층 검사로 발견된 패키지의 전체 경로가 저장됩니다. Amazon Inspector가 인스턴스에서 동일한 패키지를 여러 번 탐지한 경우packages.txt
파일에는 해당 패키지가 발견된 각 위치가 나열됩니다.
Amazon Inspector는 플러그인에 대한 로그를 /var/log/amazon/inspector
디렉터리에 저장합니다.
Amazon Inspector SSM 플러그인 제거
inspectorssmplugin
파일이 실수로 삭제된 경우 SSM 연결 InspectorLinuxDistributor-do-not-delete
를 통해 다음 스캔 간격에 inspectorssmplugin
파일을 다시 설치하려고 시도합니다.
Amazon EC2 스캔을 비활성화하면 모든 Linux 호스트에서 플러그인이 자동으로 제거됩니다.
Amazon Inspector 심층 검사를 위한 사용자 지정 경로
Linux Amazon EC2 인스턴스의 심층 검사 중에 Amazon Inspector가 스캔할 사용자 지정 경로를 설정할 수 있습니다. 사용자 지정 경로를 설정하면 Amazon Inspector는 해당 디렉터리와 그 안의 모든 하위 디렉터리에 있는 패키지를 스캔합니다.
모든 계정은 최대 5개까지 사용자 지정 경로를 정의할 수 있습니다. 조직의 위임된 관리자는 사용자 지정 경로를 10개 정의할 수 있습니다.
Amazon Inspector는 모든 계정을 대상으로 스캔하는 Amazon Inspector의 다음 기본 경로 외에 모든 사용자 지정 경로를 스캔합니다.
-
/usr/lib
-
/usr/lib64
-
/usr/local/lib
-
/usr/local/lib64
참고
사용자 지정 경로는 로컬 경로여야 합니다. Amazon Inspector는 네트워크 파일 시스템 마운트 또는 Amazon S3 파일 시스템 마운트와 같은 매핑된 네트워크 경로를 스캔하지 않습니다.
사용자 지정 경로의 형식
사용자 지정 경로는 256자를 초과할 수 없습니다. 다음은 사용자 지정 경로가 어떻게 표시되는지 보여주는 예시입니다.
경로 예
/home/usr1/project01
참고
인스턴스당 패키지 한도는 5,000입니다. 최대 패키지 인벤토리 수집 시간은 15분입니다. Amazon Inspector에서는 이러한 제한을 피하기 위해 사용자 지정 경로를 선택할 것을 권장합니다.
Amazon Inspector 콘솔 및 Amazon Inspector API에서 사용자 지정 경로 설정
다음 절차에서는 Amazon Inspector 콘솔과 Amazon Inspector API를 사용하여 Amazon Inspector 심층 검사를 위한 사용자 지정 경로를 설정하는 방법에 대해 설명합니다. 사용자 지정 경로를 설정하면 Amazon Inspector에서 다음 정밀 검사에 해당 경로를 포함합니다.
Amazon Inspector 심층 검사를 위한 사용자 지정 일정
기본적으로 Amazon Inspector는 6시간마다 Amazon EC2 인스턴스에서 애플리케이션 인벤토리를 수집합니다. 그러나 다음 명령을 실행하여 Amazon Inspector가 이 작업을 수행하는 빈도를 제어할 수 있습니다.
예제 명령 1: 연결 ID 및 현재 간격을 보기 위해 연결 나열
다음 명령은 연결 InvokeInspectorLinuxSsmPlugin-do-not-delete
의 연결 ID를 보여줍니다.
aws ssm list-associations \ --association-filter-list "key=AssociationName,value=InvokeInspectorLinuxSsmPlugin-do-not-delete" \ --region
your-Region
예제 명령 2: 새 간격을 포함하도록 연결 업데이트
다음 명령은 연결 InvokeInspectorLinuxSsmPlugin-do-not-delete
의 연결 ID를 사용합니다. schedule-expression
의 속도를 6시간에서 새로운 간격(예: 12시간)으로 설정할 수 있습니다.
aws ssm update-association \ --association-id "
your-association-ID
" \ --association-name "InvokeInspectorLinuxSsmPlugin-do-not-delete" \ --schedule-expression "rate(6
hours)" \ --regionyour-Region
참고
사용 사례에 따라 schedule-expression
의 속도를 6시간에서 30분과 같은 간격으로 설정하면 일일 SSM 인벤토리 한도를 초과할 수 있습니다. 이로 인해 결과가 지연되고 부분 오류 상태의 Amazon EC2 인스턴스가 발생할 수 있습니다.
지원되는 프로그래밍 언어
Linux 인스턴스의 경우, Amazon Inspector 심층 검사를 통해 애플리케이션 프로그래밍 언어 패키지 및 운영 체제 패키지에 대한 조사 결과를 생성할 수 있습니다.
Mac 및 Windows 인스턴스의 경우, Amazon Inspector 심층 검사를 통해 운영 체제 패키지에 대한 조사 결과만 생성할 수 있습니다.
지원되는 프로그래밍 언어에 대한 자세한 내용은 지원되는 프로그래밍 언어: Amazon EC2 심층 검사를 참조하세요.