Imagemagick升级脚本-OneinStack

    5月3日,图像处理软件ImageMagick就被公布出一个严重的0day漏洞(CVE-2016-3714),攻击者通过此漏洞可执行任意命令,最终窃取重要信息取得服务器控制权。

    详细信息参考:https://www.imagemagick.org/discourse-server/viewtopic.php?f=4&t=29588

    该漏洞在6.9.3-10、7.0.1-1及以上版本得到修复,下面来看看OneinStack或《lnmp一键安装包》(最新下载OneinStack默认已经升级,无此漏洞)之前版本怎么来通过升级修复这个漏洞,如下(2016-05-31更新至6.9.4-5):

    1. cd /root/oneinstack   #进入oneinstack工具目录
    2. #cd /root/lnmp  #如果安装使用的是lnmp
    3. tmux   #进入tmux模式下,防止断网导致升级中断
    4. wget http://mirrors.linuxeye.com/scripts/update_ImageMagick.sh  #下载升级脚本
    5. chmod +x update_ImageMagick.sh   #赋权权限
    6. ./update_ImageMagick.sh   #升级,注:请勿sh或bash update_ImageMagick.sh方式执行脚本

    如下图表示升级成功:

    Imagemagick升级脚本-OneinStack

    脚本内容如下(update_ImageMagick.sh):

    1. #!/bin/bash
    2. # Author:  yeho <lj2007331 AT gmail.com>
    3. # BLOG:  https://linuxeye.com
    4. #
    5. # Notes: OneinStack for CentOS/RadHat 5+ Debian 6+ and Ubuntu 12+
    6. #
    7. # Project home page:
    8. #       http://oneinstack.com
    9. #       https://github.com/lj2007331/oneinstack
    10. export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    11. clear
    12. printf "
    13. #######################################################################
    14. #       OneinStack for CentOS/RadHat 5+ Debian 6+ and Ubuntu 12+      #
    15. #                  upgrade ImageMagick for OneinStack                 #
    16. #       For more information please visit http://oneinstack.com       #
    17. #######################################################################
    18. "
    19. . ./options.conf
    20. . ./include/color.sh
    21. . ./include/download.sh
    22. ImageMagick_version=6.9.4-1
    23. imagick_version=3.4.1
    24. if [ -e "/usr/local/imagemagick/bin/convert" ];then
    25.     OLD_ImageMagick_version=`/usr/local/imagemagick/bin/Magick-config --version | awk '{print $1}'`
    26. else
    27.     echo "${CWARNING}You do not have to install Imagemagick! ${CEND}"
    28.     exit 1
    29. fi
    30. Stop_ImageMagick() {
    31. if [ -e "$php_install_dir/etc/php.d/ext-imagick.ini" ];then
    32.     /bin/mv $php_install_dir/etc/php.d/ext-imagick.ini{,_bk}
    33. elif [ ! -e "$php_install_dir/etc/php.d/ext-imagick.ini" -a -n "`grep imagick.so $php_install_dir/etc/php.ini`" ];then
    34.     sed -i 's@extension.*imagick.so.*@;&@' $php_install_dir/etc/php.ini
    35. fi
    36. [ -e "$apache_install_dir/conf/httpd.conf" ] && service httpd restart || service php-fpm restart
    37. /bin/mv /usr/local/imagemagick{,_`date +"%Y%m%d_%H%M%S"`}
    38. }
    39. Start_ImageMagick() {
    40. if [ -e "$php_install_dir/etc/php.d/ext-imagick.ini_bk" ];then
    41.     /bin/mv $php_install_dir/etc/php.d/ext-imagick.ini{_bk,}
    42. elif [ ! -e "$php_install_dir/etc/php.d/ext-imagick.ini" -a -n "`grep imagick.so $php_install_dir/etc/php.ini`" ];then
    43.     sed -i 's@;extension.*imagick.so.*@extension=imagick.so@' /usr/local/php/etc/php.ini
    44. fi
    45. [ -e "$apache_install_dir/conf/httpd.conf" ] && service httpd restart || service php-fpm restart
    46. }
    47. Check_ImageMagick() {
    48. if [ -n "`/usr/local/imagemagick/bin/convert -version | grep "$ImageMagick_version"`" ];then
    49.     echo "You have ${CMSG}successfully${CEND} upgrade from ${CWARNING}$OLD_ImageMagick_version${CEND} to ${CWARNING}$ImageMagick_version${CEND}"
    50. else
    51.     echo "${CWARNING}Imagemagick upgrade failed! ${CEND}"
    52. fi
    53. }
    54. Install_ImageMagick() {
    55. cd $oneinstack_dir/src
    56. src_url=http://mirrors.linuxeye.com/oneinstack/src/ImageMagick-$ImageMagick_version.tar.gz && Download_src
    57. tar xzf ImageMagick-$ImageMagick_version.tar.gz
    58. cd ImageMagick-$ImageMagick_version
    59. ./configure --prefix=/usr/local/imagemagick --enable-shared --enable-static
    60. make && make install
    61. cd ..
    62. rm -rf ImageMagick-$ImageMagick_version
    63. cd ..
    64. }
    65. Install_php-imagick() {
    66. cd $oneinstack_dir/src
    67. if [ -e "$php_install_dir/bin/phpize" ];then
    68.     if [ "`$php_install_dir/bin/php -r 'echo PHP_VERSION;' | awk -F. '{print $1"."$2}'`" == '5.3' ];then
    69.         src_url=http://mirrors.linuxeye.com/oneinstack/src/imagick-3.3.0.tgz && Download_src
    70.         tar xzf imagick-3.3.0.tgz
    71.         cd imagick-3.3.0
    72.     else
    73.         src_url=http://mirrors.linuxeye.com/oneinstack/src/imagick-$imagick_version.tgz && Download_src
    74.         tar xzf imagick-$imagick_version.tgz
    75.         cd imagick-$imagick_version
    76.     fi
    77.     make clean
    78.     export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
    79.     $php_install_dir/bin/phpize
    80.     ./configure --with-php-config=$php_install_dir/bin/php-config --with-imagick=/usr/local/imagemagick
    81.     make && make install
    82.     cd ..
    83.     rm -rf imagick-$imagick_version
    84. fi
    85. cd ..
    86. }
    87. Stop_ImageMagick
    88. Install_ImageMagick
    89. Install_php-imagick
    90. Start_ImageMagick
    91. Check_ImageMagick

    Tue May 10 21:51:18 CST 2016

    • 本文由 发表于 2016-05-10
    • 转载请务必保留本文链接:https://linuxeye.com/447.html
    Python脚本批量检查SSL证书过期时间 脚本

    Python脚本批量检查SSL证书过期时间

    背景 云平台https的域名服务器如果超过上百条,如果都分布在不同的服务器或者负载均衡上,如果即将过期,做完替换SSL证书动作后,如何批量检查域名的SSL证书是否替换网站,可通过如下脚本实现。 Pyt...
    腾讯云COS上传、批量删除工具(Python) 脚本

    腾讯云COS上传、批量删除工具(Python)

    腾讯云对象存储COS是类似于阿里云OSS,相比OSS,COS提供每月免费额度:存储空间50G、外网访问流量10G(内网免费)、免费读请求100万次、写请求10万次。对网站备份来说不错,但是,腾讯云提供...
    RabbitMQ启动脚本 脚本

    RabbitMQ启动脚本

    记录一个rabbitmq启动脚本,修改部分参数即可用。 vi /etc/init.d/rabbitmq-server #脚本内容,见图下,需修改参数 chmod +x /etc/init.d/rabb...
    匿名

    发表评论

    匿名网友

      • 迎風别葉index 迎風别葉index

        虽然我没有上传点,但是升级走起 →_→

        • 柒月网络 柒月网络

          这个必须支持,才提出建议不久,没多久就把脚本发布出来了;赞

          • yuxuan yuxuan

            你好在使用oneinstack搭建本地lamp环境后安装owncloud这款应用,在最后一步点击完成的时候会自动调到localhost的地址而不是正确的ip地址或域名,最后使用的是另外一个网友的lamp环境包,http://lamp.sh这是他的网址 你可以去看一下,我比较喜欢你做的这个环境包但是这个环境包在安装owncloud的时候总是跳转localhost,测试wordpress的时候是正常的,用那位网友的包安装owncloud一切正常

              • yeho yeho

                @ yuxuan 我怎么看看?

                  • yuxuan yuxuan

                    @ yeho 你好,我已经通过邮件给你回复了,请查收!

                • 小z 小z

                  怎样查看Imagemagick版本或者怎样查看是否安装Imagemagick?

                    • yeho yeho

                      @ 小z /usr/local/imagemagick/bin/Magick-config –version
                      /usr/local/php/etc/php.d/ext-imagick.ini是否有

                        • 小z 小z

                          @ yeho 没有这个文件,那我应该是没有安装的,就不受漏洞影响。感谢回复。

                          • 胡歌网摘 胡歌网摘

                            @ yeho 应该是 /usr/local/imagemagick/bin/Magick-config 两个-version (你的评论会转码。。。)

                            另外 /usr/local/php/etc/php.d/ext-imagick.ini 不是一定有的。

                        • 阿泉 阿泉

                          没安装的飘过~~

                          • 天天 天天

                            Imagemagick 又暴漏洞,此脚本是否还有效。