linux提权思路总结
前言
说到提权,首先需要获得网站的webshell权限,再说提权的操作。
webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。
黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器来访问asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的。webshell就是网站管理员,只有站长才可以提升你的权限。 除非你用不正当手法入侵网站所在服务器,才可以提升自己权限。
webshell的权限是根据不同的web程序而定的,还有就是网站管理员的设置是否严格。
比如你的网站是ASP的,默认的webshell权限是“受限制用户”,好比xp系统的“user”权限用户,在这种情况下,如果网站管理员再设置诸如asp执行,访问权限,这样下来,你的webshell的权限就很低了。
但jsp程序就不同了,默认的是“system”权限,厉害吧,得到webshell就等于你拿下了服务器。
linux发行版本
是我们常说的Linux操作系统,也即是由Linux内核与各种常用软件的集合产品,全球大约有数百款的Linux系统版本,每个系统版本都有自己的特性和目标人群, 例如:
- CentOS
- redhat
- ubuntu
- kali
linux内核
Linux系统内核指的是一个由Linus Torvalds负责维护,提供硬件抽象层、硬盘及文件系统控制及多任务功能的系统核心程序。
linux内核版本的分类
Linux内核版本有两种:稳定版和开发版 ,Linux内核版本号由3组数字组成:第一个组数字.第二组数字.第三组数字
第一个组数字:目前发布的内核主版本。
第二个组数字:偶数表示稳定版本;奇数表示开发中版本。
第三个组数字:错误修补的次数。
内核漏洞提权
查看发行版本
cat /etc/issue
cat /etc/*-release
查看内核版本
uname -a
root@kali:~# uname -a
Linux kali 5.5.0-kali2-amd64 #1 SMP Debian 5.5.17-1kali1 (2020-04-21) x86_64 GNU/Linux
知道目标的内核版本就可以使用kali自带的searchsploit来搜索exploitdb中的漏洞利用代码
脏牛提权(CVE-2016-5195)
Linux官方爆出了“脏牛”漏洞(代号:Dirty COW,编号:CVE-2016-5195),攻击者可利用该漏洞本地以低权限提升到root权限。该漏洞又称为 Dirty COW。Dirty COW 是一个特权升级漏洞,可以在每个Linux发行版中找到。这个漏洞的特别之处在于,防病毒和安全软件无法检测,一旦被利用,用户根本无从知晓。
Dirty COW漏洞利用Linux内核的内存子系统处理和只读存储器映射写入时的竞争条件,黑客可以使用这个缺陷来获得对其它只读存储器映射的写入访问,从而增加它们在系统上的特权。
**【影响版本】:**该漏洞在全版本Linux系统(Linux kernel >= 2.6.22)均可以实现提权,受影响的镜像版本为:
CentOS 5.x 32位/64位
CentOS 6.x 32位/64位
CentOS 7.x 32位/64位
CoreOS 717.3.0 64位
Debian 6.x 32位(Debian官方已停止更新,建议使用Debian7、Debian8版本)
Debian 7.x 32位/64位
Debian 8.x 32位/64位
openSUSE 12.3 32位/64位
openSUSE 13.2 64位
SUSE Linux Enterprise Server 11 SP3 64位
SUSE Linux Enterprise Server 12 64位
Ubuntu Server 10.04.1 LTS 32位/64位(Ubuntu官方已停止更新,建议使用Ubuntu 14.04版本)
Ubuntu Server 12.04.1 LTS 32位/64位
Ubuntu Server 14.04.1 LTS 32位/64位
复现
使用gcc -pthread dirty.c -o dirty -lcrypt
命令对dirty.c(附件中)进行编译,生成一个dirty的可执行文件。
执行./dirty 密码
命令,即可进行提权。
此时使用上图中的账号密码即可获取root权限。