V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sandtears
V2EX  ›  程序员

Bash 那漏洞的等级怎么这么高... 居然比心血还要高。。

  •  1
     
  •   sandtears · 2014-09-27 17:16:49 +08:00 · 4975 次点击
    这是一个创建于 3709 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前几天 bash 的执行漏洞闹得沸沸扬扬,说实话我没怎么关心。因为我的机器基本都是只有自己一个用户,也没有什么网络应用用到 bash

    但是今天闲逛的时候看到有人说:

    > 破壳漏洞(ShellShock)的严重性被定义为 10 级(最高),今年 4 月爆发的 OpenSSL「心脏出血」漏洞才 5 级!

    这让我很是好奇,这个严重性的定义究竟是什么出于什么考虑?

    按照我的理解,这个 bash 漏洞被利用的前提是用 bash 处理用户输入,难道有很多应用程序使用 bash 来处理用户输入吗?我感觉基本只有 shellscript 或者 system() 这种函数才会用到,而这些情况远不如 https 常见。

    是我理解有误吗?恳请对此比较了解的 V 友为我解惑。
    25 条回复    2014-09-28 16:15:32 +08:00
    dreasky
        1
    dreasky  
       2014-09-27 17:22:06 +08:00
    cgi
    sandtears
        2
    sandtears  
    OP
       2014-09-27 17:23:53 +08:00
    @dreasky 可以详细介绍下吗,可能是我孤陋寡闻,没怎么见过用 bash 编写的 CGI
    dreasky
        3
    dreasky  
       2014-09-27 17:25:20 +08:00   ❤️ 2
    sandtears
        4
    sandtears  
    OP
       2014-09-27 17:31:03 +08:00
    @dreasky 原来如此,看了一下用 bash 的 cgi 比想象的更多,500 个里面有 6-8 个
    sophymax
        5
    sophymax  
       2014-09-27 17:33:17 +08:00   ❤️ 1
    对常规搭小网站的VPS使用者其实没太大影响,就是用最大众的技术(PHP之类)搭个网站嘛,但是对搭了乱七八糟的服务的人就会有较大影响,比如ARM-LINUX工控板,那些人就特别喜欢用cgi处理网站逻辑,就是说用的人少,出现的概率小,但是一旦出现,就直接拿到最高的权限,也不像心血那样需要一定的技术功底,对那一小部分用cgi的用户来说,这个危害是非常大的,好像DHCP也容易中招,Git/SVN也有可能,如果真是的话那危害就更大了,我们觉得那种情况不常见,但其他职业(搞网络配置的linux网管、运维、嵌入式系统工作者等)的人这种情况就可能经常出现
    msg7086
        6
    msg7086  
       2014-09-27 18:23:55 +08:00   ❤️ 1
    bleed的问题是数据泄露,而且是有概率泄露。
    shellshock是任意执行漏洞,只要你cgi开着,bash没禁用,任何人都能直接拿到你的shell。然后爆数据库账号啊爆用户数据啊脱裤啊什么都能做了。
    msg7086
        7
    msg7086  
       2014-09-27 18:30:42 +08:00   ❤️ 2
    @sandtears 顺便一提,这漏洞并不需要用bash编写CGI,只需要用bash调用CGI就会中。

    很多环境里调用CGI程序都是先fork出一个sh,然后读取CGI,再根据hashbang调用perl之类的。

    如果这个sh是bash,那就中招了。
    LazyZhu
        8
    LazyZhu  
       2014-09-27 19:01:50 +08:00
    dpkg-reconfigure dash
    sandtears
        9
    sandtears  
    OP
       2014-09-27 20:47:38 +08:00
    @sophymax
    @msg7086
    多谢指点,现在有些理解了
    t6attack
        10
    t6attack  
       2014-09-27 21:15:53 +08:00
    interdev
        11
    interdev  
       2014-09-27 21:28:48 +08:00
    理论上通过dhcp 114功能可以进入大多数带bash 的 vpn服务器,做vpn服务的一定要及时升级bash了...
    mengzhuo
        12
    mengzhuo  
       2014-09-28 09:32:08 +08:00
    陈浩果然写了

    http://coolshell.cn/articles/11973.html

    那些说我搞笑的,弱智的,
    https://www.v2ex.com/t/135557#reply34

    Too simple too naive 列表
    @nicai000
    @mind3x
    @dorentus
    @9hills
    @iwinux
    nicai000
        13
    nicai000  
       2014-09-28 09:48:46 +08:00
    @mengzhuo 你不光是不懂还盲目相信权威啊, 之前就是"不是我说的", 这次也是"看陈皓说了". 当然会有exec()会有system(), 问题的关键是利用这个漏洞, 怎么去改env, 请说一下没CGI的时候怎么改env的, 程序调用exec的时候危险env哪来的? 程序自己给自己下绊子设置危险的利用漏洞的env?

    我没说你搞笑和弱智, 我就只是说你不懂, 而且你确实不懂....
    VYSE
        14
    VYSE  
       2014-09-28 09:59:11 +08:00
    很多默认系统sh就是bash,所以shell模式command且env可控场景下危害就大了,现在dhcp漏洞可以直接拿下同一网段下有漏洞主机
    mind3x
        15
    mind3x  
       2014-09-28 10:35:20 +08:00
    @mengzhuo 你真的看得懂别人的文章在说什么吗?这不是在自证搞笑是什么?有这个咋呼的精力,去踏踏实实学点真东西行不?
    9hills
        16
    9hills  
       2014-09-28 10:54:51 +08:00
    @mengzhuo 你真的看得懂coolshell说什么?不懂还盲目相信,而且还相信错了。。

    我把我的原话再贴给你看
    "lz不要耸人听闻,哪里root提权了"

    你给我找个root提权的字样出来。。
    mengzhuo
        17
    mengzhuo  
       2014-09-28 10:56:36 +08:00
    9hills
        18
    9hills  
       2014-09-28 11:10:58 +08:00   ❤️ 1
    @mengzhuo 我再说一次,那个不叫root提权。。。
    mind3x
        19
    mind3x  
       2014-09-28 12:13:00 +08:00 via Android   ❤️ 1
    @mengzhuo 想说什么?你copy了 https://github.com/david415/dhcptakeover/blob/master/dhcptakeover.py (还不是fork的),满打满算加了两行代码(哦还有你自己的copyright),然后呢?证明你懂了?
    ryd994
        20
    ryd994  
       2014-09-28 12:19:45 +08:00   ❤️ 1
    @mengzhuo 大家的槽点都在你说能root的点上。正规的服务器都是每个服务一个用户的。要什么权限再单独给。
    mengzhuo
        21
    mengzhuo  
       2014-09-28 13:23:20 +08:00
    @ryd994

    集群里的Linux有DHCP, DHCP是Root权限跑的


    @mind3x
    这叫Copy吗?我真想Copy还留他的信息?
    再说了,直接UDP单播lease包整个网段也可以,用takeover是不想让整个网络陷入request-lease混乱

    @9hills
    我的意思是:这个漏洞可以造成root权限跑的服务遭到攻击
    nicai000
        22
    nicai000  
       2014-09-28 13:47:19 +08:00
    单独root权限服务和这个bug, 什么事儿也没有. 得有别的漏洞配合. "这个漏洞可以造成root权限跑的服务遭到攻击"这句话不对, 因为不满足充分条件.

    本来三个条件的, 被说成两个条件就能触发, 难度不是夸大和不懂么? (尤其这个漏洞还不是最关键一环)

    你本来就是没搞清楚, **原帖把攻击方法说得比实际情况简单得多**(不光dhcp, 打印机和samba和所有root服务都坏事儿了, 而且不需要别的, 有这一个漏洞就可以. 而事实是只有这个次要漏洞什么也搞不了), **反驳的时候也只能引用别人的文章和代码**, 自己一点分析也没有.

    我就不点名了, 讨论问题当然不应该人身攻击(别人说你弱智我可没说, 是你引用386讥讽一堆人的), 但是什么时候连讨论"对错"都需要变得需要这么跳脚了?
    mengzhuo
        23
    mengzhuo  
       2014-09-28 15:27:01 +08:00 via iPhone
    @nicai000
    我认为目前有两个条件就可以达成:

    1. 有bug的bash
    2. 有root权限的服务

    我都不需要登入目标机就可以触发漏洞,下载木马,这难道还不够吗?

    炮开大了,如有冒犯,还请见谅
    dorentus
        24
    dorentus  
       2014-09-28 15:36:31 +08:00
    话说 Debian 系的 /bin/sh 是默认链接到 dash 的,多么有远见... ╱/( ◕‿‿◕ )\╲
    nicai000
        25
    nicai000  
       2014-09-28 16:15:32 +08:00
    @mengzhuo 不够啊, DHCP是因为114(https://www.trustedsec.com/september-2014/shellshock-dhcp-rce-proof-concept/), 算是个漏洞吧. 别的root权限服务基本是没有这种东西的.

    总之, 不是说"有漏洞的bash"和"root权限服务"就可以的, 要靠别的东西, 这两条不够. 你的理解确实夸大了影响, "root权限服务"这件事情你当时觉得很恐怖, 但是没那么夸张.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2111 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:23 · PVG 08:23 · LAX 16:23 · JFK 19:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.