子プロセスで処理を行う場合は注意する
一段落説明
子プロセスは素晴らしいものですが、注意して使用する必要があります。ユーザー入力の受け渡しは、利用しないのでなければ、サニタイズされていなければなりません。サニタイズされていない入力がシステムレベルのロジックを実行する危険性は無限にあり、リモートコードの実行からセンシティブなシステムデータの漏洩、そしてデータ損失にまで及びます。準備のためのチェックリストは以下のようになります。
- すべての場合でユーザー入力を避け、そうでない場合は検証とサニタイズを行う
- ユーザー/グループアイデンティを利用して、親プロセスと子プロセスの権限を制限する
- 上記が機能しなかった場合の望まない副作用を防ぐために、プロセスを隔離された環境で実行する