使用PHP安全地使用exec来运行ffmpeg

Ven*_* D. 3 php security ffmpeg

我想从PHP运行ffmpeg用于视频编码.

我在考虑使用exec或passthru命令.但是,我被警告说启用这些功能存在安全风险.用我的支持人员的话来说:

指令'disable_functions'用于禁用任何允许执行系统命令的函数.这是为了提高服务器的安全性.如果使用不当,这些PHP函数可用于破解服务器.

我猜测如果启用exec,那么有人可能(可能)执行任意unix命令.有谁知道从PHP运行ffmpeg的安全方法?

顺便说一句,我在一个专用的服务器上.提前谢谢!

Jos*_*iah 7

exec 与登录安全终端相比,本身不会带来安全风险.

可以这样想,如果你要列出这样的目录的内容

exec( 'ls /foo/bar' );

你的用户发送到你的PHP脚本无关紧要,它只会列出指定的目录.

只要您小心清理用户的任何输入,并且不要输出敏感信息,您应该没问题.

在命令行上运行之前,请使用以下方法对输入进行sanatize: