本地提权
目前系统都是多用户操作系统,可以登录多个账户,实现权限的隔离,针对不同的应用,对应不同的账户,不同的账户在对应不同的权限;
本地提权一般用于已经获取到了本地低权限的账号,希望获取更高的权限,实现对目标的进一步控制;
简单地说,本地提权漏洞就是说一个本来非常低权限、受限制的用户,可以提升到系统至高无上的权限,权限控制是WINDOWS、Linux等系统安全的基石,也是一切安全软件的基石,一旦这道门槛被突破,任何防御措施都是无效的。
Windows系统用户权限划分
用户权限等级(高→低):
system→adminnistrtor→user
system:中文意思是系统,在Windows中拥有比管理员更大的权限,在Windows中主要作为系统服务或进程的运行账户,保证系统服务的正常运行;
administrator:中文意思就是“系统管理员”。即所谓的“超级用户”。每台电脑装上系统后,在你自己新建的账户外,会自动新建一个叫administrator 的管理计算机(域)的内置账户,它平时是隐藏的,它是计算机管理员的意思,是拥有计算机管理的最高权限;
user:隶属于users组,这个组的用户无法进行有意或无意的改动,因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序,users组是最安全的组,因为分配给改组的默认权限不允许成员修改操作系统的设置或用户资料;users可以创建本地组,但只能修改自己创建的本地组。users可以关闭工作站,但不能关闭服务器。
Linux系统用户权限划分
用户权限等级(高→低):
root→user
user:普通用户;
root:管理员用户,具有系统中所有的权限;
windows(提到system权限)
1.使用工具(PsExec.exe/PsExec64.exe)
PsExec.exe -i -s cmd -s system -i 交互式 打开一个交互式的system权限的cmd
在Windows所有版本中都可以使用,但是必须是在管理员权限下运行这条命令
2.使用at命令
at 8:56 /interactive cmd 在8:56打开一个交互式的cmd(system权限)
在xp、server03上使用需要在管理员下,在windwos server 2008、Windows7等以上版本已经取消了at命令
3.sc命令
sc Create syscmd binPath= "cmd /k start" type= own type= interact 格式严格
sc start syscmd
Windows server系统都无法执行这个命令,在Windows7之下需要管理员权限,之上不能执行
Linux
(前提:已经成功登录一个普通账户)
Dirtycow(脏牛)提权
下载地址:https://github.com/FireFart/dirtycow
并将dirty.c文件进行编译,生成可执行文件exp
gcc -pthread dirth.c -o dirty -lcrypt -lcrypt 本地加密 -o 输出名称
运行exp文件,并设置密码
查看passwd文件
进入管理员权限
来源:https://blog.csdn.net/Wu000999/article/details/99674502