[BJDCTF2020]ZJCTF,不过如此

2024-02-12 20:44

本文主要是介绍[BJDCTF2020]ZJCTF,不过如此,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

伪协议读取next.php源码

 

preg_replace() /e代码执行漏洞_preg_replace /e-CSDN博客

查找资料我们发现,在php5.6及以下版本中,/e使得preg_replace的第二个参数可以被当作php代码执行,第二个参数中\\1指的是正则匹配到的第一组文本,是定死的,所以我们可以考虑第一个参数使用.*匹配任意文本,第三个参数${getFlag()},从而让第二个参数的值取得${getFlag()}并执行getFlag()函数

通过下面的foreach循环,re为get变量的键,str为get变量的值,故可构造

.*=${getFlag()}  

从而实现执行getFlag中的一句话木马 

但是“.”不能作为首字符,故改用/S匹配任意非空白字符

这里${}的作用是变量替换,实现先执行表达式并将其作为变量的值的效果

这篇关于[BJDCTF2020]ZJCTF,不过如此的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/703557

相关文章

八大排序原来也不过如此

详解八大排序 前言1.插入排序1.1 直接插入排序1.2 希尔排序 2.选择排序2.1 选择排序2.2 堆排序 3. 交换排序3.1 冒泡排序3.2 快排3.2.1 hoare版本3.2.2 挖坑版本3.2.3 双指针版本3.2.4 快排优化3.3.5 快排时间复杂度和空间复杂度分析3.2.5 非递归实现快排 4. 归并排序4.1 递归实现4.2 非递归实现 5. 计数排序6. 总结

BUUCTF---web---[BJDCTF2020]ZJCTF,不过如此

1、点开连接,页面出现了提示 传入一个参数text,里面的内容要包括I have a dream。 构造:?/text=I have a dream。发现页面没有显示。这里推测可能得使用伪协议 在文件包含那一行,我们看到了next.php的提示,我们尝试读取文件 根据代码:我们构造payload /?text=data://text/plain,I have a dream&f

[BJDCTF2020]ZJCTF,不过如此 1

涉及:php的伪协议、preg_replace函数的漏洞和正则表达式的运用。 解题步骤 <?phperror_reporting(0);$text = $_GET["text"];$file = $_GET["file"];if(isset($text)&&(file_get_contents($text,'r')==="I have a dream")){echo "<br><h1>"

BUUCTF---misc---[BJDCTF2020]纳尼

1、下载附件是一个gif图片,但是图片打不开 2、用winhex分析,看到缺少了文件头 3、将文件头通过ASCII码方式粘贴后,保存,图片恢复了正常 4、是一张动图,一共四张,每张都有base64编码 5、用stegsolve分解图片 6、将得到的图片信息按照顺序拼接后进行base64解码,将得到的信息,用flag替换CTF进行提交 flag{{wang_bao_qi

【Html5】 Hbuilder工具+MUI框架,开发H5列表页面不过如此!

我们公司大佬写得技术文档,以后可能用的到这个技能,先转载过来以后好直接使用。 转载:https://blog.csdn.net/chendaike/article/details/95453068 侵删,谢谢! 需求分析 小编最近在做一个任务:要求实现一个在微信公众号里面的H5列表页面。拿到这个任务我们首先要进行需求分析,由于是在微信公众号也就是手机里面的H5列表,所以就不可能像PC

练习 19 Web [BJDCTF2020]Easy MD5

如果你是第一批做这个题的,这道题一点也不easy 打开在前端代码里面看到,输入框输入的内容实际是’password’ 随意输入内容,查看响应header中的内容有一句SQL代码,可知我们要让password在md5后返回值为true 然后尬住,开搜 MD5碰撞 总结ctf中 MD5 绕过的一些思路 ffifdyop——绕过中一个奇妙的字符串 BJDCTF2020 Easy MD5(详细

BJDCTF2020[encode]

题目:encode,地址:encode 查壳发现时upx壳,使用工具脱壳命令"upx -d ",如果遇到工具脱不了的壳就手动脱壳,手动脱壳请帅哥美女*们看这篇手动脱壳。使用ida打开,观察逻辑后重命名函数:逻辑为一个换表base64 + 异或 + RC4。其中RC4可以根据函数传入key,进而生成Box盒子来判断:知道逻辑后,先用RC4脚本解密,key=“Flag{This_a_Flag}”,密

[BJDCTF2020]----EzPHP

文章目录 pass-1pass-2pass-3pass-4pass-5pass-6pass-7 查看题目,右键源代码,发现GFXEIM3YFZYGQ4A=,base64解码:1nD3x.php 访问1nD3x.php,代码审计,一步一步分析 <?phphighlight_file(__FILE__);error_reporting(0); $file = "1nD3

[BJDCTF2020]EzPHP1 --不会编程的崽

有一说一,这题还是有难度的 base32解码url编码绕过$_SERVER换行符绕过preg_match相同参数,post请求覆盖get请求,绕过$_REQUESTphp伪协议利用sha1数组绕过create_function代码注入 Level 1 右键源码里又发现,拿去base32解码即可      <?phphighlight_file(__FILE__);error_r

Twing模板注入 [BJDCTF2020]Cookie is so stable1

打开题目  我们先抓包分析一下 可以输入{{7*7}}处发包试一下 可以看到在cookie处存在ssti模板注入 输入{{7*‘7’}},返回49表示是 Twig 模块 输入{{7*‘7’}},返回7777777表示是 Jinja2 模块 在这里可以看出是Twing模块 我们直接用固定payload就可以得到flag 知识点: 1.