0x00:靶机介绍
这次的靶机是Alfred,一个Windows靶机。总的来说就是Jenkins后台弱密码登录,然后命令执行,MSF提权。房间链接: https://tryhackme.com/room/alfred
0x01:信息收集
还是像往常一样需要先用nmap进行波端口探测,先忽略掉3389,主要开了80和8080端口。
80端口只有一个简单的图片然后就没了。
而8080端口是一个Jenkins平台,然而我双admin就进去了。果然不会太为难我们。
0x02:Jenkins getshell
Try hack me提醒我们Jenkins存在可getshell点,那么去找找,登录进去以后先点点默认存在的project
点开Configure这个设置点看看
这里发现有个执行Windows batch命令的地方,那么大个whoami,真怕我们不知道这里就是漏洞利用点。
此时点击console output这里可以看到whoami的执行结果是一个正常的用户。
那么我们可以考虑再configure那里上传一个反弹文件然后执行,Try hack me建议我们用nishang这位大佬的powershell脚本。这里附上链接https://github.com/samratashok/nishang
具体用到的脚本是/root/gongju/nishang-master/Shells/Invoke-PowerShellTcp.ps1 这个反弹脚本,这里回来configure这里的Execute Windows batch command 这个功能点这里,用powershell把我们kali上的反弹脚本下载过来然后执行。(注:这里需要在kali提前开启python共享模式和开启nc 接收反弹shell)点击Apply.
点完Apply以后回到project这里一定一定要点Build Now否则是执行不了的。
最后nc成功接收。
0x03:制作升级shell
这里我们要借用MSF提权,所以我们需要换个shell,让MSF可以介入,重新用msfvenom生成一个shell(这里解释一下为什么不是windows/x64/shell_reverse 而且还多了一些奇怪的参数,主要是用了波加密,这样有助于让杀毒软件分不清谁是真货谁是假货)
制作完以后我们顺便启动MSF,启用 multi/handler模块同时填入重要参数 开始监听
在nc这边继续用powershell把文件传过来
最后使用Start-Process "shengji1.exe"启动我们的反弹文件,MSF成功接收
0x04:提权
这次的提权虽然用到MSF但还是需要了解一些前置知识。
在Windows系统里面,它会用令牌(tokens)确保电脑上每一个账户具有不一样的特权。当用户成功登录或通过身份验证或通过魔法攻击进入后会分到一块令牌。
这个令牌会包含三个东西,一个是用户的SID(安全标志),一个是组SID,最后一个是特权/权限。
当然令牌也分两种:
1.主要访问令牌:与登陆时生成的用户相关的令牌
2.模拟令牌:允许特定进程使用另外一个进程的令牌去访问资源
这次的重点是模拟令牌,而模拟令牌也有不同的级别:
SecurityAnonymous:当前用户不能冒充另外一个用户
SecurityIdentification:当前用户可以获得客户端的身份和权限但无法冒充
SecurityImpersonation:当前用户可以在本地模拟客户端的相关安全信息
SecurityDelegation:当前用户可以在远程系统上模拟客户端的相关安全信息
账户的权限有很多,其中以下是最常用被用来提权的:
SeImpersonatePrivilege
SeAssignPrimaryPrivilege
SeTcbPrivilege
SeBackupPrivilege
SeRestorePrivilege
SeCreateTokenPrivilege
SeLoadDriverPrivilege
SeTakeOwnershipPrivilege
SeDebugPrivilege
在旧的nc shell上先执行whoami /priv可以看到SeDebugPrivilege, SeImpersonatePrivilege是Enabled状态,有权限配置失误。
回到MSF的meterpreter这里,加载最重要的incognito来窃取我们的令牌,然后可以用list_tokens查看参数(忽略我总是忘了s),主要有-g 和-u
使用list_tokens -g 发现目前我们有机会窃取到管理员的令牌。(-u也可)
最后来个impersonate_token "BUILTINAdministrators" 绝杀 提权成功。
然而此时还有个问题,由于我们是用模拟令牌提权成功的,Windows权限这里还会考虑检查主要访问令牌。所以我们需要线程注入,溜到其它地方才行
原文始发于微信公众号(神隐攻防实验室):Try Hack Me:Alfred(Jenkins命令执行+MSF提权)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论