Existe uma aplicação GUI do Windows (chamada A de agora em diante) que usa algumas senhas como argumento de inicialização. Por exemplo,
C:\SomeProgram.exe /usr=homer /pwd=simpson
Existe uma aplicação (chamada B de agora em diante) que inicia A. A e B são desenvolvidos por diferentes partes e tenho certeza que os desenvolvedores de A não estão cientes de B.
Agora, quando A é iniciado por B, se eu vir o valor de Linha de Comando de A no Process Explorer, vejo que o pwd está obscurecido com *. Por exemplo,
'C:\SomeProgram.exe /usr=homer /pwd=*****'
Mas quando eu coloco exatamente os mesmos argumentos nas propriedades do atalho, a parte da senha era claramente visível. Como isso é possível? B parece ser codificado com o Visual Basic 6. Existe algum tipo de API do Windows ou truques ocultos para isso?