Безопасное использование Runtime.getRuntime.exe c (String []) - PullRequest
0 голосов
/ 04 апреля 2020

Я просматривал этот код приложения, в котором используется следующий фрагмент кода Java, и хотел узнать, возможно ли использование exe c () для внедрения команд.

public class FindFileInDir {
  public static void main(String[] args){
   try {
        Runtime rt = Runtime.getRuntime();
        String[] cmdArr = { "bash", "checkfileindirectory.sh", "<directory_to_search>", "<file_to_find> };
        Process p = rt.exec(cmdArr);
      } catch (Exception e) {
         e.printStackTrace(System.out);
    }
  }
}

Чтобы обеспечить некоторый контекст, сценарий оболочки - это просто оболочка для команды поиска, которая ищет файл в каталоге. Он принимает два аргумента directory_to_search и file_to_find . Аргумент directory_to_search к скрипту исправлен, но пользователь содержит аргумент file_to_find . Есть ли полезные данные, которые можно использовать для объединения нескольких команд bash в этом сценарии?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...