Amazon Inspector에서 EC2 보안 확인

11121 단어 AWSInspector
기존 아마존 리눅스(Amazon Linux AMI 2016.03.1)에서 AWS에서 안전 검사를 할 수 있는 아마존 인스펙터를 실시했기 때문에 요약했다.

절차.


1. EC2에 표시


검사 객체에 EC2 인스턴스를 표시합니다.
Inspector는 태그를 사용하여 검사 객체인지 여부를 판단합니다.
Inspector:True입니다.

2. 에이전트 설치

$ curl -O https://d1wk0tztpsntt1.cloudfront.net/linux/latest/install
$ sudo bash install
$ sudo /etc/init.d/awsagent status
Configuration file path : /opt/aws/awsagent/etc/agent.cfg
Configuration status :
Agent version : 1.0.254.23
System release : Amazon Linux AMI release 2016.03 - 4.4.8-20.46.amzn1.x86_64
Daemon : true
Max queue size : 31457280
Log File :
Msgs log max size : 33554432
CodeModules : true
InstanceMetaData : true
PackageInfo : true
NetworkInterfaces : true
Groups : true
Users : true
Terminals : true
ConfigurationInfo : true
    GlobalFile:/etc/bash.bashrc
      : 
움직이는 것 같아.

3. SNS 설정(SNS 알림 시)


Topic을 제작하고 [Other topic actions] ->[Edit topic policy] 선택

두 항목 모두 "Only theese AWS users"선택
arn:aws:iam::406045910587:root
입력

Subscription 생성

4. Inspector 설정


Inspector 콘솔에 액세스합니다.

5. Role 제작


먼저 롤을 만듭니다.
안내대로 만들었어요.

6. 목표 지정


대상의 이름을 지정하고 실례에 적용할 탭을 선택하십시오.

7. 템플릿 지정


템플릿을 지정합니다.
템플릿에 이름을 지정하고 검사할 규칙 패키지를 지정합니다.
어쨌든 다 썼어.
소요시간은 1시간을 추천합니다.
여기서 지정된 시간에 데이터를 수집하는 것 같아서 일찍 끝나지 않을 것 같아요.
길수록 좋아요?잘 모르겠어요.
아까 만든 SNS 토픽도 설치해.

