0x01 靶机介绍
靶机难度:middle
靶机介绍:https://www.vulnhub.com/entry/cybero-1,305/
个人做下来觉得这个靶机算是中等难度多个关卡的CTF靶机,期间好多都是参考了别人的wp==
0x02 信息收集
第一步不多说了,还是nmap扫一扫,得到靶机的本地ip为192.168.189.131
然后扫扫端口
1 | 21/tcp filtered ftp |
FTP端口无法连接
ssh端口先不着急,先看两个web页面
0x03 获取shell
level1
访问80端口,只有一张蒙娜丽莎的微笑
当时在这还给图片下下来,放010里边分析,还binwalk,实际上并没有这么的misc
这里直接扫目录就行,利用dirb
工具
1 | dirb http://192.168.189.131/ |
访问扫出的目录,得到一个users.sql
将其下载下来本地查看,得到有效信息
将这串二进制编码解码,再HEX解码得到一个网址
访问后在主页可以看到flag
level2
然后再是8085端口的web
我在这里磨了好久也不知道他是什么意思,后来看了wp才知道是命令执行==
传入ping -c 3 google.com;whoami
通关
level3
跟着follow me走,是一个文件上传界面
这里传一个图片马先
成功上传,但是抓包将jpg改为php后就无法上传了,直接fuzz一下后缀

(ps:这里的上传路径很好猜,就是uploads/
下,但是你传成功的phtml会被删掉,所以无法直接连接马
level4
访问phtml的response包里的地址
提示将ua换成007,所以抓包改ua再放包
level5
继续跟进follow me
发现提供了一个参数,尝试目录穿越到/etc/passwd(ua要一直是007)
发现成功包含文件
再结合之前上传的图片马,直接文件包含图片马来执行命令
level6
这里利用msf的web_delivery模块来获取shell
1 | msf6 > search web_d |
执行后会得到一串payload
将此命令在目标靶机上执行,就能获得弹回的shell
0x04 权限提升
东找西找在/var/ftp
下发现flag文件,同时给了个密码
利用此密码登录靶机的ssh
root账户登录失败,尝试hemid账户,成功
家目录下自带一个exp(需要自己编译一下),但是打不通==(这里就不演示了
在/tmp
下发现可疑文件
内容是删除某个日志,猜测是个定时任务,往里写入命令
1 | import os |
等待一分钟后可以在/tmp下看到bash文件
直接./bash -p
获取root shell
0x05 补充
利用root查看/var/spool/cron
下的定时任务
发现确实和我们预想的一样,并且是以root用户执行
(五个星号表示为一分钟)
文件包含漏洞简单说就是,在这个include.php中需要引用其他应用程序,php中应用程序文件是.php也就是说,他本来想引用一个php文件,但是漏洞就是,他不会识别什么是php文件,只要是他引用的,他都当php来解析,所以如果他引用的是jpg,但是jpg中有图片马,那么他就相当于引用了图片马,同样的道理还会有zip马等等