運行具有root權限的腳本,我必須從PHP Web服務如何從Web服務在Apache
$telephoneNumber = $_REQUEST["telephoneNumber"];
$textMessage = $_REQUEST["textMessage"];
$command = "sudo python /home/frank/Desktop/Main.py singular $telephoneNumber \"$textMessage\"";
system($command, $output);
$outVO->setOutcome(1);
$outVO->setDescription($output);
return $outVO;
運行具有root權限的Python腳本,但Web服務的專利是WWW的數據,所以不工作
請注意,這是可怕的危險代碼。想象一下,如果有人提交了一個數字或消息,像'\「; sudo rm -rf /;' – 2014-12-04 17:36:20
在我看來,它並不危險,因爲數字和文本是簡單的字符串,將傳遞給一個GSM模塊,處理髮送短信 – NexusDigital 2014-12-04 17:43:30
你錯了,如果用戶包含';'(或者使用其他各種技巧),下面的文本將不會作爲參數傳遞給你的Python腳本,而是作爲單獨的命令被shell評估。 'sudo'到特定的命令,惡意用戶仍然可以做不受歡迎的事情。閱讀[documentation](http://php.net/manual/en/function.system.php)中的警告。 – 2014-12-04 17:46:56