Инъекция команд
Некоторые базовые методы Ruby принимают строковые данные, содержащие текст для выполнения в качестве системной команды.
Их не следует вызывать с неизвестными или неочищенными командами.
К таким методам относятся:
-
`command` (метод обратного апострофа) (также вызывается выражением
%x[command]). -
IO.popen(если вызывается не с"-").
Некоторые методы выполняют системную команду только в том случае, если указанное имя пути начинается с |:
Обратите внимание, что некоторые из этих методов не выполняют команды при вызове из подкласса File:
Ruby Core © 1993–2025 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.