피드로 돌아가기
Dev.toSecurity
원문 읽기
Root 권한 없는 SSH 세션 기반의 Sandboxed 웹 데스크톱 구현
Hublo: a web desktop that runs as your own Unix user over SSH — with a sandboxed app store
AI 요약
Context
기존 서버 관리 UI인 Cockpit, Webmin 등이 Root 권한의 privileged daemon을 실행함에 따라 발생하는 광범위한 Attack Surface 문제 분석. 비기술자의 서버 조작 필요성과 보안 위협 사이의 Trade-off 해결을 위한 새로운 접근 방식 모색.
Technical Solution
- Root daemon을 제거하고 사용자 Unix 계정 기반의 SSH 세션 연결 방식 채택
- SFTP 프로토콜을 통한 파일 시스템 접근 제어 및 데이터 전송 구현
- Real PTY(Pseudo Terminal) 할당을 통한 터미널 명령어 실행 환경 제공
- exec 명령어를 활용한 시스템 프로세스 제어 및 상태 관리 최적화
- 사용자의 기존 Unix 권한 체계를 그대로 상속받는 Least Privilege 설계 적용
- 신뢰할 수 없는 외부 앱 실행을 위한 Sandboxed App Store 구조 설계
실천 포인트
1. 관리자 UI 설계 시 Root 권한 daemon 대신 사용자 세션 상속 모델 검토
2. 시스템 API 직접 호출보다 표준 프로토콜(SSH, SFTP) 기반의 추상화 계층 활용
3. 외부 확장 기능 도입 시 실행 환경의 격리(Sandboxing) 수준 정의