【内网安全】——Linux提权姿势

作者名:白昼安全
主页面链接: 主页传送门
创作初心: 一切为了她
座右铭: 不要让时代的悲哀成为你的悲哀
专研方向: web安全,后渗透技术
每日emo: 希望你在新的一年也能更好,不惧流言蜚语,始终坚定如初

一、内核漏洞提权

想要利用该漏洞首先要查看内核版本,命令如下

uname -a

可以看到这里的版本是Linux3.10,此时就可以去网上查找该版本是否存在提权漏洞

[1]、在线站点

推荐一个在线查找漏洞的站点,链接如下,

https://www.exploit-db.com/

算是很全的漏洞库了,并且还会提供漏洞利用方式

[2]、searchsploit

这就是kali的一个漏洞搜索工具,非常好用,具体的工具介绍可以看看下面这篇博客,链接如下

http://t.csdn.cn/P9ccv

如下

直接在后面跟上关键字即可

注意:查找出来的漏洞不仅可以去网上找payload,还可以尝试 msf是否带有该模块,这样攻击会更方便

二、历史漏洞提权

1、Linux内核历史漏洞

这个就是上面的内核漏洞提权,由于使用旧版本内核导致的漏洞,所以就不再讲了

2、第三方软件历史漏洞

这个就是一些系统自带的工具出现了漏洞,比如sudo等

注意:这两种都和上面的利用方式差不多

三、suid提权

suid在linux上代表一种特殊的权限——s权限

它允许用户在指定人员的许可下修改文件,如果某个文件是root权限,我身为root权限又给他设置了s权限,那普通用户运行时也会以root权限运行

例如ping命令,它需要root权限才能使用套接字,但它也需要由普通用户执行来验证与其他主机的连通性,所以ping命令就属于配置了特殊权限的程序

一般Linux上的某些程序和指令都会带有s权限方便使用,但是如果某些程序拥有suid权限,则可以使用它们将权限提升为root,下面就给大家列举已知可以允许提权具有suid权限Linux命令(可执行文件)

Nmap
Vim
find
Bash
More
Less
Nano
cp

那如何才能查找到目标是否有这些程序而且这些程序都是suid权限呢?步骤如下

1、在Linux系统的终端输入下面的命令即可查找所有具有suid权限的文件

find / -user root -perm -4000-print2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000-exec ls -ldb {} \;

再看里面有没有上面我们列出来的能提权的文件之一,,有的话就可以尝试提权

2、再利用对应的方式提权

这里给大家推荐一个在线站点,里面有上面8个程序对应的提权方式,链接如下

SUID Executables – Penetration Testing Lab (pentestlab.blog)

例如我们查找出目标的find命令存在s权限,则提权方式如下

可以看到我们以普通用户的权限通过find命令执行whoami命令,得到的却是root的回显,说明已经实现了变相的提权

四、滥用sudo提权

滥用sudo提权,需要看配置,是因为管理员的错误配置和sudo的特性而造成的

首先来了解一下sudo的特性,当sudo被管理员使用过后,默认 五分钟内不需要再输入密码

假设普通用户名为zhao,如果管理员在/etc/sudoers进行以下配置

设置只允许zhao用户以root权限运行less指令

此时若正常的hao用户执行以下命令

sudo less /etc/passwd

会提示需要输入root账户密码,当正常的zhao用户输入密码之后,此时如果我们作为攻击者拿到了zhao用户的权限,在五分钟之内使用sudo就不需要输入密码,即五分钟之内可以使用root权限执行less命令,而less命令又是上面8中可以提权的命令之一,自然就能达到提权的效果了

五、计划任务提权

这个跟windows差不多,主要就是看计划任务中执行文件的权限,权限低的话就可以尝试上传恶意文件来顶替计划任务中的可执行文件

六、服务项提权

道理一样,服务对应的程序权限较低时,可以使用恶意文件顶替该程序,当目标启动服务时就会启动我们的恶意文件

七、历史命令

输入下面的命令即可查看历史命令记录

history

有时候历史命令中会有一些敏感信息,如密码等,可以让我们进行提权操作

猜你喜欢

转载自blog.csdn.net/qq_63844103/article/details/128913977