
Script para criar modelos para usar com VirtualBox para dificultar a detecção de VM
Um script para ajudar a criar templates, que podem ser usados com VirtualBox para dificultar a deteção de VM.
A minha primeira publicação sobre o assunto foi em 2012 e, desde então, foi atualizada esporadicamente. O formato de blogue pode não ter sido a melhor forma de publicar a informação e algumas pessoas criaram scripts interessantes e "fáceis de aplicar" com base no conteúdo.
Para facilitar a adição de novos conteúdos, decidi fazer exatamente o mesmo.
O objetivo deste script é utilizar as definições disponíveis sem modificar a base do VirtualBox. Há quem faça coisas realmente interessantes ao modificar o VirtualBox, mas isso está fora do âmbito deste script. Acredito que esta abordagem tem os seus méritos, pois (espero) não quebra a cada nova versão do VirtualBox. Ao longo do tempo, também incluí "coisas" que não estão diretamente relacionadas com VM, mas sim com o que o malware utiliza para identificar instalações. Espero que não se importem..
O script principal criará os seguintes ficheiros:
sudo apt install python3-pip libcdio-utils acpica-tools mesa-utils smartmontoolssudo pip3 install -r requirements.txtwget https://download.sysinternals.com/files/VolumeId.zip https://www.nirsoft.net/utils/devmanview-x64.zip (versão x64).hostname > computer.lst, whoami > user.lst. Modifique se pretender usar nomes de máquina e utilizadores diferentes para as VMs (recomenda-se preencher os ficheiros com uma longa lista de nomes de utilizador e computador).sudo python3 antivmdetect.pysudo chmod a+x xxxxx.sh/bin/bash xxxxx.sh my-virtual-machine-nameMova o script batch (xxxx.ps1) para o convidado recém-instalado.
Execute o script batch no interior do convidado. Lembre-se de que a maioria das definições modificadas são revertidas após cada reinicialização. Portanto, faça-o executar no arranque, se necessário.
A partir da versão 0.1.4, algumas definições aplicadas exigem uma reinicialização. Execute o script batch uma vez; o convidado será reiniciado. Em seguida, execute o script novamente para finalizar a configuração.
Antes de aplicar o script batch no interior do convidado, desative o UAC (necessita reinicialização), caso contrário não conseguirá modificar o registo com o script.
Para utilizadores do Windows 10: execute o script PS como administrador (clique direito em cmd.exe -> executar como administrador, navegue até ao script PS e execute).
Se aplicado corretamente, uma execução do Pafish resultará nisto (não é necessário modificar o Virtualbox).
Note que este script faz outras coisas não cobertas pelo Pafish (por exemplo, artefactos do W10)

0.1.9:
Compatível com Python3
Primeira tentativa de extrair o disco correto, que tem sido fonte de dores de cabeça para muitos. (Issue #35 (e algumas outras issues antigas), obrigado @oaustin)
Melhorias no tratamento de strings no script shell (Issue #35 e #36 e PR #44, obrigado @oaustin, @dashjuvi e @corownik)
Adicionado um link para um recurso DSDT online (Issue #37, obrigado @MasterCATZ)
Atualizado o README para tornar as instruções de instalação mais claras, obrigado @jorants (issue #38)
Verificar se o dump DSDT foi realmente criado, obrigado @nov3mb3r (Issue: #42)
Adicionado um aviso de licença, obrigado @obilodeau (issue #43)
Limpeza de código: removido suporte a discos RAID por falta de acesso a hardware de servidor... e muitas outras pequenas melhorias
0.1.8:
Melhorado suporte para Windows 10
Correção de markup fundida de @bryant1410 (PR #14)
Resolvido um problema para utilizadores de macOS + VBox/VMWare Fusion ao criar os templates.
Criar o template a partir de uma máquina virtual não é a melhor forma, independentemente... (issue #12 e possivelmente #15)
0.1.7:
Windows 10 agora suportado (feedback bem-vindo)
Vários novos artefactos "corrigidos" para instalações W10
Nova dependência: mesa-utils
Correção de bug fundida de @Fullmetal5 (#10)
Várias correções de código diversas
READme atualizado
0.1.6:
Adicionado um pop-up após a segunda execução, para tornar mais claro que está pronto
Adicionada uma função que cria algumas instâncias do notepad. Esta funcionalidade será alargada em versões futuras
Refeita a função RandomDate, obrigado a @Antelox por me alertar para o problema com a antiga (#8)
O Acpidump fornecido com versões antigas do Ubuntu não suporta a opção "-s". Isto é agora tratado com uma mensagem de erro. Obrigado a @Antelox por esta issue (#7)
Devmanview.exe não era removido após a segunda execução, corrigido