Инъекция в оболочку с переменным расширением в пределах спины в bash - PullRequest
0 голосов
/ 26 октября 2019

Я ищу, чтобы предотвратить инъекцию оболочки. У меня в коде bash есть следующий код:

`cmd $user_input1 $user_input2`

Я пока не нашел способа использовать этот код. Я думал, что если

user_input1="| ls >/tmp/hi"

, то будет создан файл с именем /tmp/hi. Это не так, поскольку специальные символы, такие как |, по-видимому, игнорируются и просто передаются в качестве буквальных аргументов cmd. Есть ли какой-нибудь способ интерпретировать эти специальные хартии для использования некоторых оболочек?

...