검사 가능한 포장은 아래와 같습니다.
  • Common Vulnerabilities and Exposures
  • CVE에 공개된 취약성 감찰을 진행한다.
    적절한 CVE 목록은 다음과 같습니다.
  • CIS Operating System Security Configuration Benchmarks
  • CIS 조직이 발행하는 보안 기준을 적용합니다.
    OS별로 준비한 것 같은데, 지금
    Amazon Linux versions 2014.09-2015.03
    의 기준이 적용되는 것 같다.
    다음 형식에서 세부 문서를 다운로드할 수 있습니다.
    https://benchmarks.cisecurity.org/downloads/multiform/index.cfm
  • Security Best Practices
  • 보안 설정을 확인합니다.
    체크된 OS는 Linux-based 뿐입니다.
    SSH 설정, 권한 설정 등이 있습니다.
  • Runtime Behavior Analysis
  • 이것은 Behavior입니다. 동작을 설정하는 것보다 확인합니다.
    프로토콜과 포트 확인이 있습니다.
    Linux Only와 Linux, Windows 두 가지가 있습니다.

    8. 실행


    제작이 완료되면 실행을 누릅니다.

    상태는 데이터 수집 중입니다.

    실행 과정에서 EC2의 부하가 거의 상승하지 않았다.
    아무것도 하지 않은 실례지만
    top - 04:37:20 up 50 min,  1 user,  load average: 0.00, 0.01, 0.01
    Tasks:  73 total,   1 running,  72 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.0%us,  0.0%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.3%st
    Mem:   1019340k total,   209272k used,   810068k free,    10756k buffers
    Swap:        0k total,        0k used,        0k free,   110608k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
     2290 root      20   0  602m  29m  12m S  0.3  2.9   0:04.16 awsagent
    
    1시간 후에 상태 분석이 끝나고 끝납니다.

    실행 결과


    1. Medium : Instance xxxxxxxxxxxxx is configured to allow users to log in with root credentials over SSH. This increases the likelihood of a successful brute-force attack.

  • 규칙 패키지
  • Security Best Practices-1.0
  • 설명
  • This rule helps determine whether the SSH daemon is configured to permit logging in to your EC2 instance as root.
  • 권장사항
  • It is recommended that you configure your EC2 instance to prevent root logins over SSH. Instead, log in as a non-root user and use sudo to escalate privileges when necessary. To disable SSH root logins, set PermitRootLogin to "no"in/etc/ssh/sshd_config and restart sshd.
  • PermitRootLogin을 "no"로 바꾼 것 같아요.
    간신히 여기 있습니다.

    2. Low : Instance i-xxxxxxxxxxxxx used insecure protocol(s) 80/tcp (http) to connect to a remote host. These protocols pass traffic in the clear, increasing the risk of a successful traffic interception attack.

  • 규칙 패키지
  • Runtime Behavior Analysis-1.0
  • 설명
  • This rule detects client use of insecure protocols.
  • 권장사항
  • It is recommended that you replace these insecure protocols with encrypted versions.
  • 원격 연결에 HTTP를 사용했다는 건가요?
    어떻게 말해야 할지 모르겠어요.

    3. Informational : Instance i-xxxxxxxxxxx was listening on TCP port(s) 111, 55131, 57093, but no connections to these port(s) were seen during the assessment run.

  • 규칙 패키지
  • Runtime Behavior Analysis-1.0
  • 설명
  • This rule detects listening TCP ports that may not be required by the assessment target.
  • 권장사항
  • To reduce the attack surface area of your deployments, we recommend that you disable network services that you do not use. Where network services are required, we recommend that you employ network control mechanisms such as VPC ACLs, EC2 security groups, and firewalls to limit exposure of that service.
  • 링크가 만든 포트죠?
    실례적으로 확인하면 이런 느낌이에요.
    $ netstat -nl --inet | grep tcp
    tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN
    tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:55131               0.0.0.0:*                   LISTEN
    
    57093이 뭘까요?

    4. Informational : No potential security issues found

  • 규칙 패키지
  • Common Vulnerabilities and Exposures-1.1
  • 결과
  • No potential security issues found
  • 설명
  • Amazon Inspector did not find any potential security issues during this assessment.
  • 권장사항
  • No remediation needed.
  • 즉, CVE와 관련된 문제는 없습니다.

    5. Informational : Unsupported Operating System or Version

  • 규칙 패키지
  • CIS Operating System Security Configuration Benchmarks-1.0
  • 설명
  • Operating system Amazon Linux AMI release 2016.03, found on the instance i-06f394abd8f926bed, is not supported by this Rules Package.
    The supported operating systems are: Amazon Linux AMI release 2015.03
  • 권장사항
  • Not available
  • 즉, Amazon Linux AMI 2016.03.1은 지원되지 않습니다.
    SNS에서는 이런 느낌의 JSON으로 알립니다.
    {"template":"arn:aws:inspector:ap-northeast-1:xxxxxxxxxxx:target/xxxxxxxx/template/xxxxxxxxx","newstate":"COMPLETED","time":"2016-05-17T10:06:05.929Z","event":"ASSESSMENT_RUN_STATE_CHANGED","target":"arn:aws:inspector:ap-northeast-1:xxxxxxxxxxx:target/xxxxxxx"}
    
    그러니까 끝났다는 거 알아.

    감상


    설치와 설정이 상당히 간단하여 간단하게 완성되었다.
    나는 안전 감찰을 간단하게 하는 것이 상당히 유용하다고 생각한다.
    라벨로 대상을 지정해도 함께 할 수 있다는 점을 고려하면 쉬울 것 같다.
    어렵기 때문에 CIS의 기준이 아마존 리눅스의 최신 버전에 대응할 수 있기를 바랍니다.

    참고 자료


    https://aws.amazon.com/jp/inspector/
    http://aws.typepad.com/aws_japan/2015/10/amazon-inspector-automated-security-assessment-service.html
    https://docs.aws.amazon.com/inspector/latest/userguide/inspector_introduction.html
    http://dev.classmethod.jp/cloud/aws/inspector-send-mail-using-sns/
    https://docs.aws.amazon.com/ja_jp/inspector/latest/userguide/inspector_assessments.html

    좋은 웹페이지 즐겨찾기