這篇文章跟大家聊聊PHP安全,介紹一些危險的內建函數,以及停用函數的方法。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。
PHP設定檔中的disable_functions選項能夠在PHP中停用函數,PHP內建函數中存在著許多危險性極高的函數,在產生環境上一定要注意使用。如果設定不當,嚴重可能造成系統崩潰。
內建函數是一把雙面刃,既能幫助開發人員解決問題,同時也會對安全上造成隱患,所以合理的使用內建函數是一個置關重要的問題,下面一起來看一下危險的內建函數。
chgrp
函數功能:改變檔案或目錄所屬的使用者群組;
危害性:高
chown
函數功能:改變檔案或目錄的擁有者;
危害性:高
##chroot
函數功能:改變目前PHP程序的工作根目錄,僅當系統支援CLI模式時PHP才能運作,且此函數不適用於Windows系統;危害:高dl
函數功能:在PHP運行過程中(非啟動時)載入一個PHP外部模組;危害性:高exec
函數功能:允許執行一個外部程序,如unix shell或cmd指令等;危害性:高##ini_alter函數功能:是ini_set()函數的一個別名函數,函數與ini_set()相同;
危害性:高
##ini_restore
#函數功能:可用來將PHP環境配置函數還原為初始值;危害性:高
ini_set##函數功能:可用於修改、設定PHP環境配置參數;危害性:高
#passthru
函數功能:允許執行一個外部程式並顯示輸出,類似exec();危害性:高
pfsockopen
函數功能:建立一個Internet或unix域的socket持久連接;危害性:高
phpinfo
#函數功能:輸出PHP環境資訊以及相關模組、Web環境資訊;危害性:高
popen
函數功能:可透過popen()的參數傳遞一條指令,並對popen()所開啟的檔案進行執行。危害性:高
proc_get_status
函數功能:取得使用proc_open()所開啟進程資訊;#危害性:高
proc_open
執行一個命令並開啟檔案指標用於讀取以及寫入;危害性:高
putenv
使用者PHP執行階段改變系統字元集環境,在低於5.2.6版本的PHP中,可利用此函數修改系統字元集環境後,利用sendmail指令傳送特殊參數執行系統shell指令;危害性:高
readlink
函數功能:傳回符號連線執行的目標檔案內容;危害性:中
scandir
函數功能:列出指定路徑中的檔案和目錄;危害性:中
shell_exec
函數功能:透過shell執行指令,並將執行結果作為字串傳回;危害性:高
stream_socket_server
函數功能:建立一個Internet或unix伺服器連線;危害性:中
##symlink
函數功能:對現有的target建立一個名為link的符號連接;
#################### ##函數功能:可呼叫unix系統的系統層syslog()函數;######危害性:中#########system########函數函數:允許執行一個外部程式並回顯輸出,類似於passthru();######危害性:高#######推薦學習:《###PHP影片教學###》###以上是淺談PHP中需要停用的危險函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!