打开题目
点了几下跳出一个新的页面
点击secret
在上一个页面查看源代码,出现action.php然后点击之后就会在地址栏里面出现end.php
抓包看看,出现secr3t.php
huidao开始的页面,访问看看
这是一个PHP脚本,以HTML标签开头。该脚本包含了一个PHP函数 highlight_file(__FILE__),该函数可以高亮正在执行的PHP代码。
然后,该脚本设置了 error_reporting(0),以关闭错误报告。
该脚本通过 $_GET 超全局变量接收一个文件名作为参数。然后它检查文件名是否包含以下任何字符串: "../"、"tp"、"input" 或 "data"。如果包含,则脚本会打印 "Oh no!" 并退出。这是一种安全措施,用于防止目录遍历攻击并保护服务器免受恶意文件包含的攻击。
也就是说input和data都不可以使用了,然后就用php://filter
php://filter/convert.base64-encode/resource=目标文件
如果文件名通过了安全检查,该脚本将使用 include 语句包含该文件。被包含的文件的内容将作为PHP代码执行。
标志存储在名为 "flag.php" 的文件中,该文件可能由此脚本包含。
secr3t.php的后面加上?file=php://filter/convert.base64-encode/resource=flag.php
?file=php://filter/read=convert.base64-encode/resource=flag.php
两个都是可以的
web萌新赛
源码里面出现了system
在Linux中可以使用“;”隔离不同的语句(分号做出隔离)
url=;ls;
url=;cat flag;
[SWPUCTF 2022 新生赛]js_sign
先查看源代码,出现base,解密之后提示是敲击码
要记得除去空格,没有出掉空格是不完整的
[SWPUCTF 2022 新生赛]xff
猜测是XFF伪造,burp抓包然后伪造
说明必须从主页跳转,Referer伪造
需要了解一下这两个伪造
X-Forwarded-For
是一个 HTTP 扩展头部,主要是为了让 Web 服务器获取访问用户的真实 IP 地址。在代理转发及反向代理中经常使用X-Forwarded-For 字段。
是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。简单地说,xff是告诉服务器当前请求者的最终ip的http请求头字段,通常可以直接通过修改http头中的X-Forwarded-For字段来仿造请求的最终ip
Referer
Referer 是 HTTP 请求header 的一部分,当浏览器(或者模拟浏览器行为)向web 服务器发送请求的时候,头信息里有包含 Referer 。比如我在www.sojson.com 里有一个www.baidu.com 链接,那么点击这个www.baidu.com ,它的header 信息里就有:
Referer=https://www.sojson.com
比如,直接在浏览器的地址栏中输入一个资源的URL地址,那么这种请求是不会包含 Referer 字段的,因为这是一个“凭空产生”的 HTTP 请求,并不是从一个地方链接过去的。
[SWPUCTF 2022 新生赛]ez_sql
打开 提示说要用相对安全的方式传参,post是比较安全,判断是单引号闭合
根据报错信息说明union和空格都被过滤了
nss=1' union select 1,2,3;#
union可以进行双写绕过,空格可以用/**/进行绕过
nss=2'/**/ununionion/**/select/**/1,2,3;#