有沒有辦法在PHP中執行帶有參數但沒有「shell」的命令。在沒有shell的情況下使用參數執行命令php
問題是exec()
和shell_exec()
在shell中運行提供的字符串,因此任何用戶輸入的數據都必須轉義。
有沒有辦法做到這一點,如:
some_exec(["command","argument","argument])
作爲一個會做它例如Python或Java的。
我會非常能夠用參數執行命令而不必轉義一些參數。
我正在爲一個路由器的UI工作,並通過一個命令 設置Wifi密鑰,現在我必須轉義字符串限制密鑰可以包含的字符數。如果我在哪裏不逃避關鍵的人可以做任何注射沒有任何問題。
澄清 之所以這樣,其實是在這種情況下,一個惱人的問題是,我需要執行下面的命令:
[email protected][0].key='<the password>'
的問題是,由於密碼被在設置一個字符串這個密碼,$il|\|t
將變成\$ile\|\\\|t
現在的問題是不正確的密碼是有效的。因此,存儲的密碼與用戶輸入的密碼不同。
即使我們進入一個字符串密碼,我們可以還是做這樣' ; reboot ; '
只需檢查下面的鏈接[鏈接] http://php.net/manual/en/function.exec.php [/ link] – sam