信息收集
开启了
22端口,ssh服务
80,http服务
111,RPC服务
先观察80端口
发现采用的是Drupal的cms
目录爆破:
但是,没有找到可以直接利用的点
登录的页面进行SQL注入即不报错,也不执行SQL语句
无法爆破出用户,尝试以账号名admin盲爆密码
发现后面长度都变为8497了
打开一看,发现原来有限制登录次数,看来暴力破解是无效了
创建用户界面需要填入邮箱,但是填入后并不会发送邮件过来,可能只是个摆设
只能在msf搜索关于这个cms的漏洞
直接用次新的
成功返回meterpreter
直接进入shell
用python创建bash
flag1.txt
Every good CMS needs a config file - and so do you.
上网搜索一下drupal的配置文件
seettings.php
在sites/default/files下
最后确认再sites/default下
疑似mysql的账号密码
flag2也藏在配置文件中
* Brute force and dictionary attacks aren't the
* only ways to gain access (and you WILL need access).
* What can you do with these credentials?
告诉我吗除了暴力破解外的方法获得权限,感觉就是提权的意思
链接mysql
找到cms的数据库users表内的内容
密码时加密的,不知道采用了什么算法
drupal7 密码重置
不仅说明了密码怎么加密,还点出了因为操作次数过多而封锁该如何解除
尝试将admin的用户密码改为admin
在登录后台后在文章里面发现flag3
Special PERMS will help FIND the passwd - but you'll need to -exec that command to work out how to get what's in the shadow.
提示中写到了find passwd,所以尝试查看password文件
flag4
Can you use this same method to find or access the flag in root?
Probably. But perhaps it's not that easy. Or maybe it is?
明示提权
提权
使用suid提权
find / -user root -perm -4000 -print 2>/dev/null
使用find提权
发现当前文件夹中没有touch的权限,有两种方法
一是找到一个存在的文件来find提权
二是找到一个可以执行touch的文件夹,touch后再find提权
其中,网站目录下是有touch的权限的
用find来开一个shell
最终flag