피드로 돌아가기
Docker BlogSecurity
원문 읽기
Seccomp와 LSM 조합을 통한 AF_ALG 소켓 취약점 차단
Mitigating CVE-2026-31431 (“Copy Fail”) in Docker Engine
AI 요약
Context
Linux 커널 AF_ALG crypto 서브시스템의 취약점으로 인해 unprivileged 사용자가 Page Cache를 조작하여 Local Root 권한을 획득하는 CVE-2026-31431 발생. Docker 기본 프로필이 AF_ALG 소켓 생성을 허용하여 컨테이너 내 공격자가 호스트 및 타 컨테이너의 공유 파일 시스템을 오염시킬 수 있는 구조적 위험 존재.
Technical Solution
- Seccomp 필터를 통한 socket(2) 시스템 콜의 AF_ALG 및 AF_VSOCK 인자 기반 차단 설계
- x86_64 환경에서 socketcall(2)을 통한 socket(2) 우회 경로 확인 및 이에 따른 socketcall 전체 차단 시도
- socketcall 차단 시 i386 glibc 및 Go Runtime(GOARCH=386) 기반 32-bit 바이너리의 네트워크 통신 불가 현상 식별
- amd64 환경 내 int $0x80 호출을 통한 ia32 호환 모드 진입 및 socketcall 우회 경로의 보안 취약점 분석
- Seccomp의 BPF 포인터 역참조 불가능 한계를 극복하기 위해 AppArmor 및 SELinux 등 LSM(Linux Security Module) 계층의 추가 방어막 도입
- Seccomp(직접 호출 차단)와 LSM(우회 경로 및 정책 차단)을 결합한 Defense-in-depth 다층 방어 아키텍처 구축
실천 포인트
1. Docker Engine v
2
9.
4.3 이상으로 업데이트하여 최신 Seccomp 및 LSM 기본 프로필 적용
2. 커널 패치 적용이 불가한 경우 /etc/modprobe.d를 통해 af_alg 및 algif_aead 모듈 블랙리스트 처리
3. --security-opt seccomp 설정을 통해 AF_ALG 소켓 생성을 명시적으로 거부하는 커스텀 프로필 검토
4. LSM(AppArmor, SELinux) 활성화 상태를 확인하여 Seccomp 우회 경로 차단 여부 검증