ShellSweepPlus 介绍:开源 Web Shell 检测

news2024/9/24 15:25:20

ShellSweepPlus 概述

ShellSweepPlus是一款开源工具,旨在帮助安全团队检测潜在的 Web Shell。它是 ShellSweep 的增强版

Webshell 的威胁

Web shell 对组织构成重大威胁,因为它们为攻击者提供了对受感染 Web 服务器的未经授权的访问和控制。攻击者可以利用这些 shell 来:

  • 窃取敏感数据。
  • 部署额外的恶意软件。
  • 发动进一步的攻击。

及时检测潜在的 Web Shell 对于最大限度地减少漏洞的影响和防止进一步的损害至关重要。

ShellSweepPlus 如何增强威胁防御

ShellSweepPlus 通过增强现有安全工具的影响力为安全团队提供了巨大的价值。

通过将 ShellSweepPlus 集成到安全堆栈中,组织可以增强防御能力并更全面地了解其 Web 应用程序的安全状况。该工具的高级检测方法(例如熵分析、模式匹配和启发式分析)使安全专业人员能够高精度地识别潜在的 Web Shell,即使它们被严重混淆或采用了新技术。

此外,ShellSweepPlus 使安全团队能够识别可能被忽视的威胁。其详细的报告和警报功能可以快速响应潜在的 Web Shell 威胁,从而缩短检测到补救之间的时间。

通过主动搜寻异常和可疑文件,安全专家可以领先攻击者一步,并增强组织的整体安全弹性。

无论您是经验丰富的安全专家还是刚入行不久,ShellSweepPlus 都是一款不可或缺的模块化可配置工具。其多功能性、易用性和强大功能使其成为对抗 Web Shell 持续威胁的宝贵工具。

ShellSweepPlus:主要增强功能和特性

对于 ShellSweepPlus,我们引入了多项增强功能以增强其检测能力:

  1. 启发式分析:ShellSweepPlus 引入了“Perform-HeuristicAnalysis”功能,该功能采用高级启发式规则来识别异常并检测最难以捉摸的 Web Shell。此附加功能大大增强了该工具发现以前未知的威胁的能力。
  2. 增强的模式检测:已实施“Detect-WebshellPatterns”功能来识别已知的恶意模式,从而提供额外的保护层。通过利用一套全面的可疑模式,ShellSweepPlus 可以快速标记潜在的 Web Shell 文件。
  3. 熵和标准偏差集成:ShellSweepPlus 擅长计算每个文件扩展名的熵值的平均值和标准偏差。与预期熵范围有显著偏差的文件会被标记,从而实现精确而全面的检测。
  4. 混合模式检测:ShellSweepPlus 采用基于熵的检测、基于标准偏差的检测和混合模式检测(利用标准偏差和硬编码阈值)的协同混合。这种多方面的策略可确保全面覆盖并增强识别潜在 Web Shell 的可靠性。
  5. 静态代码分析:该工具采用复杂的基于模式的检测机制,静态分析代码以识别和标记已知的恶意模式。

虽然 ShellSweepPlus 引入了这些高级功能,但我们认识到基准测试和真正了解您的环境的重要性。ShellCSV和ShellScan等强调基准测试的工具仍然是 ShellSweepPlus 的重要伴侣,可让您了解系统的行为。

当我们深入研究 ShellSweepPlus 这一激动人心的新篇章时,请加入我们探索其增强的功能,并了解它如何增强您的 Web Shell 检测工作。

ShellSweepPlus 的新功能

在深入了解 ShellSweepPlus 的功能之前,重要的是要记住 ShellSweep 是一套协同工作的工具。

  1. 首先,使用 ShellScan 对你的服务器进行基准测试,以更新熵值。
  2. 通过修改扩展和熵值来调整 ShellSweepPlus 以适应您的服务器。
  3. 最后,设置 ShellSweep|Plus 并运行。

这些步骤在原始 ShellSweep 博客中有详细概述。

(ShellSweep 流程图,Splunk 2024)

现在,让我们看看我们添加的新功能。

关键词分析

