Veja os argumentos da linha de comando sendo passados para um programa
Você pode pular esta parte
Eu estou usando um arquivo de lote que tenho no meu pen drive, a fim de montar um verdadeiro volume de cripta. Eu criei esse arquivo em lote com a ajuda deesse link. nesse arquivo em lote eu tenho o nome de usuário e senha que eu passo como argumentos para trueCrypt.exe para que ele seja montado.
De qualquer forma, minha pergunta é: será possível ver os argumentos sendo passados para um programa a partir de um processo de terceiros? Em outras palavras, será possível ver os argumentos sendo passados para este programa:
using System;
using System.Reflection;
using System.Diagnostics;
class Program
{
static string password = "";
static void Main(string[] args)
{
if (args.Length > 0)
password = args[0];
// get location where this program resides
var locationOfThisExe = Assembly.GetExecutingAssembly().Location;
Console.Write("Press enter to start a new instance of this program.");
Console.Read();
var randomArgument = new Random().NextDouble().ToString();
Process.Start(locationOfThisExe, randomArgument);
// I am passing a random argument to a new process!
// is it possible to see these arguments from another process?
}
}
EditarEu estou criando uma causa de edição, eu acho que expliquei o meu auto de forma incorreta, mas esta edição deve ser uma solução em vez de uma pergunta
Eu acho que essa pergunta não recebeu atenção suficiente. Executando o comando mostrado porhttps://stackoverflow.com/users/235660/alois-kraus mostra:
(Colei a saída no notepad ++)
na imagem não mostra muito claramente, mas eu pude ver o argumento sendo passado para esse processo.Isso é muito importante para mim porque montei meus verdadeiros volumes de cripta com o comando:
"C: \ Arquivos de programas \ TrueCrypt \ TrueCrypt.exe" / v "a: \ volume.tc" / lz / a / p a
que diz para TrueCrypt que eu quero montar o volume localizado ema:\volume.tc
na letra de unidade z e a senha éa
Se eu executar esse comando, true crypt montará esse volume na unidade z:
o problema é que se eu então executar o comandowmic process
observe o que calçou:
Observe a senha está lá!
Portanto, em resumo, não é seguro passar informações seguras como argumento. Pode ser seguro se você fechar o processo que recebeu os argumentos, mas eu acho que é importante estar ciente disso ...