Reputation: 16640
I want to do the following securely
system "echo '#{params[:message]}' > /dev/log"
What is the proper way for escaping arguments when calling a native command?
(Example evil input: '; rm -Rf *; echo 'I won.
)
Upvotes: 10
Views: 1954
Reputation: 44952
If you do
system "echo", params[:message]
Then the second argument, will be sent as an argument, it will not be executed.
Upvotes: 16