闻道计算机协会CTF萌新赛-WEB

web一共五道,我乱序分析

web1

闻道计算机协会CTF萌新赛-WEB_第1张图片
看题目提示,PUT your heart into this page.
盲猜是个脑洞题用put传入参数heart

闻道计算机协会CTF萌新赛-WEB_第2张图片
纠结了一下午,有时候萌新题就是看脑洞

web2

闻道计算机协会CTF萌新赛-WEB_第3张图片
这个题是个代码审计题
查看源码,发现 extract($_GET) 一行将 get 参数转化为 php 变量.
下一行判断 $who 是 web1n,并且 $girlfriend 存在的话就输出 flag.
闻道计算机协会CTF萌新赛-WEB_第4张图片

web3

闻道计算机协会CTF萌新赛-WEB_第5张图片
F12看一下源代码
闻道计算机协会CTF萌新赛-WEB_第6张图片
发现有个提示,好像是base64加密过的,我们解密后发现
在这里插入图片描述
我们将密码输入到密码框中发现密码框无法输入,我们查看密码框代码
闻道计算机协会CTF萌新赛-WEB_第7张图片
将readonly="readonly"删除
在密码框中输入密码点击login
闻道计算机协会CTF萌新赛-WEB_第8张图片
在这里插入图片描述
我们把浏览器的编码改一下
闻道计算机协会CTF萌新赛-WEB_第9张图片
我们用burp suite抓包,加一个x-forwarded-for头文件
闻道计算机协会CTF萌新赛-WEB_第10张图片

web4

闻道计算机协会CTF萌新赛-WEB_第11张图片
又是一道代码审计题,其中我们只要符合pass1的值等于pass2即可
pass2为pass参数的md5形式,我们只需传给pass1变量pass变量的md5值即可得到flag
因为涉及到file_get_contenes()函数,所以我们用php://input伪协议进行传参
?user=php://input
用post方法传入想要file_get_contents()函数返回的值

闻道计算机协会CTF萌新赛-WEB_第12张图片
方法二:
用data://伪协议绕过
将url改为:?user=data://text/plan;base64,想要file_get_contents()函数返回的base64编码
闻道计算机协会CTF萌新赛-WEB_第13张图片

web5

闻道计算机协会CTF萌新赛-WEB_第14张图片
xxe漏洞
我们试着用账户admin密码passwd登录一下
闻道计算机协会CTF萌新赛-WEB_第15张图片
发现了flag文件的位置,这里说的根目录是网站根目录
我们构造payload即可找到flag
闻道计算机协会CTF萌新赛-WEB_第16张图片

你可能感兴趣的:(CTF)