STIG
STIG
미국 국방정보시스템국(DISA)이 발표한 보안 구성 표준인 STIG의 개념과, Docker Hardened Images가 STIG 지침을 어떻게 적용하는지 알아봐요.
출처: 문서
본문
STIG란 무엇인가요?
보안 기술 구현 가이드(STIG)는 미국 국방정보시스템국(DISA)이 발표한 구성 표준이에요. 미국 국방부(DoD) 환경에서 사용되는 운영체제, 애플리케이션, 데이터베이스, 기타 기술에 대한 보안 요구사항을 정의해요.
STIG는 시스템이 안전하고 일관되게 구성되어 취약점을 줄이도록 보장하는 데 도움을 줘요. 종종 DoD의 GPOS SRG(General Purpose Operating System Security Requirements Guide) 같은 더 광범위한 요구사항에 기반을 둬요.
STIG 지침이 왜 중요한가요?
미국 정부 시스템과 협력하거나 지원하는 조직에는 STIG 지침을 따르는 것이 중요해요. DoD 보안 표준과의 일치를 보여주며 다음을 도와줘요.
- DoD 시스템의 ATO(Authority to Operate) 프로세스 가속화
- 잘못된 구성과 익스플로잇 가능한 약점의 위험 감소
- 표준화된 베이스라인을 통한 감사와 보고 단순화
연방 환경 밖에서도 STIG는 보안에 민감한 조직이 강화된 시스템 구성을 위한 벤치마크로 사용해요.
STIG는 더 광범위한 NIST 지침, 특히 연방 시스템을 위한 보안·프라이버시 제어 목록을 정의한 NIST Special Publication 800-53에서 파생돼요. 800-53이나 관련 프레임워크(예: FedRAMP) 준수를 추구하는 조직은 STIG를 해당 제어 요구사항을 충족하는 구현 가이드로 사용할 수 있어요.
Docker Hardened Images가 STIG 지침을 어떻게 적용하나요?
Docker Hardened Images(DHI)에는 커스텀 STIG 기반 프로파일로 스캔되고 서명된 STIG 스캔 attestation을 포함한 STIG 변형이 있어요. 이 attestation은 감사와 컴플라이언스 보고를 지원할 수 있어요.
Docker Hardened Images는 누구나 사용할 수 있지만, STIG 변형은 Docker 구독이 필요해요.
Docker는 GPOS SRG와 DoD Container Hardening Process Guide를 기반으로 이미지용 커스텀 STIG 프로파일을 만들어요. DISA가 컨테이너 전용 STIG를 발표하지 않았기 때문에, 이 프로파일은 일관되고 검토 가능한 방식으로 컨테이너 환경에 STIG 유사 지침을 적용하도록 설계되었으며, 컨테이너 이미지에서 흔한 오탐(false positive)을 줄이도록 설계됐어요.
STIG 스캔 결과가 포함된 이미지 식별하기
STIG 스캔 결과가 포함된 Docker Hardened Images는 Docker Hardened Images 카탈로그에서 STIG 레이블로 표시돼요.
STIG 이미지 변형이 있는 DHI 저장소를 찾으려면 이미지 살펴보기에서 다음을 해보세요.
- 카탈로그 페이지에서 STIG 필터 사용
- 개별 이미지 목록에서 STIG 레이블 찾기
저장소 내에서 STIG 이미지 변형을 찾으려면 저장소의 Tags 탭으로 이동하여, Compliance 열에서 STIG로 표시된 이미지를 찾아보세요.
STIG 변형 사용하기
STIG 변형을 사용하려면 저장소를 미러링한 다음 미러링한 저장소에서 STIG 이미지를 풀해야 해요.
STIG 스캔 결과 보기 및 검증
Docker는 각 STIG 준비 이미지에 대해 서명된 STIG 스캔 attestation을 제공해요. 이 attestation에는 다음이 포함돼요.
- 통과(passed), 실패(failed), 해당 없음(not applicable) 검사 수를 포함한 스캔 결과 요약
- 사용된 STIG 프로파일의 이름과 버전
- HTML과 XCCDF(XML) 형식의 전체 출력
STIG 스캔 attestation 보기
Docker Scout CLI를 사용해 STIG 스캔 attestation을 검색하고 검사할 수 있어요.
$ docker scout attest get \
--predicate-type https://docker.com/dhi/stig/v0.1 \
--verify \
--predicate \
dhi.io/<image>:<tag>
HTML 보고서 추출
사람이 읽을 수 있는 HTML 보고서를 추출해 보려면:
$ docker scout attest get dhi.io/<image>:<tag> \
--predicate-type https://docker.com/dhi/stig/v0.1 \
--verify \
--predicate \
| jq -r '.[0].output[] | select(.format == "html").content | @base64d' > stig_report.html
XCCDF 보고서 추출
다른 도구와 통합하기 위해 XML(XCCDF) 보고서를 추출하려면:
$ docker scout attest get dhi.io/<image>:<tag> \
--predicate-type https://docker.com/dhi/stig/v0.1 \
--verify \
--predicate \
| jq -r '.[0].output[] | select(.format == "xccdf").content | @base64d' > stig_report.xml
STIG 스캔 요약 보기
전체 보고서 없이 스캔 요약만 보려면:
$ docker scout attest get dhi.io/<image>:<tag> \
--predicate-type https://docker.com/dhi/stig/v0.1 \
--verify \
--predicate \
| jq -r '.[0] | del(.output)'