测试 35 个 webshell 检测引擎的查杀结果

news2024/9/20 14:48:58

最近发现了一个有意思的 使用分支对抗技术制作的 PHP Webshell 开源项目,共数十个查杀引擎免杀,项目地址:https://github.com/icewolf-sec/PerlinPuzzle-Webshell-PHP

什么是 Webshell

Webshell 是一种恶意脚本,它能让攻击者通过 HTTP 或 HTTPS 通信协议对服务器进行远程管理。 Webshell 由服务端和客户端两部分构成,客户端向服务端发送请求,服务端接收客户端请求后执行相应操作,然后将结果返回给客户端。

Webshell 常用的语言有 PHP、JSP、ASP、ASPX、PERL、Ruby 等,攻击者通过各种手段将 webshell 上传到网站服务器上,然后就可以远程控制目标服务器。

使用 Webshell ,攻击者可以浏览文件、上传、下载、编辑、删除、复制、改名、执行任意命令、操作数据库、反弹 Shell、添加后门、远程控制等一系列恶意活动,严重威胁到网站及服务器的安全。因此,防范和监测 webshell 是网络安全防护的重要一环。

Webshell 对网站和服务器安全有什么威胁?

  1. 未授权访问:攻击者通过 Webshell 可以轻松获取服务器权限,可以查看、修改、删除服务器上的任何数据,包括但不限于代码文件、数据库信息等。
  2. 数据泄露:攻击者可以利用 Webshell 提取服务器上的敏感信息,如用户信息、交易数据、密码等,并可能将这些信息用于非法用途,如身份盗窃、欺诈等。
  3. 攻击传播:攻击者还可以利用服务器的 Webshell 作为跳板,进一步攻击内网中的其他系统或者设备,甚至进行远程控制。 业务中断:另外,服务器一旦被上传 Webshell,可能会导致服务器性能下降,严重时可能导致服务中断,影响正常的业务流程。
  4. 服务器资源滥用:攻击者可利用 Webshell 控制服务器进行不法活动,如发起 DDoS 攻击或者进行加密货币挖矿等,这会导致服务器负载过高,影响业务。

此项目中涉及的绕过点有哪些

  1. 使用刻意编写的变量覆盖漏洞传递参数;
  2. 使用线性代数中的循环群运算原理制作程序锁定器;
  3. 在“柏林噪声”随机数生成算法生成的数组中添加关键危险字符;
  4. 关键危险字符的生成内容由程序解锁器的运算结果决定,若运算错误则无法生成正确字符;
  5. 在程序的执行过程中使用阻断器,若未解锁则阻断函数返回值传递
  6. 使用超长行注释干扰词法引擎。

测试结果

最后一次绕过测试于2024年01月18日进行,共使用了国内外共35个现有的查杀引擎进行测试,成功绕过34个,绕过率97.1% :

  • 绕过成功:
    • 阿里伏魔引擎
    • 安恒云沙箱
    • 大圣云沙箱
    • 河马WebShell查杀
    • 魔盾云沙箱
    • 微步集成引擎共26个(微软、卡巴斯基、IKARUS、Avast、GDATA、安天、360、NANO、瑞星、Sophos、WebShell专杀、MicroAPT、OneStatic、ESET、小红伞、大蜘蛛、AVG、K7、江民、Baidu、TrustBook、熊猫、ClamAV、Baidu-China、OneAV、MicroNonPE)
    • D盾
    • Windows Defender
    • 火绒安全软件
  • 绕过失败:长亭百川WebShell查杀引擎

image.png

