Я хочу вызвать "openssl" в моей командной строке для некоторых вещей расшифровки.
При использовании
Process process = new ProcessBuilder().command("openssl", "enc", ...).start();
как я могу быть уверен, что настоящая команда openssl вызвана?
Представьте себе злоумышленника, который просто переименовывает openssl -> openssl2 и добавляет свою собственную злую программу как «openssl», которая, в свою очередь, вызывает «openssl2» в фоновом режиме, но захватывает stdin и stdout и тихо сбрасывает их в секретный файл.
Можно ли быть уверенным, что правильная программа для ОС называется?
Спасибо всем!