我正在为我们公司使用的一个可怕的软件编写一个 Web 界面。该软件没有真正的用户界面,并且要求我们授予 putty 访问我们系统的权限,以便我们的客户甚至提取数据。我的 Web 界面必须运行一个exec();
函数,并且它必须传递一些用户输入的变量。
$command = "report-call '$type' '$study' '$server' '$tag' '$specopt1' '$specopt2' '$specopt3' '$specopt4'";
$last_line = exec($command, $output, $returnvalue);
现在我假设我可以从$command
变量中删除任何分号并且是安全的,但我不确定,这就是为什么我在下个月上线之前在这里摆这个姿势。
最好的消毒方法是$command
什么?我确实需要在变量中包含一些特殊字符 [ ] < > ! # $
。