我有一个Web服务,可以接收来自经过身份验证的计算机发送的XML输入(这是用于我正在将其集成到其他软件中的网络管理系统),并使用一些XML数据作为参数执行shell脚本。
在Java(/Linux)中,如何最好地转义Shell命令以确保没有人可以向我的Web服务传递恶意参数?
基本上,在一个极其简化的示例中,我通过WS获取了一些输入。
<foo>
<bar>ABCDEF</bar>
</foo>
then running somescript.pl <<data in <bar> field>> here
我需要确保这不能被用于执行任意的shell命令等。
谢谢!