我在具有用戶權限的Linux紅帽服務器上有一個PHP shell。我試圖在PHP中使用ln -s
或甚至symlink()
符號鏈接根目錄,但仍然不可能。繞過禁用DL函數PHP Linux
我已經看到了PHP DL功能是喜歡這幅畫禁用:
我在當前目錄女巫使用的php.ini包含此字符串:
safe_mode=OFF
disable_functions=NONE
並沒有停用,那該怎麼辦?
我在具有用戶權限的Linux紅帽服務器上有一個PHP shell。我試圖在PHP中使用ln -s
或甚至symlink()
符號鏈接根目錄,但仍然不可能。繞過禁用DL函數PHP Linux
我已經看到了PHP DL功能是喜歡這幅畫禁用:
我在當前目錄女巫使用的php.ini包含此字符串:
safe_mode=OFF
disable_functions=NONE
並沒有停用,那該怎麼辦?
的dl
功能,並且動態加載PHP擴展的能力,已經從所有的PHP SAPIs,與CLI SAPI的例外去除,因爲PHP 5.3(和7.0在PHP-FPM)。
警告從最SAPIs下去除PHP 5.3.0此功能,在PHP 7.0.0,從PHP-FPM刪除。
所以,除非你正在運行PHP 5.2,有一個在Web SAPI該功能沒有用。無論如何,您不應該試圖在運行時在Web環境中動態加載您的擴展。它通常沒有任何意義,並可能導致很多邊緣情況。這些邊緣案例中的大多數都是在CLI環境中進行的,但對於Web環境很重要。
至於重寫disable_functions
你想確保你正在編輯正確的php.ini文件並從正確的SAPI中檢查phpinfo()
。請記住,從CLI和Apache/web運行的PHP是兩個不同的二進制文件,可以加載不同的配置文件。所以你應該看看phpinfo()
從正確的一個找到「加載配置」文件來編輯。您總是需要重新啓動PHP才能使這些加載的配置生效。請記住,dl()
可能會從任何當前受支持的PHP版本中刪除。
是的,先生謝謝你的這些信息 – walidz