有什么方法可以防范 Webshell 的攻击?

  1. 及时打补丁:保持服务器和网站所使用的所有软件包括操作系统、web服务器、CMS(如Wordpress、Drupal等)及其插件等都是最新版本,并及时打上安全补丁。
  2. 权限管理:严格的权限管理也可以有效地防止Webshell攻击,比如限制web目录的写权限,严格控制执行命令的权限等。
  3. 安全开发:在网站开发中,进行安全的编程,避免存在文件上传漏洞,进行有效的输入和输出过滤,减少XSS、SQL注入等常见的安全漏洞。
  4. 安全审计:定期进行代码审计,查找是否有潜在的安全风险,同时对服务器进行安全扫描,看是否有异常情况。
  5. 防火墙设置:设置Web防火墙,有效阻挡诸如文件包含和代码执行的攻击,减少Webshell上传的途径。
  6. 监控检测:部署专业的安全监控系统或接入专业的webshell检测引擎,对服务器和网站进行实时监控,一旦发现Webshell,就能够及时发现并清除。
  7. 数据备份:定期备份重要数据,一旦遭遇攻击,能够确保数据的完整性和可用性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1422130.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Boot 中文件上传

Spring Boot 中文件上传 一、MultipartFile二、单文件上传案例三、多文件上传案例四、Servlet 规范五、Servlet 规范实现文件上传 上传文件大家用的最多的就是 Apache Commons FileUpload,这个库使用非常广泛。Spring Boot3 版本中已经不能使用了。代替它的是 Sprin…

F5怎么样应对来自多云的挑战?一文讲透

伴随着5G、物联网、云计算等技术的快速发展,越来越多的企业也将其业务迁移到云,企业也在寻求多种云解决方案,以优化资源并降低成本,进一步优化IT运营。根据Deloitte发布的《美国云计算未来调查报告》,近80%的企业表示它…

CUDA编程- - GPU线程的理解 thread,block,grid - 学习记录

