首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带常量参数的php exec(),安全吗?

带常量参数的php exec(),安全吗?
EN

Stack Overflow用户
提问于 2012-10-11 16:55:01
回答 2查看 196关注 0票数 0

我们想在服务器端生成mobi文件。为此,我们需要使用亚马逊的kindlegen(从epub生成mobi )。我读到启用exec并不是完全安全的,但我的问题是如果我使用像这样的东西

代码语言:javascript
复制
exec('kindlegen ' . $epubInput . ' -c0 -o ' . $mobiOutput );

有没有可能出差错?两个变量($epubInput$mobiOutput)不是来自用户输入,它们是由脚本生成的。另一个问题(我猜这是不可能的),但是有没有一个可能的设置,允许exec只执行一个特定的文件,在我的例子中是kindlegen?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-11 16:58:33

这取决于生成这些值的代码是否会被诱使生成恶意值。在这种情况下,它看起来真的不像它,但您应该确定。

在调用exec之前,您还应该在两个参数上使用escapeshellarg;当值在您的控制之下时,这并不是绝对必要的,但是没有理由反对这样做。

票数 1
EN

Stack Overflow用户

发布于 2012-10-11 17:00:08

您应该使用escapeshellarg()对所有参数进行转义。这样你就不必担心其他脚本的结果了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12835788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档