我们最初尝试采用的方法之一是关键字匹配。为了实现这一点,我们编写了一个 PowerShell脚本,用于扫描大量 Web Shell 目录并检查文件中的单词。

我们的主要目标是确保只包含那些在多个 Web Shell 中一致出现的关键字。我们设置了 3 个阈值,这意味着一个单词必须出现在三个或更多文件中才能添加到哈希表中并随后输出。

下面是我们使用的脚本。它也可以在ShellSweep 存储库中找到。

# 该脚本用于从一组包含 webshell 文件的目录中提取关键字。
# 它读取每个文件,将内容拆分为单词,并在哈希表中更新每个单词的频率。
# 然后,它会过滤掉出现超过 3 次的单词,并将其视为可疑单词。
# 然后将可疑单词写入文件“suspiciousPatterns.txt”。
 
 
$webshellDirectoryPath = @( 
'C:\Users\Administrator\Downloads\reGeorg-master\reGeorg-master', 
'C:\Users\Administrator\Downloads\p0wny-shell-master', 
'C:\Users\Administrator\Desktop\10684728197_human2_cisa_report', 
'C:\Users\Administrator\Downloads\xl7dev\WebShell-master', 
'C:\Users\Administrator\Downloads\webshells-master\webshells-

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

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

相关文章

AI跟踪报道第53期-新加坡内哥谈技术-本周AI新闻: 谷歌老施讲,微软Phi 3.5和Search GPT

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

JavaScript初级——DOM和事件简介

一、什么是DOM? 二、模型 三、对象的 HTML DOM 树 四、节点 浏览器已经为我们提供了文档节点对象,这个对象是window属性,可以再网页中直接使用,文档节点代表的是整个网页。 五、事件简介 事件,就是用户和浏览器之间的交…

致远oa员工离职之后无法获取登录名

故事 前几天在做致远oa的携程平台的人员同步,碰见一个问题,致远oa人员离职之后,无法获取到人员的登录名,导致无法再携程平台做离职处理,因为客户要求的是用登录名作为携程编号 技术支持 感谢大佬对文章的技术支持 …

【git】git进阶-blame/stash单个文件/rebase和merge/cherry-pick命令/reflog和log

文章目录 git blame查看单个文件修改历史git stash单个文件git rebase命令git rebase和git merge区别git cherry-pick命令git reflog和git log区别 git blame查看单个文件修改历史 git blame:查看文件中每行最后的修改作者 git blame your_filegit log和git show结合…

探索Facebook的AI算法:如何优化用户体验

在数字化时代,社交媒体平台不断引领着技术创新的潮流。作为全球领先的社交平台之一,Facebook在人工智能(AI)算法的应用上取得了显著进展,极大地提升了用户的社交体验。本文将探讨Facebook如何通过先进的AI算法优化用户…

如何实现一棵红黑树

目录 1.什么是红黑树 2.红黑树的实现 2.1红黑树的插入 新插入的结点应该是什么颜色的呢? 插入情况的分析 ​编辑插入代码如下所示 2.2红黑树的查找 2.2检测红黑树 1.什么是红黑树? 红黑树是一棵接近平衡的二叉搜索树。由于AVL树在频繁大量改变数据…

MySQL字符串比较忽略尾随空格

问题 今天遇到一个线上问题,排查过程中发现,MySQL 查询条件使用字符串判断等时会自动忽略字符串尾部的空格,示例如下: MySQL 表格结构: CREATE TABLE users (id int(11) NOT NULL,name varchar(50) DEFAULT NULL,ag…

深度学习一(Datawhale X 李宏毅苹果书 AI夏令营)

一,机器学习基础 机器学习(Machine Learning, ML)是让机器具备学习能力的过程,其核心在于使机器能够自动寻找并应用复杂的函数,以解决各种任务如语音识别、图像识别和策略决策(如AlphaGo)。这些…

YoloV8改进策略:卷积篇|ACConv2d模块在YoloV8中的创新应用与显著性能提升|简单易用|即插即用

摘要 在本文中,我们创新性地将ACConv2d模块引入到YoloV8目标检测模型中,通过对YoloV8中原有的Conv卷积层进行替换,实现了模型性能的大幅提升。ACConv2d模块基于不对称卷积块(ACB)的设计思想,利用1D非对称卷积(13和31卷积)来增强标准方形卷积核(如33卷积)的表征能力。…

spring揭秘11-aop05-aop应用经典场景及目标对象内部方法调用无法被拦截

文章目录 【README】【1】基于aop实现全局异常处理【2】基于aop实现权限检查【3】基于aop实现缓存【4】aop无法拦截目标对象内部方法调用的问题【4.1】问题概述【4.2】解决方法 【README】 本文总结自《spring揭秘》,作者王福强,非常棒的一本书&#xf…

TFTP error: ‘Permission denied‘ (0)

项目场景: 环境:ubuntu 5.4.150 开发板:s3c2440 在u-boot中,通过tftp传输uImage文件失败。 问题描述 SMDK2410 # tftp 0x30008000 uImage dm9000 i/o: 0x20000000, id: 0x90000a46 DM9000: running in 16 bit mode MAC: 00:0…

【变化检测】基于UNet建筑物变化检测

主要内容如下: 1、LEVIR-CD数据集介绍及下载 2、运行环境安装 3、基于likyoo变化检测代码模型训练与预测 4、Onnx运行及可视化 运行环境:Python3.8,torch1.12.0cu113 likyoo变化检测源码:https://github.com/likyoo/change_dete…

数据仓库中的表设计模式:全量表、增量表与拉链表

在现代数据仓库中,管理和分析海量数据需要高效且灵活的数据存储策略。全量表、增量表和拉链表是三种常见的数据存储模式,各自针对不同的数据管理需求提供了解决方案。全量表通过保存完整的数据快照确保数据的一致性,增量表则通过记录数据的变…

如何在 Ubuntu 系统中安装PyCharm集成开发环境?

在上一篇文章中,我们探讨了Jupyter notebook,今天再来看看另一款常用的Python 工具,Pycharm。 PyCharm也是我们日常开发和学习常用的Python 集成开发环境 (IDE),由 JetBrains 开发。 PyCharm 带有一整套可以帮助用户在使用Pytho…

大数据-91 Spark 集群 RDD 编程-高阶 RDD广播变量 RDD累加器 Spark程序优化

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

【代码随想录训练营第42期 Day39打卡 - 打家劫舍问题 - LeetCode 198.打家劫舍 213.打家劫舍II 337.打家劫舍III

目录 一、做题心得 二、题目与题解 题目一:198.打家劫舍 题目链接 题解:动态规划 题目二:213.打家劫舍II 题目链接 题解:动态规划 题目三:337.打家劫舍III 题目链接 题解:动态规划 三、小结 一、…

卸载nomachine

网上的方法:提示找不到命令 我的方法: step1. 终端输入 sudo find / -name nxserver 2>/dev/null确认 NoMachine 的实际安装路径。你可以使用 find 命令在系统中查找 nxserver 脚本的位置。 找到路径后,你可以使用该路径来卸载 NoMachine。 如下图,紫色框中是我的路径…

【ACM出版】第三届公共管理、数字经济与互联网技术国际学术会议(ICPDI 2024,9月06-08)

第三届公共管理、数字经济与互联网技术国际学术会议(ICPDI 2024)定于2024年9月06-08日在中国-济南举行。 会议主要围绕公共管理、数字经济,互联网技术等研究领域展开讨论。会议旨在为从事公共管理、经济、大数据、互联网研究的专家学者提供一…

解决LabVIEW配置文件中文乱码问题

LabVIEW配置文件中的中文字符在程序调用时出现乱码,通常是由于字符编码不匹配引起的。LabVIEW默认使用ANSI编码格式,而配置文件可能使用了不同的编码格式(如UTF-8),导致中文字符在读取时无法正确解析。 解决方法 统一编…

导数的基本法则与常用导数公式的推导

目录 n 次幂函数导数公式的推导导数和的运算法则的证明正弦、余弦函数导数公式的推导代数证明两个重要极限(引理)及证明具体推导 几何直观 导数积的运算法则的证明导数商的法则的证明链式法则的证明有理幂函数求导法则的证明反函数求导法则的证明反正切函…