1

Rubyのsystem方法を使用しています。

system("/bin/wget", "-pk", "-nd", "-P", "/public/download", "#{URL}")

URLユーザーが入力します。

URLユーザーが悪意のあることをしていないことを確認するために、サーバーでどのようなチェックを実行する必要がありますか?

4

1 に答える 1

0

私の理解では、あなたがそれを呼んだ方法では、誰かが say を渡すことを心配する必要はありません; rm -rf *。ただし、wget が URL に対して特別な処理を行う場合は、可能性があります。たとえば、curl を使用すると、URL 自体でいくつかの正規表現/範囲/ワイルドカードを実行できます。

URI.parseと catchを介して URL を実行することを検討してくださいURI::InvalidURIError

于 2012-11-13T22:48:52.637 に答える