Smack (소프트웨어)

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

Smack은 리눅스 보안 모듈(LSM)로 구현된 접근 제어 보안 메커니즘이다. 커널 모듈, 시작 스크립트, GNU Core Utilities 패치 세트의 세 가지 주요 구성 요소로 이루어져 있으며, 사용자 공간 지원 없이 작동한다. SELinux와 유사한 기능을 제공하지만, 새로운 LSM 모듈로 개발되어 SELinux의 복잡성과 설계 철학의 차이로 인해 비판을 받기도 한다.

Smack (소프트웨어) - [IT 관련 정보]에 관한 문서
일반 정보
유형리눅스 보안 모듈
개발자Casey Schaufler
출시일2008년 4월 17일
운영 체제리눅스
장르컴퓨터 보안
라이선스GPL2
웹사이트공식 웹사이트
📚 더 읽어볼만한 페이지
  • 리눅스 커널 특징 - 커널 기반 가상 머신
    커널 기반 가상 머신(KVM)은 리눅스 커널의 가상화 확장 기능으로, CPU와 메모리 가상화를 지원하며 QEMU와 함께 완전한 가상화 솔루션을 구성하고 다양한 관리 도구를 제공한다.
  • 리눅스 커널 특징 - AppArmor
    AppArmor는 리눅스 보안 모듈로, 프로그램의 정상적인 동작을 정의하는 프로필을 통해 비정상적인 행위를 차단하며 SELinux의 대안으로 제시되었으나 보안 취약점, 성능, 설정, 호환성 등에 대한 논란도 있다.
  • 2008년 소프트웨어 - 안드로이드 (운영체제)
    구글이 개발한 리눅스 커널 기반의 모바일 운영체제인 안드로이드는 오픈소스 플랫폼으로 다양한 기기에서 활용되며 세계적으로 널리 사용되지만, 개인정보 보호 문제와 독점적 지위 남용 논란 등의 비판도 존재한다.
  • 2008년 소프트웨어 - 구글 크롬
    구글 크롬은 구글이 개발한 웹 브라우저로, 크로미엄 프로젝트를 기반으로 오픈 소스 코드를 활용하여 개발되었으며, 다양한 기능과 운영체제 지원을 통해 세계 시장 점유율 1위를 기록하지만 개인 정보 보호 정책으로 비판을 받기도 한다.
  • 리눅스 보안 소프트웨어 - GNU 프라이버시 가드
    GNU 프라이버시 가드는 붸르너 코흐가 개발한 공개 키 암호 방식 기반의 암호화 소프트웨어로, PGP와 호환되며 OpenPGP 표준을 준수하고 다양한 운영체제에서 사용 가능하다.
  • 리눅스 보안 소프트웨어 - AppArmor
    AppArmor는 리눅스 보안 모듈로, 프로그램의 정상적인 동작을 정의하는 프로필을 통해 비정상적인 행위를 차단하며 SELinux의 대안으로 제시되었으나 보안 취약점, 성능, 설정, 호환성 등에 대한 논란도 있다.

2. 설계

Smack은 리눅스 보안 모듈로 구현된 커널 모듈, 스타트업 스크립트, GNU 코어 유틸리티 패치 집합으로 구성된다. Smack은 확장 속성을 지원하는 파일 시스템에서 잘 동작하며, 사용자 공간 지원을 필요로 하지 않는다.

2.1. 커널 모듈

Smack은 세 가지 구성 요소로 이루어져 있다.

* 리눅스 보안 모듈로 구현된 커널 모듈. 확장 속성을 지원하는 파일 시스템에서 가장 잘 작동한다.
* 장치 파일에 올바른 Smack 속성이 있는지 확인하고 Smack 구성을 로드하는 시작 스크립트.
* Smack 확장 파일 속성을 인식하도록 하는 GNU 코어 유틸리티 패키지에 대한 패치 세트. Busybox에도 유사한 패치 세트가 만들어졌다. SMACK은 사용자 공간 지원이 필요하지 않다.

2.2. 스타트업 스크립트

장치 파일이 정확한 Smack 속성을 가지며 Smack 설정을 로드하는 것을 보장하는 스타트업 스크립트이다.

2.3. GNU 코어 유틸리티 패치

Smack은 GNU 코어 유틸리티 패키지에 대한 패치 세트를 제공하여 Smack 확장 파일 속성을 인식하도록 한다. Busybox에도 비슷한 패치 세트가 만들어졌다.

3. 비판

Smack은 SELinux와 동일한 기능을 제공함에도 불구하고, 새로운 LSM 모듈로 작성되었다는 비판을 받아왔다. SELinux 정책이 제안되기는 했지만, 실제로 구현되어 입증된 적은 없다. 이에 대해 Smack 개발자는 SELinux 설정의 복잡성과 설계 철학의 차이로 인해 실용적이지 않다고 답변했다.

3.1. SELinux와의 비교

Smack은 SELinux 보안 정책 대신 새로운 LSM 모듈로 작성되어, 동일한 기능을 제공할 수 있음에도 비판을 받아왔다. 이러한 SELinux 정책이 제안되었지만 실제로 구현되지는 않았다. Smack 개발자는 SELinux의 복잡한 설정 문법과 Smack 및 SELinux 설계 간의 철학적 차이 때문에 실용적이지 않다고 답변했다.