GPU线程的理解 thread,block,grid 一、从 cpu 多线程角度理解 gpu 多线程1、cpu 多线程并行加速2、gpu多线程并行加速2.1、cpu 线程与 gpu 线程的理解(核函数)2.1.1 、第一步:编写核函数2.1.2、第二步:调用核函数(使用…

Ubuntu系统安装 Redis

环境准备 Ubuntu 系统版本:22.04.3Redis 版本:6.2.12 检查本地 make 环境 make -version若没有安装,则需要安装 sudo apt install make检查本地 gcc 环境 gcc -version若没有安装,则需要安装 sudo apt install gcc。 sudo a…

(四)Prometheus的语句

1、node_cpu_seconds_total:监控项数据、指标项 2、node_cpu_seconds_total{cpu"0"}:时间序列 node_cpu_seconds_total 监控项数据(指标项) {cpu"0"} 标签 node_cpu_seconds_total{cpu"0"}&…

【排序算法】归并排序

文章目录 一:基本概念1.1 定义1.2 算法思路1.3 图解算法1.4 合并两个有序数组流程1.5 动画展示 二:性能2.1 算法性能2.2 时间复杂度2.3 空间复杂度2.4 稳定性 三:代码实现 一:基本概念 1.1 定义 归并排序(Merge sort…

EasyExcel实现Excel文件导入导出

1 EasyExcel简介 EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 github地址: https://github.com/alibaba/easyexcel 官方文档: https://www.yuque.com/easyexcel/doc/easyexcel Excel解析流程图: EasyExcel读取…

ip地址冲突上不了网怎么解决

在当今数字化的世界里,互联网已经成为了我们生活和工作中不可或缺的一部分。然而,有时候我们会遇到一些网络问题,其中最常见的就是IP地址冲突。当您的计算机无法连接到网络,或者网络连接不稳定时,这可能是IP地址冲突的…

华为---STP(二)---STP报文和STP端口状态

目录 1. STP报文简介 1.1 Configuration BPDU 1.2 TCN BPDU 2. STP交换机端口状态 2.1 STP交换机端口状态表 2.2 STP交换机端口状态迁移过程图 2.3 STP交换机端口状态变化举例说明 3 引起的STP网络拓扑改变的示例 3.1 根桥出现故障 3.2 有阻塞端口的交换机根端口所在…

编译opencv4.6问题汇总,第三方软件包见我发的资源

win10系统 python3.8.2,cmake-3.15.5-win64-x64,opencv4.6 编译方式见:OpenCV的编译 - 知乎 本文主要总结问题。赠人玫瑰手留余香。 问题1 Problem with installing OpenCV using Visual Studio and CMake (error code: MSB3073) 解决方法…

实验3:利用Linux的消息队列通信机制实现三个线程间的通信

调用原型 POSIX信号量–无名信号量 POSIX信号量是Pthread线程库提供的一种同步机制,包括无名信号量和有名信号量两种机制。无名信号量,常用于多线程间的同步,也可用于相关进程间的同步(需置于相关进程间的共享内存区中&#xff…

React、React Router、JSX 简单入门快速上手

React、React Router、JSX 简单入门快速上手 介绍特点 JSX使用js表达式渲染列表样式控制注意事项 入门脚手架创建react项目安装目录介绍入口文件解析 组件解析介绍函数式组件类组件 事件绑定注意点定义使用事件对象事件处理函数接收额外参数 组件状态状态的定义使用 组件通信父…

金蝶云星空RCE漏洞合集(多接口批量检测)

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

IntelliJ Idea实用插件推荐

目录 一、插件安装 二、常用插件 A、代码规范 Alibaba Java Coding Guidelines SonarLint B、快捷开发 aiXcoder-AI代码生成 AWS Toolkit-AI代码生成 CodeGeeX-AI代码生成 CodeGlance-代码缩略图 camelCase-格式转换 GsonFormatPlus-json代码生成 Sequence Giagram…

从搜索引擎到答案引擎:LLM驱动的变革

在过去的几周里,我一直在思考和起草这篇文章,认为谷歌搜索正处于被颠覆的边缘,它实际上可能会影响 SEO 作为业务牵引渠道的可行性。 考虑到谷歌二十多年来的完全统治地位,以及任何竞争对手都完全无力削弱它,坦率地说&…

微信活动投票小程序源码系统:自主创建活动小程序带完整的安装代码包以及搭建教程

微信小程序的日益普及,越来越多的企业和个人开始关注如何利用小程序进行活动推广和用户互动。在这个背景下,微信活动投票小程序源码系统应运而生。这款源码系统旨在帮助用户快速创建自己的活动投票小程序,降低技术门槛,提高开发效…

代理模式(静态代理、JDK 动态代理、CGLIB 动态代理)

代理模式(静态代理、JDK 动态代理、CGLIB 动态代理) 一、代理模式概述1. 生活中的代理案例2. 为什么要使用代理3. 代理模式在 Java 中的应用4. 概述5. 生活中代理图示二、代理的实现方式1. Java 中代理图示2. 静态代理2.1 案例2.2 实现案例2.3 静态代理存在的问题三、动态代理…

centOS+nodejs+mysql阿里云部署前后端个人网站

centOSnodejsmysql阿里云部署前后端个人网站 参考: 部署NodeExpressMySQL项目到阿里云轻量应用服务器 阿里云轻量应用服务器部署Node.jsReactMongoDB前后端分离项目 参考:在阿里云上部署nodejs服务 https 部署的原理就是你在本地测试的时候在地址栏&am…

FileViewer纯前端预览项目Vue2 demo

FileViewer 项目Vue2 demo 本demo基于vue-clijsvue2.x构建,如果您需要vue3版本的demo,请前往main分支。 适用于Vue2 Webpack,本集成方法要求最低Webpack版本为5,也就是Vue Cli Service 5.0.0以上,当然,if…

万户 ezOFFICE wpsservlet SQL注入漏洞复现

0x01 产品简介 万户OA ezoffice是万户网络协同办公产品多年来一直将主要精力致力于中高端市场的一款OA协同办公软件产品,统一的基础管理平台,实现用户数据统一管理、权限统一分配、身份统一认证。统一规划门户网站群和协同办公平台,将外网信息维护、客户服务、互动交流和日…