O risco disso é que o programa pode modificar o registro no sistema em que está sendo executado ou que pode deixar um arquivo em algum lugar do sistema. Um exemplo desse comportamento pode ser visto com o Putty, que geralmente deixa em torno de um arquivo de configuração de algum tipo com configurações relacionadas a conexões feitas com ele.
Pelo que pude contar no meu (BRIEF) olhar através de alguns dos códigos-fonte, não consegui ver nada do que isso estaria fazendo com o sistema externo. Advertências com isso:
- Eu não sou um codificador de java
- Uma breve olhada não é a mesma coisa que uma auditoria completa
Em vez de uma auditoria completa, é muito difícil dizer se esse código em particular deixa alguma coisa por aí. Além disso, qualquer registro que ocorra no sistema em que você está usando (keyloggers não seria tão bom, agora é?) É outro fator caótico a ser adicionado ao mix.
Embora o caso particular de um keylogger eficaz seja difícil de superar, a maioria dos outros vazamentos pode ser contida usando um método de contenção, como o docker. O maior problema com o docker, no entanto, é que o próprio docker também precisaria ser instalado no sistema host. Infelizmente, no mundo Windows, simplesmente não existe uma ferramenta universal como o chroot para forçar um aplicativo a usar apenas uma área específica em um sistema de arquivos (e, na verdade, até mesmo a porta para o chroot para o Windows vem com muitas advertências devido a a maneira como vários aspectos do Windows funcionam).
Você seria, no mínimo, sábio ao conferir o Packaging Portable Apps para ver como outros aplicativos costumam ser portáteis no Windows. Embora não seja infalível, ele lhe dará uma idéia melhor de como executar o OpenStego de uma maneira portátil, para que o registro não seja alterado e os arquivos de configuração sejam mantidos no dispositivo USB em vez do sistema host. Geralmente, apenas puxar um aplicativo (especialmente uma pasta inteira necessária para executar um aplicativo) não é o mesmo que ser feito portátil, e há um grande número de locais em que ele pode estar deixando arquivos (para armazenar coisas como configurações ou possivelmente logs) e também pode modificar o registro. Dado que o OpenStego é Java, parece menos provável que o registro seja um problema, mas fora de uma auditoria completa do código-fonte, não há realmente uma boa maneira de ser 100% positivo. Você poderia, é claro, tentar entrar em contato com o desenvolvedor original, mas dado que é um software livre, ele obviamente não tem obrigação de responder.
Se você é realmente paranóico sobre se algo está ou não sendo deixado por perto, é melhor você montar um Linux LiveUSB (ou talvez uma instalação do Windows com BartPE) com o OpenStego instalado, para que o host o sistema operacional nem entra na equação, deixando suas únicas ameaças de segurança em potencial restritas a hardware malicioso (como keyloggers de hardware).