Shellshock是之前网络安全学习中,一直遗漏掉的一个安全漏洞。今天来补充学习一下。

Shellshock利用了linux环境变量解析问题,进而可以进行针对正常应用启动shell时进行劫持。通过该漏洞,可以实现CGI等环境下的RCE,以及针对特权应用的提权。

可以简单理解为,当环境变量可控时,均存在攻击场景。如此看来,该漏洞危害极大,攻击场景非常广。

简述

该漏洞于2014年被披露,影响范围bash 1.14至bash 4.3的Linux/Unix系统 。目前XXX版本之后的系统,均以完成漏洞修复

漏洞分析

在这里,我们以CVE-2014-6271举例来看。漏洞环境可使用 /vulhub/bash/CVE-2014-6271

在Bash中,由于自动导入函数功能的存在,其可以将环境变量解析为函数。
在这里,对解析内容校验不严格,导致该漏洞产生。

环境变量正常解析时,abc表示函数,其内容为echo "hacker"

abc='() { echo "nomal";}'

当此时闭合函数后,在其末尾追加命令时,则实现了命令注入。

abc='() { echo "nomal";}; echo "hacker"; '

最终导致结果为:abc作为环境变量可被其他shell访问时,在启动新shell后,会执行echo "hacker"

最终检测脚本payload如下(() { :; };表示空函数):

env X='() { :; }; echo "CVE-2014-6271 vulnerable" '

参考资料

  • 【知乎】-什么是ShellShock攻击?
  • 【Wooyun Drops】 - Shellshock漏洞回顾与分析测试
  • 【GitHub】- shellshocker-pocs

【安全】Shellshock漏洞相关推荐

  1. Shellshock漏洞复现

    Shellshock漏洞复现 bash说明 漏洞原理 漏洞复现 环境说明 漏洞条件 漏洞复现 bash说明 Bash是Unix shell的一种.1989年发布第一个正式版本,原先是计划用在GNU操作 ...

  2. 详解ShellShock 漏洞复现原理,内附ShellShock的修复方法

    本篇文章适合初学ShellShock漏洞阅读,如果您已经学习过ShellShock漏洞,可以直接略过.本篇是我们悬镜安全实验室成员之一Kr0iNg's 在学习ShellShock时分享的一点心得,仅供 ...

  3. LINUX漏洞复现篇之ShellShock漏洞

    简介 ShellShock漏洞, 中文称为"破壳漏洞", 是Unix Shell中的安全漏洞 在一些网络服务器的部署中, 使用bash来处理某些请求, 允许攻击者通过低版本的bas ...

  4. Shellshock漏洞那些事:网络安全噩梦的开始

    鉴于Linux/UNIX系统近日再次曝出危险等级超"心脏出血"的Bash漏洞--"Shellshock",<连线>杂志周一特别刊文,介绍了该漏洞的过 ...

  5. linux shellshock漏洞,shellshock漏洞分析

    这是tr0ll2靶机涉及到的东西,先看一下在这个靶机上的过程. 我们获取了noob用户的ssh密钥,之后登录却失败了: 之后我们输入如下命令:ssh noob@192.168.16.141 -i no ...

  6. “破壳”(Shellshock)漏洞修复

    "破壳"(Shellshock)漏洞修复 背景: 距离"破壳"(Shellshock)漏洞漏洞爆发一句过去两周有余了(2014年9月24日公布).相信很多人都已 ...

  7. Shellshock漏洞回顾与分析测试

    Debug_Orz · 2014/10/21 14:14 0x00 漏洞概述 很多人或许对2014上半年发生的安全问题"心脏流血"(Heartbleed Bug)事件记忆颇深,20 ...

  8. Shellshock漏洞回顾与分析测试 http://drops.wooyun.org/papers/3268

    Shellshock漏洞回顾与分析测试 Debug_Orz · 2014/10/21 14:14 ·来自乌云知识库 0x00 漏洞概述 很多人或许对2014上半年发生的安全问题"心脏流血&q ...

  9. linux shellshock漏洞,shellshock漏洞原理分析(cve-2014-6271 bash漏洞)

    shellshock漏洞原理分析(cve-2014-6271 bash漏洞) 2014-09-26 10:04:16 阅读:0次 概述: 低于4.3版本的gnu bash存在漏洞,运行本地用户通过构造 ...

最新文章

  1. [深入浅出Cocoa]之消息(二)-详解动态方法决议(Dynamic Method Resolution)
  2. mysql批量更新后返回id_如何批量插入Mysql并取得各自的递增ID
  3. java三态_Java中对象的三种状态
  4. centos 7.2 安装php56-xml
  5. python可视化(十种常用图)
  6. 企业级代码静态测试工具Helix QAC——关键特性
  7. 关联规则 置信度与支持度以及Apriori算法简介
  8. C盘清理及可清理文件详解(Windows 7)-简单易操作_让你的C盘彻底解放
  9. 区块链溯源项目的一点体会
  10. ambari-server HA
  11. str.count 统计
  12. FULLTEXT 搜索
  13. 关于3D打印材料及发展方向分析
  14. Win10插入耳机无反应
  15. 前端人员如何在页面中导入外部字体
  16. java 匿名类调用方法_Java匿名内部类使用与示例
  17. 常用估值方法的编程实现(1):自由现金流折现
  18. 2012php100视频教程ppt,PHP100 视频教程 2012-2013版
  19. 空前火爆的小米3来袭,怎么安装驱动?小米3驱动安装新教程
  20. 【SQL】基本SQL数据表(学生、老师、课程、成绩)

热门文章

  1. Word表格快速、完美转换成Excel
  2. word中,去表格格式,把表格转换为文本的方法
  3. 用直观抓住NFT是什么
  4. 让你在macOS上快速查看txt文本文件
  5. 树莓派无线中继的实现
  6. ARM Mbed在线IDE编程意法半导体(ST)开发板
  7. IDEA自动补全tab键向下选择s-tab向上选择
  8. XMind (2021)新增演说模式
  9. 51nod 3199 操作栈
  10. uni-app支付宝小程序map地图组件基础操作+画多边形+打点连线