Entendendo o Liberty Garden na prática
Liberty garden é um projeto open-source que permite rodar ferramentas de análise forense digital diretamente do navegador, sem precisar instalar nada no computador local. O diferencial é que tudo roda em containers Docker isolados, então você não contamina a máquina do analista com os artefatos que está investigando. Isso elimina uma dor de cabeça comum em laboratórios móveis onde o tempo de setup pode variar entre 30 minutos e 2 horas dependendo da config A arquitetura é baseada em imagens Docker pré-construídas que empacotam ferramentas como Autopsy, Volatility, binwalk, strings personalizadas e coleções de YARA. O serviço web funciona como interface única para orquestrar múltiplos containers simultaneamente. Quando um usuário faz upload de uma imagem de disco ou memória, o Liberty garden espelha o arquivo para um volume persistente e dispara os jobs de análise de forma paralela.
Como configurar um liberty garden funcional
O primeiro passo é ter o Docker e o Docker Compose atualizados rodando na máquina onde o serviço vai residir. Recomendo pelo menos 16GB de RAM e 4 vCPUs, porque cada container de análise consome recursos de forma imprevisível, especialmente quando processa imagens de disco maiores que 50GB. Clona o repositório oficial do GitHub e entra na pasta raiz. Depois edita o arquivo .env para ajustar o caminho base onde os artefatos serão armazenados. O padrão cria dados em /data/liberty-garden, mas em máquinas com discos separados para dados, mude isso para evitar enchimento do sistema de arquivos principal. Roda então o comando docker compose up -d e espera cerca de 5 minutos para que as imagens sejam puxadas se ainda não estiverem locais.
A interface web fica disponível em http://IP_DO_SERVIDOR:8080. Faz login com as credenciais padrão que aparecem no log inicial do Docker Compose. A partir daí, cria um novo trabalho, sobe o artefato e seleciona as ferramentas que quer executar. Cada ferramenta roda como container independente, então falhas em um job não derrubam os outros. Um problema real que enfrentei foi quando uma imagem de disco com partição criptografada LUKS travava o Autopsy em loop infinito. O container consumia 100% de CPU e nunca finalizaava. A solução foi configurar um timeout de 1200 segundos no docker-compose.yml para o serviço do Autopsy e adicionar um script de monitoramento que mata o container após 20 minutos ocioso sem gerar output nos logs. Sem esse workaround, um único job defeituoso podia deixar o ambiente inutilizável por horas.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Nuances que a documentação oficial não menciona
A maioria dos guias fala apenas na instalação básica, mas existem dois pontos que impactam diretamente a usabilidade no dia a dia. O primeiro é a gestão de volumes persistentes. Quando você reinicia o servidor, os artefatos e resultados permanecem porque estão em volumes nomeados, mas o espaço em disco cresce sem controle se ninguém limpar os trabalhos antigos. Configurei um cron job semanais que remove imagens de disco maiores que 30 dias e que não estejam marcadas como preservadas. O segundo ponto é a limitação de memória do container Volatility. Por padrão, o Liberty garden aloca 2GB para o container de análise de memória, o que é insuficiente para arquivos de hibernação (hiberfil.sys) ou dumps completos de RAM acima de 8GB. Ajustei o limitador no docker-compose para 8GB e adicionei um swap de 4GB dentro do container. Sem essa alteração, jobs de memória simplesmente estouravam o OOM killer e abortavam silenciosamente.
O download oficial pode ser feito diretamente do repositório do projeto no GitHub. A branch principal recebe atualizações frequentes nas imagens base, então é recomendável manter o ambiente sincronizado com pull weekly para não perder patches de segurança das ferramentas empacotadas. Existem casos em que o liberty garden não é a melhor escolha. Se o analisador precisa trabalhar com evidências sensíveis que não podem sair de uma rede air-gapped, a dependência de imagens Docker pré-construídas cria um gargalo de confiança. Nesse cenário, prefiro containers manuais com ferramentas versionadas e assinadas, mesmo que o custo operacional seja maior. O Liberty garden é prático para volumes altos de análise rotineira, mas não substitui setups dedicados para investigações de alta criticidade.
A curva de aprendizado é baixa para quem já domina Docker, mas a parte de debugging de jobs falhos exige familiaridade com logs containerizados e configuração de recursos. Dediquei algumas semanas ajustando timeouts, limites de memória e scripts de limpeza antes que o ambiente se tornasse realmente utilizável em campo. Vale o investimento se você roda análises forenses com frequência.