не удалось выполнить скомпилированный файл - & ldquo; разрешение denied & rdquo;

Да, это может быть уязвимость безопасности.

Помещение .: в начале CLASSPATH означает, что Java использует классы в текущем каталоге, прежде чем беспокоиться о поиске остальной части CLASSPATH пути. Это означает, что файлы .class в текущем каталоге или его подкаталогах будут использоваться вместо любого класса или интерфейса. Например, если файл ./java/lang/String.class существует, он будет использоваться вместо стандартного класса String.

Это означает, что если вы не обращаете внимания на то, что представляет собой текущий каталог, когда вы запускаете Java-программа, программа может загружать вредоносные классы вместо любого класса.

Чтобы сэкономить усилия по усиленной проверке текущего каталога каждый раз, когда вы когда-либо запускаете программу Java, t установите систему по умолчанию.

Если вы собираетесь использовать классы под текущим каталогом при запуске определенной Java-программы, вы обычно должны пропустить настройку CLASSPATH и использовать вместо java, как в:

java -cp ".:…" …

Это полностью позволяет избежать влияния других программ Java через переменную среды CLASSPATH. Вы должны делать это только в тех случаях, когда вы знаете, что файлы в текущем каталоге не являются вредоносными.

1
задан 17 March 2012 в 20:17

2 ответа

[Comments answered by OP]

Проблема с исполняемыми файлами заключается в том, что он был в форматированном с диска диске ... поэтому я переместил его в домашний каталог, а затем выполнил следующую команду chmode +x rget и теперь я могу выполнить его. Спасибо за вашу поддержку
2
ответ дан 25 May 2018 в 13:26

попытайтесь выполнить chmod a+x rget, чтобы активировать разрешение на выполнение. Если файл находится в NTFS или FAT, вам необходимо изменить параметры установки в fstab

3
ответ дан 25 May 2018 в 13:26
  • 1
    Я пробовал то, что вы сказали, но все же я сталкиваюсь с той же проблемой. – user824910 17 March 2012 в 18:39
  • 2
    Проблема с этими исполняемыми файлами заключается в том, что он был в диске с форматированием окон ... поэтому я переместил его в домашний каталог, а затем выполнил следующую команду chmode + x rget, и теперь я могу ее выполнить. Спасибо за вашу поддержку – user824910 17 March 2012 в 20:05

Другие вопросы по тегам:

Похожие вопросы: