passthru、shell_exec などの PHP の関数を無効にしましたが、それだけでは十分ではありません。いくつかのシェル (具体的には r57 と c99) をダウンロードして、それらを調べています。私が見ているのは、/etc/ と /var/ 内のファイルへの呼び出しが多いことです。これらのファイルがnginxユーザーによって読み取られないようにする方法はありますか? ユーザーnginxは「nobody」として実行されています。
nginx や php エクステンション用のモジュールを書くことを考えていましたが、良い C を書くのに失敗する必要のないもっと簡単な方法があれば考えません。
また、これらのシェルの多くが mysql_* 関数を使用していることにも気付きましたが、私のアプリケーションはそれを使用していないか、使用する予定はありません。これらの機能を無効にするために使用できる ini ファイルの設定はありますか?
また、最初にシェルをアップロードする前に、シェルからのセキュリティを確保する必要があることを知っていることにも注意したいと思いますが、特別な予防措置を講じたいと思います。serverfault は死んでいるので、ここに投稿しました。