CTF介绍
CTF是一种流行的信息安全竞赛形式,其英文名可直译为“夺得Flag",也可意译为“夺旗赛”。其大致流程是,参赛团队之间通过进行攻防对抗、程序分析等形式,率先从主办方给出的比赛环境中得到一串具有一定格式的字符串或其他内容,并将其提交给主办方,从而夺得分数。为了方便称呼,我们把这样的内容称之为“Flag"。
实验环境
攻击机: kali linux 192.168.1.111
靶场机器:linux 192.168.1.110
信息探测
扫描主机开放的端口号
– nmap -p- -T4 靶场IP地址
快速扫描主机全部信息
-- nmap -T4 -A -v 靶场IlP地址
#-T4最快速度 -A全部信息 -v将扫描结果显示出来
探测敏感信息
-- nikto -host http://靶场lP地址:端口 #80端口可以省略,但其他端口号不行
--dirb http://靶场IP地址:端口#探测该http拥有的目录及其文件
分析nmap .nikto扫描结果,挖掘可以利用的信息;
对于大端口非http服务,可以使用nc 来探测该端口的banner信息;
— nc ip地址端口号
对于13337端口号:
对于60000端口号,返回一个shell命令行,使用id,ls,pwd等Linux命令来找到flag
对于大端口http服务,可以使用浏览器浏览界面查看源代码,寻找flag值;
— http://ip地址:端口号
从前面使用的-- nmap -T4 -A -v 靶场IlP地址 命令中,发现:9090为大端口号的http服务
发现了falg
对于http服务,可以使用浏览器打开http://ip:port/敏感页面,查看敏感信息,找到可利用的位置;
通过nmap扫描发现了有一个敏感词password
通过dirb扫描80端口结果如图所示:
打开目录之后;如图所示,有2个文件
分别为打开
图中没有出现对应的flag,需要深入挖掘,首先查看对应的源代码,查看其中是否有对应的信息。
找到一个密码:
FTP匿名登录挖掘敏感信息;
对于FTP端口号21
在浏览器中输入
ftp://靶场IP地址
匿名登录ftp服务器根目录,查看敏感文件,注意一定要查看源代码;
打开flag
在站点robots.txt文件中寻找敏感文件,挖掘敏感文件漏洞;
用dirb进行扫描时,发现了robots.txt文件,鼠标右键将其打开
发现有3个目录依次在浏览器中查看其内容
查看第一个发现无内容
查看第二个发现输入东西,可能存在命令执行漏洞
对于命令执行中,为了绕过对应的限制,可以使用相近命令来代替限制的shell命令如cat 使用more来代替
提交之后的结果如图,找到了用户名
登录靶场机器
获得对应的用户名和密码之后,可以通过ssh来登录系统,查看对应的flag值。
发现使用了22号端口,
但是,拒绝了远程登录
还有一个服务
— ssh -p port用户名@靶场IP地址
—之后输入对应的密码登录系统
这里的登录密码为下图:
登录上去之后通过:
—pwd. ls cat more
—执行命令查看flag值
总结
1.注意未知服务的端口,可以使用nc获取对应的banner信息;
2.使用对应相近的shell命令来绕过限制;如cat more
3.对每一个服务都需要进行对应的探测,不放过任何一个可以利用的点