- OS de biblioteca focado em segurança que oferece suporte à execução tanto em modo kernel quanto em modo usuário, fornecendo um ambiente de sandbox que reduz a superfície de ataque ao minimizar a interface com o host
- Escrito em Rust, com suporte a interfaces de nível superior no estilo
nix e rustix e interoperabilidade entre diversas plataformas subjacentes
- Principais casos de uso: executar programas Linux no Windows, sandboxing de aplicações Linux, execução em ambientes SEV SNP e OP-TEE, suporte à plataforma LVBS etc.
- Base experimental de arquitetura de SO de próxima geração com foco em isolamento de segurança, virtualização e minimização das interfaces do sistema
- Combina código de sistema seguro baseado em Rust com um modelo unificado de execução entre kernel e modo usuário, podendo ser usado em pesquisa de segurança e no desenvolvimento de tecnologias de isolamento em nuvem
Visão geral do LiteBox
- O LiteBox é um OS de biblioteca open source focado em segurança lançado pela Microsoft, com suporte tanto à execução em modo kernel quanto em modo usuário
- O objetivo central é minimizar a interface com o host para reduzir a superfície de ataque
- Com isso, implementa um ambiente de execução isolado no formato de sandbox
- O sistema é escrito na linguagem Rust e, na camada superior, oferece interfaces no estilo
nix/rustix
- Na camada inferior, permite uma configuração flexível ao conectar várias plataformas (interface
Platform)
Principais recursos e casos de uso
- O LiteBox foi projetado com uma estrutura que oferece suporte à interoperabilidade entre vários ambientes operacionais
- Executar programas Linux no Windows
- Sandboxing de aplicações dentro do Linux
- Suporte a ambientes de execução segura baseados em SEV SNP
- Executar programas OP-TEE no Linux
- Suporte à execução na plataforma LVBS
Estágio atual e licença
- O projeto está atualmente em desenvolvimento ativo e ainda não chegou à fase de lançamento de uma versão estável
- APIs e interfaces podem mudar no futuro
- O uso experimental é possível, mas é preciso cautela em ambientes que exigem estabilidade de longo prazo
- Licença MIT
2 comentários
Comentários do Hacker News
Segundo a página no GitHub, o LiteBox é um Library OS com sandboxing focado em segurança, que reduz a superfície de ataque ao minimizar a interface com o host
Ele foi projetado para conectar uma interface “North” baseada em nix/rustix no estilo Rust com várias plataformas “South”
Alguns exemplos incluem executar programas Linux no Windows, aplicar sandbox em apps Linux ou rodar sobre SEV SNP, OP-TEE e LVBS
Faz tempo que acho o WSL2 uma solução improvisada, enquanto o WSL1 era um ótimo exemplo do conceito de “personality modules” do Windows NT
Parece um caso típico de a Microsoft empacotar uma ideia já existente com um nome novo para fazê-la parecer inovadora
Hoje em dia, o principal sistema operacional da Microsoft está tão cheio de bugs que fica difícil confiar em novos projetos da empresa
Provavelmente a equipe que desenvolve isso não tem nenhuma relação com a UX moderna do Windows
O repositório do LiteBox inclui arquivos de configuração relacionados ao Copilot
copilot-instructions.md
Isso apenas torna a configuração explícita
Fiquei curioso sobre o que seria um Library OS
syscall,ioctletc.) são linkadas diretamente ao app na forma de bibliotecaOu seja, as funções do SO passam a ficar integradas ao espaço de endereçamento da aplicação, e a interface externa vira acesso a hardware ou hypercalls
Unikernels funcionam assim, e o Wine também pode ser visto, em sentido amplo, como um Library OS
Por exemplo, dá para linkar um app Linux ao LiteBox e executá-lo sobre SEV-SNP, ou rodar um TA do OP-TEE no Linux
O ponto principal é que, em vez de auditar centenas de syscalls POSIX, a ideia foi simplificar tudo para controlar apenas algumas operações primitivas de uma representação intermediária
Se eu tivesse que explicar para um alienígena a diferença entre um Library OS e um app baseado em kernel, eu acharia difícil explicar seriamente de tão sutil que é a diferença
No começo achei que “Library OS” fosse um sistema operacional para bibliotecas
O conceito de Library OS era novo para mim, mas pela explicação ele parece semelhante a um Unikernel
O programa roda diretamente sobre o hipervisor sem chamadas em modo kernel, e o LiteBox também pode funcionar como processo em Linux, Windows e BSD
Só não ficou claro se ele usa uma ABI própria ou a ABI do SO hospedeiro
Pela descrição, também passa um pouco de sensação de projeto “vibe-coded”
Se a Microsoft permitisse, por meio do LiteBox, escrever drivers de callout do WFP sem assinatura, isso seria interessante
Ainda rodaria em modo kernel, mas poderia ser mais flexível que as NetworkExtensions do MacOS
Senti falta de menção a um processo de desenvolvimento baseado em especificações de design e verificação formal (formal verification)
É uma tentativa interessante, mas sem essa abordagem existe o risco de reaparecerem as vulnerabilidades de segurança que se repetiram no Windows
Foi a primeira vez que ouvi o termo “Library OS”, e fiquei na dúvida se o gVisor também entraria nessa categoria
Parece uma estrutura parecida, mas não sei se é exatamente a mesma coisa
Fazia tempo que eu não encontrava um projeto que parece tão interessante assim.