모바일 보안 기능
Enterprise Advanced 플랜에서 사용할 수 있습니다.
이 문서는 모바일 애플리케이션에 구현된 주요 보안 기능을 정리하고, 각 통제 항목의 의미를 설명하며, 최신 보안 태세를 유지하기 위한 지속적인 보안 활동을 상세히 다룹니다.
탈옥 및 루팅 탐지
Mattermost는 Expo 프레임워크의 내장 검사를 활용해 탈옥된(iOS) 기기와 루팅된(Android) 기기를 식별합니다.
- Android에서는
/system/xbin/su의su바이너리처럼 알려진 탈옥·루팅 바이너리가 있는지 확인합니다. 이는 기기가 루팅되어 권한 상승이 허용되었음을 나타내는 일반적인 지표입니다. - iOS에서는 비정상적인 앱(예: Cydia) 설치 여부, 변경된 시스템 경로, 앱이 보호된 시스템 파일을 변경할 수 있는지 여부를 검사합니다. 이 모두가 기기가 탈옥되었을 가능성을 나타내는 신호입니다.
이 기능을 활성화하는 방법은 탈옥/루팅 보호 구성 설정 문서를 참고하세요.
클라이언트 측 탐지 방식은 완벽하지 않으며, 루팅 또는 탈옥 권한을 가진 의지가 강한 사용자는 이를 우회할 수 있습니다. 마음먹은 사용자는 리버스 엔지니어링으로 이러한 검사를 비활성화하거나 변조해 오탐·미탐을 유발할 수 있고, 소스 코드를 수정·재컴파일해 검사를 완전히 제거한 뒤 루팅·탈옥 기기에서 앱을 사용할 수도 있습니다.
생체 인증
Mattermost는 iOS의 Face ID/Touch ID 및 Android의 Biometric API와 연동됩니다. 시스템 관리자가 이 기능을 활성화하면 특정 서버에 접근하기 전에 생체 인증이 요구되며, Mattermost 모바일 앱은 기기 PIN 또는 생체 잠금이 활성화되어 있을 것을 요구합니다.
이 기능을 활성화하는 방법과 사용자가 인증해야 하는 워크플로에 대해서는 생체 인증 구성 설정 문서를 참고하세요.
Face ID나 지문 인식 같은 생체 인증은 기기의 운영 체제가 처리합니다. Mattermost는 생체 인식 기능을 제공하거나 보증하지 않습니다. 운영 체제가 생체 입력을 일치한다고 판단하면 앱이 잠금 해제됩니다. 생체 인증의 정확도, 보안성, 사용 가능 여부는 전적으로 기기와 해당 플랫폼에 달려 있습니다.
스크린샷 및 화면 녹화 차단
스크린샷과 화면 녹화를 차단하면 민감한 정보가 실수로 또는 악의적으로 공유되는 것을 막을 수 있습니다. 이 통제는 기밀 커뮤니케이션과 데이터가 앱의 안전한 범위 안에 머무르도록 하는 데 필수적입니다. 무단 화면 캡처를 차단함으로써 Mattermost는 시각적 콘텐츠를 통한 데이터 유출 위험을 크게 줄입니다.
- iOS에서는 화면 캡처 시도를 탐지합니다. 화면 녹화의 경우 즉시 화면에 흐림 오버레이를 적용해 민감한 정보를 가리며, 스크린샷은 아무 내용도 캡처되지 않습니다.
- Android에서는
FLAG_SECURE플래그를 사용해 화면 캡처와 녹화를 차단합니다.
이 기능을 활성화하는 방법은 화면 캡처 차단 구성 설정 문서를 참고하세요.
이 기능은 Mattermost 앱이 실행 중인 모바일 기기에서 화면 녹화와 스크린샷 촬영을 차단합니다. 다른 휴대폰이나 카메라를 화면에 겨누는 등 외부 기기를 이용한 촬영은 통제하거나 막을 수 없습니다. Mattermost는 모바일 OS 수준의 기능을 통해 이러한 보호를 제공하지만, 다른 수단을 통한 시각적 데이터 캡처를 절대적으로 막을 수 있다고 보장하지는 않습니다.
안전한 파일 미리보기
파일 다운로드를 차단하면 민감한 정보가 실수로 또는 악의적으로 공유되는 것을 막을 수 있습니다. 이 통제는 기밀 문서와 미디어가 앱의 안전한 범위 안에 머무르도록 하는 데 필수적입니다. 지원되는 파일 형식에 대해 앱 내 미리보기를 활성화하고 다운로드를 제한함으로써, Mattermost는 필수적인 파일 열람 기능은 유지하면서 데이터 유출 위험을 크게 줄입니다.
이 기능들을 활성화하는 방법은 안전한 파일 미리보기 및 PDF 링크 이동 관리 구성 설정 문서를 참고하세요.
모바일 워터마킹
모바일 워터마킹은 Mattermost v11.7부터 제공되는 실험적 Enterprise Advanced 기능으로, 조직이 모바일 스크린샷과 공유된 화면 캡처를 특정 사용자, 서버, 시점에 연결해 파악할 수 있도록 돕습니다. 시스템 관리자가 이 설정을 활성화하면, 인증된 Mattermost 모바일 세션의 앱 인터페이스 위에 다음 정보를 포함한 워터마크 오버레이가 표시됩니다.
- 사용자의 사용자 이름
- 서버 도메인
YYYY-MM-DD형식의 현재 날짜HH:mm형식의 현재 시각
이 워터마크는 Mattermost 모바일 앱을 촬영한 이미지의 출처와 시점을 더 쉽게 식별할 수 있게 하여 데이터 유출 방지(DLP) 워크플로를 지원하기 위한 것입니다. 모바일 워터마킹은 기본적으로 비활성화되어 있습니다.
이 실험적 기능을 활성화하는 방법은 Enable Mobile Watermark 구성 설정 문서를 참고하세요.
- 모바일 워터마크는 시각적 오버레이일 뿐입니다. 사용자가 스크린샷을 찍거나, 화면을 녹화하거나, 파일을 내보내거나, 다른 수단으로 콘텐츠를 공유하는 것을 막지는 않습니다. 기기 자체에서 화면 캡처를 차단하는 통제는 스크린샷 및 화면 녹화 차단을 참고하세요.
- 이 기능은 Mattermost 모바일 앱에만 적용됩니다. Mattermost 웹 앱이나 데스크톱 앱에는 워터마크가 추가되지 않습니다.
- 이 기능은 실험적입니다. 고객 피드백에 따라 향후 릴리스에서 동작, 기본값, 표시 방식이 변경될 수 있습니다.
Microsoft Intune 모바일 애플리케이션 관리(MAM)
Mattermost는 Microsoft Intune MAM을 지원하여, 기기를 모바일 기기 관리(MDM) 솔루션에 완전히 등록하지 않고도 iOS 기기에서 ID 기반 앱 수준 데이터 보호를 적용할 수 있습니다.
Mattermost의 Microsoft Intune MAM 적용은 현재 iOS에서만 지원됩니다. Android용 Intune 지원이 제공될 때까지는 Android for Work 프로필 사용을 권장합니다.
Intune MAM은 Microsoft Entra ID를 ID 권한 기관으로 사용해 Mattermost 모바일 앱에 직접 보안 정책을 적용합니다. 이를 통해 조직은 개인 기기 사용(BYOD) 및 혼용 기기에서도 사용자 프라이버시를 유지하면서 기업 데이터나 임무상 민감한 데이터를 보호할 수 있습니다.
Intune MAM으로 활성화되는 주요 보안 기능은 다음과 같습니다.
- 모바일에서 Mattermost에 접근하기 전 필수 등록
- Microsoft Entra ID를 사용한 ID 기반 정책 적용
- 개인 앱이나 기기 데이터에 영향을 주지 않는 Mattermost 업무 데이터의 선택적 삭제
- 클립보드, 파일 공유, 데이터 전송 제한
- 스크린샷 및 화면 녹화 차단
- 관리형 브라우저 강제 적용과 링크 처리 통제
- 세션이 진행 중일 때를 포함해, 정책이나 라이선스가 변경되면 즉시 적용
Intune MAM 적용은 Mattermost 워크스페이스 단위로 이루어지며 런타임에 지속적으로 평가됩니다. 기기가 규정을 위반하거나, 등록에 실패하거나, 필요한 정책이 충족되지 않으면 보호된 콘텐츠에 대한 접근이 자동으로 차단됩니다.
이 방식을 통해 조직은 기기 자체를 소유하거나 관리하지 않고도 제로 트러스트와 데이터 유출 방지(DLP) 통제를 모바일 사용자에게 확장할 수 있습니다.
배포와 구성에 관한 자세한 내용은 Microsoft Intune 모바일 애플리케이션 관리(MAM) 구성 문서를 참고하세요.
Mobile Ephemeral Mode
모바일 애플리케이션은 일반적으로 메시지, 파일, 첨부 파일을 기기에 무기한 캐시합니다. 모바일 기기에서 관리자가 데이터 수명 주기를 통제해야 하는 이유는 두 가지 보안 우려 때문입니다.
- 민감 데이터의 무제한 축적. 데이터 보관 기간 통제가 없으면 사용자가 로그인한 모든 기기에 수 주 또는 수 개월치 민감한 콘텐츠가 쌓일 수 있으며, 이는 업무상 필요를 훨씬 넘어서는 수준입니다.
- 기기 분실 후 오프라인 노출. 기기를 원격으로 삭제하려면 기기에 접근할 수 있어야 하는데, 기기를 분실·도난당했거나 적대적 환경에 있을 때가 바로 그 조건이 성립하기 가장 어려운 상황입니다. 관리되지 않는 기기나 개인 소유 기기는 MDM에 아예 등록되어 있지 않을 수 있어, 캐시된 콘텐츠를 원격으로 삭제할 방법이 없습니다.
Mobile Ephemeral Mode는 관리자가 서버 측에서 모바일 기기의 데이터 보관 기간을 직접 통제할 수 있게 하여 두 문제를 모두 해결합니다. 앱은 오프라인 상태에서도, 그리고 앱과 기기를 재시작한 뒤에도 이 정책을 로컬에서 적용하므로, 데이터는 기기 접근 가능 여부가 아니라 경과 시간을 기준으로 삭제됩니다.
Mobile Ephemeral Mode는 삭제(delete), 정리(purge), 초기화(wipe) 작업마다 감사 로그 이벤트를 생성합니다. 이러한 작업은 관리자가 직접 확인할 수 없는, 접근 불가능한 기기에서도 실행될 수 있으므로, 감사 로그는 임시 데이터 정책이 실제로 적용되었음을 검증할 수 있는 증거가 됩니다. 이는 데이터 수명 주기 관리와 파기 책임에 관한 컴플라이언스 요구 사항을 뒷받침합니다. 기기가 오프라인일 때 발생한 이벤트는 다시 연결될 때 서버로 보고됩니다.
이러한 통제를 구성하려면 Mobile Ephemeral Mode 구성 설정을 참고하세요.
모바일 데이터 격리
Mattermost 모바일 애플리케이션은 민감한 데이터를 안전하게 저장하고 기기의 다른 애플리케이션으로부터 격리하도록 설계되었습니다. 이 격리는 OS 수준 보안 기능, 앱 샌드박싱, 안전한 데이터 저장 방식의 조합으로 구현됩니다.
Mattermost는 모바일 앱 내부에 세 가지 유형의 데이터를 저장합니다.
- SQLite 데이터베이스: 사용자가 열람한 게시물과 채널에 오프라인으로 접근하기 위한 데이터입니다.
- 캐시 파일: 열람한 파일(예: PDF)의 임시 저장용이며 주기적으로 삭제됩니다.
- 로그: 문제 해결 목적으로 보관하는 최소한의 로그입니다.
Apple iOS 및 Android 기기용 Mattermost 모바일 앱은 네이티브 OS 보안 아키텍처를 사용해 모바일 기기의 저장 데이터를 암호화하므로, 기기를 분실하거나 도난당해도 저장된 정보가 안전하게 유지됩니다. 이 암호화는 메시지와 파일 같은 민감한 데이터를 무단 접근으로부터 보호합니다.
Mattermost 모바일 앱이 저장하는 데이터는 앱의 전용 저장 컨테이너 안에만 존재합니다. 이 저장 위치는 각 플랫폼의 엄격한 샌드박싱 모델로 격리됩니다. Mattermost 모바일 애플리케이션의 안전한 파일 저장에 대해 자세히 알아보세요.
보안 조치
- OS 샌드박싱 및 앱 접근 격리: Mattermost의 데이터는 앱 전용 샌드박스 안에 갇혀 있습니다(Apple의 iOS 샌드박싱과 Android의 샌드박싱 지침 참고). 이 샌드박싱 메커니즘은 SQLite 데이터베이스, 캐시 파일, 로그에 저장된 모든 데이터가 격리되어 다른 애플리케이션에서 접근할 수 없도록 보장합니다. TikTok을 비롯한 다른 애플리케이션이 Mattermost 데이터에 접근하지 못하는 이유가 여기에 있습니다.
- iOS는 컨테이너화된 파일 시스템과 엄격한 프로세스 격리에 기반한 엄정한 샌드박싱 모델을 사용합니다. 각 앱은 자체 샌드박스 안에서 동작하며, 홈 디렉터리는 설치 시 무작위로 할당됩니다. 따라서 Mattermost 앱의 샌드박스 디렉터리에 저장된 데이터는 사용자가 명시적으로 공유하지 않는 한 해당 앱에서만 접근할 수 있습니다.
- Android는 각 앱에 고유한 Linux 사용자 ID와 전용 프라이빗 디렉터리를 할당하는 범위 지정 저장소(scoped storage)를 사용합니다. 이 모델은 명시적 권한 없이는 다른 애플리케이션이 앱의 프라이빗 디렉터리에 접근하지 못하도록 막습니다. 따라서 기기가 루팅되었거나 사용자가 명시적으로 데이터를 공유하지 않는 한, Mattermost 앱의 데이터는 다른 앱에서 접근할 수 없습니다.
- 캐시 무효화: 캐시 파일은 주기적으로 삭제됩니다.
- Google 및 Apple 클라우드 백업 제외: Mattermost 파일은 일반적인 클라우드 백업 과정에서 백업되지 않습니다.
- Android에서는 앱이 (적절한 매니페스트 설정을 통해) 백업을 명시적으로 비활성화하여 모든 Mattermost 파일이 기기 내에만 남도록 합니다.
- iOS에서는 운영 체제가 앱의
Documents폴더에 저장된 파일을 자동으로 백업하지만, Mattermost는 의도적으로 iCloud 백업에서 제외되는Library/Caches디렉터리에 파일을 저장합니다.
- 통제된 데이터 반출: 데이터는 다음과 같은 사용자의 명시적 행위를 통해서만 Mattermost 밖으로 나갑니다.
- 파일을 수동으로 내보내기
- 스크린샷 촬영(정책으로 차단되지 않은 경우 또는 보조 카메라를 사용하는 경우)
- OS 기능(예: 공유 시트)을 이용한 콘텐츠 공유
이 기능은 견고한 OS 수준 샌드박싱과 저장소 통제를 통해 저장된 데이터에 대한 직접 접근을 제한합니다. 다만 공격자가 다른 방법을 동원할 경우 무단 반출까지 막지는 못합니다. 예를 들어 시스템 무결성이 훼손된 탈옥(iOS) 또는 루팅(Android) 기기에서는 공격자가 표준 보안 조치를 우회할 수 있습니다.
마찬가지로 제로데이 또는 알려진 OS 취약점을 악용하거나, 권한 취약점을 악용하는 악성 앱을 통해 기기 저장소에 접근할 수도 있습니다. Mattermost는 모바일 OS 수준의 보호 장치를 사용하지만, 이러한 무단 데이터 접근을 절대적으로 막을 수 있다고 보장하지는 않습니다.
보안 컴플라이언스
- 보안 SDLC: 모바일 앱은 다른 모든 Mattermost 구성 요소와 동일한 보안 소프트웨어 개발 수명 주기(SDLC) 프로세스를 따릅니다. 이를 통해 새로운 모바일 기능이 포괄적인 보안 검토를 거치고, 문제가 있다면 릴리스 전에 해결되도록 보장합니다.
- 취약점 관리: Mattermost 모바일 앱은 Mattermost의 공개 버그 바운티 프로그램에 포함되어 있어 보안 연구자들이 애플리케이션을 엄밀하게 검증할 수 있습니다. 또한 정해진 조치 SLA에 따라 보안 문제가 신속하게 해결됩니다.
- 지속적인 의존성 스캐닝: Mattermost는 Snyk Open Source를 사용해 모든 의존성을 매일 스캔합니다. 이러한 지속적 접근을 통해 새로 공개된 취약점을 빠르게 식별하고 정해진 SLA 내에 조치합니다.
- BESPIN 컴플라이언스: Mattermost는 다음을 포함한 엄격한 보안 평가를 준수합니다.
- Device Protection Profiles(NIAP Evaluation)
- Security Dependency & Code Analysis
- Code Complexity & Testing Standards