ホームページ  >  記事  >  バックエンド開発  >  PHPの危険な関数をご存知ですか?

PHPの危険な関数をご存知ですか?

Guanhui
Guanhui転載
2020-05-13 09:17:042459ブラウズ

PHPの危険な関数をご存知ですか?

場合によっては、安全のために PHP の危険な関数を無効にする必要がある場合があります。この記事では、参考のために PHP の危険な関数をいくつかまとめました。

#機能機能推奨事項レベル##phpinfoパススルーexecsystemchrootscandirchgrpchownshell_execproc_openproc_get_statusini_alter、ini_setini_restoredlpfsockopensyslogreadlinksymlinkpopen##stream_socket_serverインターネットまたは UNIX サーバー接続の確立無効にするRPC、ソケット通信などに影響を与える可能性があります。 高 注: 上記の結果は最終的な結果ではありません。最後に、ビジネスを結合し、ビジネスへの影響を分析する必要があります。無効にする方法は次のとおりです。
PHP 環境情報および関連モジュール、WEB 環境などの情報を出力します。 無効にしても影響はほとんどありません
外部プログラムの実行を許可し、出力をエコーし​​ます 無効にしても影響はほとんどありません High
外部プログラム (UNIX シェルや CMD コマンドなど) の実行を許可します。 .) 無効にしても影響はほとんどありません
外部プログラムの実行を許可し、出力をエコーし​​ます 無効化による影響はほとんどありません High
現在の PHP プロセスの作業ルート ディレクトリを変更できるのは、システムは CLI モードをサポートしています 影響を無効にするあまり大きくありません
指定されたパス内のファイルとディレクトリを一覧表示します。 影響を受ける可能性があります
ファイルまたはディレクトリが所属するユーザーグループを変更してください。 無効にしても影響はほとんどありません
ファイルまたはディレクトリの所有者を変更します 無効にする ほとんど影響なし
シェルを通じてコマンドを実行し、実行結果を文字列として返します。 無効にしても効果はほとんどありません
コマンドを実行し、読み取りと書き込みのためにファイル ポインタを開きます。 無効にすると、スケジュールされたタスクを実行できなくなる可能性があります High
proc_open を使用して開かれたプロセスに関する情報を取得します() 。 無効にすると、スケジュールされたタスクを実行できなくなる可能性があります。 High
は次の目的で使用できます。 PHP 環境構成パラメータを変更して設定します。 無効化による影響はほとんどありません
PHP 環境構成パラメータを初期値に復元するために使用できます。 無効化による影響はほとんどありません
PHP の実行中に (起動時ではなく) PHP 外部モジュールをロードします 無効化による影響はほとんどありません
インターネットまたは UNIX ドメインへの永続的なソケット接続を確立します 無効にすると、RPC、ソケット通信などに影響する可能性があります。
UNIX システムのシステム層 syslog () は、 Function 無効にしても影響はほとんどありません
関数が指すターゲット ファイルの内容を返します。シンボリック リンク 無効化による影響はほとんどありません
ソフト リンクの作成 無効化による影響はほとんどありませんImpact
popen() のパラメータを介してコマンドを渡し、popen() によって開かれたファイル上で実行できます。 効果を無効にする あまり大きくない
php.ini を開き、disable_functions を検索して追加します。

disable_functions = 
passthru,exec,system,chroot,chgrp,chown,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,
syslog,readlink,popepassthru,stream_socket_server

推奨チュートリアル: 「

PHP チュートリアル

以上がPHPの危険な関数をご存知ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。