在一次区域赛(寥寥无几的校外队伍参赛)时,称为了让替补队员也有事情做,特地出了一道离线题目,在比赛时由于队伍只有三个人(该比赛正常队伍成员组成为3+1),因此没有太多时间做离线题目,后面发现蛮简单的,也在网上找到了对应的题解。
但是还是要自己做一遍才能吸收相应的知识点,并将其记录下来以便自己和师弟师妹后面复习。
靶机文件:https://pan.baidu.com/s/1ntCV6_4X7tRXsDJopabXjA?pwd=o1r5
Flag 1
扫描网段,发现存活主机
访问80端口
检查网页源代码,未发现可疑信息
使用dirb工具对网站目录进行扫描
发现如上目录,发现可疑目录**/flag**,访问,发现
The 1st flag is : {8734509128730458630012095}
Flag 2
对其他目录进行查看
其中发现**/admin_area**目录存在异常
对源代码进行检查
发现关键信息
username:admin
password:3v1l_H@ck3r
The 2nd flag is : {7412574125871236547895214}
Flag 3
使用用户名和密码登陆网站
发现是一个上传页面,上传一句话木马
上传成功
使用蚁剑进行连接
在进行设置时,对文件上传到的目录产生疑惑,但是在dirb中并未发现可能出现的上传目录,因此查看robots.txt,希望获得线索
发现可疑目录,对url进行拼接,设置参数
测试连接
返回成功提示,因此可以确定文件上传路径为**/uploaded_files**
成功连接,查找可疑文件
在www目录下的html文件夹中发现hint.txt和flag.txt两个可疑文件
在hint.txt中发现关键信息
try to find user technawi password to read the flag.txt file, you can find it in a hidden file ;)
The 3rd flag is : {7645110034526579012345670}
Flag 4
此外,目录下还有一个flag.txt存在问题,文件大小为132B,但是访问文件时为空
也无法下载
保存的文件,蚁剑显示不可读,因此怀疑权限不足
跳过flag.txt,根据flag3的提示进行操作,寻找与用户technawi有关的文件,首先查找passwd文件
但是尝试后发现没有用处(ssh连接显示失败)
在目录内查找用户可疑打开的文件
find / -user ‘technawi’ 2>/dev/null
除了后面的technawi目录下的文件外,只有/etc/mysql/conf.d/credentials.txt和/var/www/html/flag.txt可疑
Flag.txt暂时打不开,因此尝试读取credentials.txt,发现关键信息
The 4th flag is : {7845658974123568974185412}
username : technawi
password : 3vilH@ksor
Flag 5
而此时也基本可以判断,只有获取了technawi用户的权限后才可以打开flag.txt,继而读取最后一个flag,而此时flag4提示的用户名和密码,因此想到了之前失败的ssh连接,尝试连接,这里使用的ssh连接工具是Finalshell
成功连接
此时我们直接读取flag.txt
The 5th flag is : {5473215946785213456975249}
Good job :)
You find 5 flags and got their points and finish the first scenario....
You find 5 flags and got their points and finish the first scenario....
你找到了5个Flag,得到了他们的分数,完成了第一个场景....
不是下面这样翻译的!
满满的怨念(*  ̄︿ ̄)
(bushi
至此,全剧终…