8.6. 무결성 측정 아키텍처를 사용하여 파일 해시 수집
무결성 측정 아키텍처(IMA)의 첫 번째 작업 수준은 파일 해시를 생성하고 해당 파일의 확장 속성(xattrs)으로 저장할 수 있는 측정 단계입니다. 다음 섹션에서는 파일 해시를 생성하고 검사하는 방법을 설명합니다.
사전 요구 사항
-
ima-evm-utils
,attr
및keyutils
패키지가 시스템에 설치되어 있습니다. - 무결성 측정 아키텍처(IMA) 및 EVM(Extended verification module)은 8.5절. “무결성 측정 아키텍처 및 확장 검증 모듈 활성화” 에 설명된 대로 활성화됩니다.
절차
테스트 파일을 생성합니다.
echo <Test_text> > test_file
# echo <Test_text> > test_file
Copy to Clipboard Copied! 개인 키로 파일에 서명합니다.
evmctl sign --imahash --key /etc/keys/privkey.pem test_file
# evmctl sign --imahash --key /etc/keys/privkey.pem test_file
Copy to Clipboard Copied! test_file
파일의 해시를 생성하면 IMA는 파일이 손상되지 않은 상태로 남아 있는지 확인합니다. EVM은test_file
의 확장 속성에 저장된 해시 콘텐츠에 서명하여 IMA 해시를 정품으로 보장합니다.선택적으로 서명된 파일의 확장 속성을 확인합니다.
getfattr -m . -d test_file
# getfattr -m . -d test_file file: test_file security.evm=0sAwICztVdCQCAZLtD7qAezGl8nGLgqFZzMzQp7Fm1svUet2Hy7TyI2vtT9/9ZfBTKMK6Mjoyk0VX+DciS85XOCYX6WnV1LF2P/pmPRfputSEq9fVD4SWfKKj2rI7qwpndC1UqRX1BbN3aRUYeoKQdPdl6Cz+cX4d7vS56FJkFhPGlhq/UQbBnd80= security.ima=0sAfgqQ5/05X4w/ltZEfbogdI9+KM5 security.selinux="unconfined_u:object_r:admin_home_t:s0"
Copy to Clipboard Copied! 이 예제 출력에서는 SELinux 및 IMA 및 EVM 해시 값과 관련된 확장된 속성을 보여줍니다. EVM은
security.evm
확장 속성을 적극적으로 추가하고 파일 콘텐츠 무결성과 직접 관련된security.ima
와 같은 다른 파일의 xattrs에 대한 오프라인 변조를 감지합니다.security.evm
필드의 값은 개인 키로 생성된 Hash-based Message Authentication Code(HMAC-SHA1)에 있습니다.
추가 리소스
- 커널 무결성 하위 시스템에 대한 자세한 내용은 을 참조하십시오. official upstream wiki page.
- TPM에 대한 자세한 내용은 다음을 참조하십시오. Trusted Computing Group resources.
- 암호화된 키 생성에 대한 자세한 내용은 을 참조하십시오. Trusted and Encrypted Keys 섹션 RHEL 7 보안 가이드.