博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
升级linux bash
阅读量:5327 次
发布时间:2019-06-14

本文共 1527 字,大约阅读时间需要 5 分钟。

bash环境变量存在任意代码执行漏洞:“通过CGI请求方式可以导致远程代码执行,进而导致服务器被入侵,危害严重,且官方公布补丁也被绕过”,

【漏洞影响】:

1)bash受影响版本:3.0 ~ 4.3,小于3.0的bash版本也可能受影响,

2)入侵方式:结合CGI方式可以导致远程代码执行,入侵服务器;

了解系统当前bash的版本

[root@test test]# bash --versionGNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)Copyright (C) 2009 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later 
This is free software; you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.

3)Linux Bash严重漏洞修复紧急通知(2014年9月25日更新)

日前Linux官方内置Bash中新发现一个非常严重安全漏洞,黑客可以利用该Bash漏洞完全控制目标系统并发起攻击,为了避免您Linux服务器受影响,建议您尽快完成漏洞修补,修复方法如下:

漏洞检测方法

可以使用如下命令来检查系统存在此漏洞:

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"

如果在一个含有版本号小于bash 4.3的linux或者unix系统上执行以上命令,可能会得到以下输出:

vulnerable
this is a test
其中如果出现第一行vulnerable则说明该系统存在一个由bash程序缺陷导致的任意命令执行漏洞。

4)漏洞原理及分析

该脚本的出现引起了我技术人员的关注,其中env为一个系统命令,该命令让系统创建一个环境变量x='() { :;}; echo vulnerable'并且带着这个环境变量的值执行bash -c “echo this is a test”。第一行输出的”vulnerable”暴露了漏洞的存在,因为函数定义’() { :;};’之后的’echo vulnerable’指令本不该被执行却被执行。对bash详细分析后得知bash在处理含有函数定义诸如”() { :;};”的环境变量赋值的代码上存在设计缺陷,错误地将函数定义后面的字符串作为命令执行。

所以真正的利用与env命令无关,只要设法让系统接受一个含有”[函数定义]+[任意命令]”的环境变量赋值则可触发”[任意命令]”部分所表示的代码执行。

5)漏洞存在条件

任何已知程序,只要满足以下两个条件就可以被用来通过bash漏洞导致任意命令执行:

1、程序在某一时刻使用bash作为脚本解释器处理环境变量赋值;
2、环境变量赋值字符串的提交取决于用户输入。

 

6)升级bash

bash下载地址:http://ftp.gnu.org/gnu/bash/

安装升级bash

wget http://ftp.gnu.org/gnu/bash/bash-4.3.tar.gztar zxvf bash-4.3.tar.gzcd bash-4.3./configuremakemake install

 

转载于:https://www.cnblogs.com/joshua317/articles/5519324.html

你可能感兴趣的文章
神奇的Scala Macro之旅(二)- 一个实例
查看>>
sicily 1128. DICE
查看>>
e.Row.Attributes.Add
查看>>
SCOPE_IDENTITY()和 SELECT @@IDENTITY 的用法
查看>>
PLoP(Pattern Languages of Programs,程序设计的模式语言)
查看>>
jquery fileupload
查看>>
对PostgreSQL的 SPI_prepare 的理解。
查看>>
android"百码"2——基础小知识积累(逐步完善)2015-06-15
查看>>
解决响应式布局下兼容性的问题
查看>>
京东静态网页练习记录
查看>>
Filebeat Config 参数详解:
查看>>
使用DBCP连接池对连接进行管理
查看>>
【洛谷】【堆+模拟】P2278 操作系统
查看>>
hdu3307 欧拉函数
查看>>
Spring Bean InitializingBean和DisposableBean实例
查看>>
Solr4.8.0源码分析(5)之查询流程分析总述
查看>>
[Windows Server]安装系统显示“缺少计算机所需的介质驱动程序”解决方案
查看>>
nginx日志切割脚本
查看>>
[容斥][dp][快速幂] Jzoj P5862 孤独
查看>>
Reflect反编译C#程序
查看>>