天天看點

PHP中16個高危函數

php中内置了許許多多的函數,在它們的幫助下可以使我們更加快速的進行開發和維護,但是這個函數中依然有許多的函數伴有高風險的,比如說一下的16個函數不到萬不得已不盡量不要使用,因為許多“高手”可以通過這些函數抓取你的漏洞。

1、passthru()

功能描述:允許執行一個外部程式并回顯輸出,類似于 exec()。

危險等級:高

2、exec()

功能描述:允許執行一個外部程式(如 UNIX Shell 或 CMD 指令等)。

3、system()

功能描述:允許執行一個外部程式并回顯輸出,類似于 passthru()。

4、chroot()

功能描述:可改變目前 PHP 程序的工作根目錄,僅當系統支援 CLI 模式

PHP 時才能工作,且該函數不适用于 Windows 系統。

5、chgrp()

功能描述:改變檔案或目錄所屬的使用者組。

6、chown()

功能描述:改變檔案或目錄的所有者。

7、shell_exec()

功能描述:通過 Shell 執行指令,并将執行結果作為字元串傳回。

8、proc_open()

功能描述:執行一個指令并打開檔案指針用于讀取以及寫入。

9、proc_get_status()

功能描述:擷取使用 proc_open() 所打開程序的資訊。

10、ini_alter()

功能描述:是 ini_set() 函數的一個别名函數,功能與 ini_set() 相同。

具體參見 ini_set()。

11、ini_set()

功能描述:可用于修改、設定 PHP 環境配置參數。

12、ini_restore()

功能描述:可用于恢複 PHP 環境配置參數到其初始值。

13、dl()

功能描述:在 PHP 進行運作過程當中(而非啟動時)加載一個 PHP 外部子產品。

14、pfsockopen()

功能描述:建立一個 Internet 或 UNIX 域的 socket 持久連接配接。

15、popen()

功能描述:可通過 popen() 的參數傳遞一條指令,并對 popen() 所打開的檔案進行執行。

16、putenv()

功能描述:用于在 PHP 運作時改變系統字元集環境。在低于 5.2.6 版本的 PHP 中,可利用該函數

修改系統字元集環境後,利用 sendmail 指令發送特殊參數執行系統 SHELL 指令。

以上就是PHP中16個高危函數的詳細内容,更多請關注php交流群:

link