PHP をコンパイルするときは、特別な必要がない限り、CLI コマンド ライン モードで PHP 解析サポートをコンパイルおよび生成することを禁止する必要があります。 --disable-CLI を使用してコンパイルできます。 CLI モードの PHP がコンパイルおよび生成されると、そのプログラムは侵入者によって使用され、WEB シェルのバックドア プロセスを確立したり、PHP を通じて任意のコードを実行したりする可能性があります。
phpinfo()
関数説明: PHP環境情報および関連モジュール、WEB環境等を出力します。
危険レベル: 中
passthru()
関数の説明: exec() と同様に、外部プログラムを実行し、出力をエコーすることができます。
危険レベル: 高
exec()
関数の説明: 外部プログラム (UNIX シェルや CMD コマンドなど) の実行を許可します。
危険レベル: 高
system()
関数の説明: passthru() と同様に、外部プログラムを実行し、出力をエコーすることができます。
危険レベル: 高
chroot()
関数の説明: 現在の PHP プロセスの作業ルート ディレクトリを変更できます。システムが CLI モード PHP をサポートしている場合にのみ機能し、この関数は Windows システムには適用されません。
危険レベル: 高
scandir()
関数の説明: 指定されたパス内のファイルとディレクトリを一覧表示します。
危険レベル: 中
chgrp()
関数の説明: ファイルまたはディレクトリが属するユーザー グループを変更します。
危険レベル: 高
chown()
関数の説明: ファイルまたはディレクトリの所有者を変更します。
危険度: 高
shell_exec()
関数の説明: シェルを通じてコマンドを実行し、実行結果を文字列として返します。
危険レベル: 高
proc_open()
関数の説明: コマンドを実行し、読み取りおよび書き込みのためにファイル ポインターをオープンします。
危険レベル: 高
proc_get_status()
関数の説明: proc_open() を使用して、オープンされたプロセスに関する情報を取得します。
危険レベル: 高
error_log()
関数の説明: エラー情報を指定された場所 (ファイル) に送信します。
セキュリティ上の注意: PHP の一部のバージョンでは、error_log() を使用して PHP セーフ モードをバイパスできます。
任意のコマンドを実行します。
危険度:低
ini_alter()
関数説明:ini_set()関数の別名関数であり、ini_set()と同じ機能を持ちます。詳細については、ini_set() を参照してください。
危険レベル: 高
ini_set()
関数の説明: PHP 環境構成パラメーターの変更および設定に使用できます。
危険レベル: 高
ini_restore()
関数の説明: PHP 環境設定パラメーターを初期値に復元するために使用できます。
危険レベル: 高
dl()
関数の説明: PHP の実行中に (起動時ではなく) PHP 外部モジュールをロードします。
危険レベル: 高
pfsockopen()
関数の説明: インターネットまたは UNIX ドメインで永続的なソケット接続を確立します。
危険度: 高
syslog()
関数の説明: UNIX システムのシステム層 syslog() 関数を呼び出すことができます。
危険度: 中
readlink()
関数の説明: シンボリック リンクが指すターゲット ファイルの内容を返します。
危険レベル: 中
symlink()
関数の説明: UNIX システムにシンボリック リンクを作成します。
危険レベル: 高
popen()
関数の説明: コマンドは、popen() のパラメーターを介して渡され、popen() によって開かれたファイル上で実行できます。
危険レベル: 高
stream_socket_server()
関数の説明: インターネットまたは UNIX サーバー接続を確立します。
危険レベル: 中
putenv()
関数の説明: PHP の実行時にシステムの文字セット環境を変更するために使用されます。 5.2.6 より前の PHP バージョンでは、この関数を使用してシステムの文字セット環境を変更し、sendmail コマンドを使用して特別なパラメータを送信し、システム SHELL コマンドを実行できます。
危険レベル: 高