因昨晚收到阿里云邮件,指出FFmpeg 2.x被爆高危漏洞(CVE-2016-1897、CVE-2016-1898),黑客可通过上传构造的hls切片索引文件,远程窃取服务器端本地文件。FFmpeg 多个版本的用户存在被攻击的风险! 。
公司的视频转换服务器刚好是这个漏洞范围内的,版本2.6,服务器版本CentOS6.5.记录下升级的过程。1、在ffmpeg.org官网下载最新的版本,目前是3.0.2;2、上传到服务器,这个就不说了;3、用tar解压;tar jxvf ffmpeg-3.0.2.tar.bz2
4、开始重新编译,注意要把原来的x264等插件链接进去
cd ffmpeg-3.0.2 ./configure --enable-shared --prefix=/usr/local/ffmpeg --enable-shared --enable-yasm --enable-libx264 --enable-nonfree --enable-libfaac --enable-gpl --enable-pthreads --extra-cflags=-I/usr/local/x264/include --extra-ldflags=-L/usr/local/x264/lib --extra-cflags=-I/usr/local/libpng/include --extra-ldflags=-L/usr/local/libpng/libmakemake install
5、修改配置文件
vi /etc/ld.so.conf
6、加入:/usr/local/ffmpeg/lib
7、执行ldconfig8、为 Ffmpeg 加入环境变量vi /etc/profile
9、加入以下内容:
FFMPEG=/usr/local/ffmpegPATH加入:$FFMPEG/bin
10、让环境变量生效
source /etc/profile
11、查看运行版本
ffmpeg -versionffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developersbuilt with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-16)configuration: --enable-shared --prefix=/usr/local/ffmpeglibavutil 55. 17.103 / 55. 17.103libavcodec 57. 24.102 / 57. 24.102libavformat 57. 25.100 / 57. 25.100libavdevice 57. 0.101 / 57. 0.101libavfilter 6. 31.100 / 6. 31.100libswscale 4. 0.100 / 4. 0.100libswresample 2. 0.101 / 2. 0.101
12、验证转码是否成功
ffmpeg -i /usr/home/jack/test.mov -r 25 -b 3200k -vcodec mpeg4 -ab 128k -ac 2 -ar 44100 /usr/local/jack/test.mp4
注意:如果遇到ffmpeg: error while loading shared libraries: libpostproc.so.54: cannot open shared object file: No such file or directory错误,估计是没进行ldconfig。