您当前的位置:首页 > 生活常识 > 正文

内存条检测工具,内存检测工具哪个好(15个2022年最流行的负载测试工具)

关于【内存条检测工具】,内存检测工具哪个好,今天乾乾小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

内容导航:1、内存条检测工具:15个2022年最流行的负载测试工具(开源指南)2、内存条检测工具,内存检测工具哪个好

1、内存条检测工具:15个2022年最流行的负载测试工具(开源指南)

什么是负载测试?

负载测试是性能测试的一个特定子系列,其中包括许多同时运行相同程序的并发用户。这样做是为了查看系统基础结构是否能够在不影响功能或性能的情况下处理负载。

负载测试用于帮助确定是否:

与规范、用户需求或 KPI 相比,应用程序中关键操作返回的响应时间是可以接受的您的关键业务功能在重负荷下是否表现正常你的基础设施是否能在压力下扩展

一般来说,性能测试对客户满意度至关重要。如果您的应用程序性能不能满足客户的期望,那么他们就会转向您的竞争对手。

事实上,负载测试是性能测试中最容易被误解的部分之一,在使用下面列出的工具之前,您应该了解许多负载测试的最佳实践。

下面是我们的顶级开源和免费性能负载测试工具的综合列表,您可以使用这个2022进行负载和压力测试性能工程工作。

2022年顶级负载测试工具列表JMeterTaurusLocustFiddler with BlackWidow and WatchernGrinderThe GrinderGatlingk6TsungSiegeBees with Machine GunsFortiopuppeteer-webperfFlood ElementArtillery.io最佳性能测试工具负载测试工具 FAQ? ?

下面是一些包含工具比较的选项,可以帮助您决定在2022年使用什么工具来提高应用程序的性能。

内存条检测工具,内存检测工具哪个好(15个2022年最流行的负载测试工具)

2022顶级负载测试工具列表

这个列表只包含了自动性能测试和 API 负载测试的顶级负载测试工具的开源和免费选项,所以你可以直接下载并立即开始,而不用花一毛钱。

JMeterTaurusLocustFiddler with BlackWidow and WatchernGrinderThe GrinderGatlingk6TsungSiegeBees with Machine GunsFortiopuppeteer-webperfFlood ElementArtillery.io

JMeter

JMeter 是性能领域中最流行的开放源码工具,用于帮助度量加载时间。

Apache JMeter 将自己描述为一个专门为负载测试设计的 Java 应用程序,具有度量应用程序性能和响应时间的能力。

JMeter 基本上是作为 LoadRunner 的开源替代品而构建的,因此您会发现它有许多复杂的特性。这是一个很大程度上由右键点击驱动的厚客户端 Java 应用程序。虽然有点奇怪,但是它有很强的动力。另外,专业负载测试人员需要的所有特性都可以在 JMeter 上获得。

以下是一些特性:

使用一系列协议(如 Java object、 Web HTTP/HTTPS、 SOAP 和 Rest Services、 FTP、 Databases with JDBC)测试主机技术的性能一个很好的 IDE,您可以使用它来记录、构建和调试性能测试从 JMeter 3.1 Groovy 开始,Groovy 是默认的编程语言比较流行的性能测试工具之一可以配置它来帮助测试移动应用程序的移动性能

目前在 GitHub 上有5.1 k 星。

尽管 JMeter 是比较流行的测试工具之一,但它也有一些缺点。

例如,JMeter 对于大型分布式测试来说可能有点难以伸缩; 特别是如果您必须设置一组机器,因为您必须配置它们以便彼此通信。在执行大型 JMeter 测试时,还存在大量编排问题。

这就是 blazemeter ー taurus 开源工具可以帮助你解决所有的问题。

Taurus

虽然从技术上讲,Taurus 不是负载测试工具,但它的作用更像是在其他解决方案之上的包装器,这些解决方案隐藏了运行性能测试的复杂性。

Taurus的力量在于它允许你用 YAML 写测试。

您实际上可以用大约10行文本来描述一个成熟的脚本,这使得团队能够在 YAML 或 JSON 文件中描述他们的测试。YAML 是一种人性化的、可读的、可用的方法,它使您能够在一个简单的文本文件中描述测试。

与过去不得不提供大量特定于供应商的记录和脚本工具来度量加载时间的情况相比,这是一个巨大的飞跃。

功能

这也应该允许更多的团队成员参与性能测试。此外,由于你的测试用例是在 YAML 编写的, 这些测试更具可读性,使它们更容易执行代码审查Taurus基本上适合性能测试到您的 CI/CD 管道更有效率Taurus在 JMeter 之上提供了一个类似抽象层的工具,还有一些其他的工具,比如 Locust,Gatling,the Grinder, and 及Selenium .

目前在 GitHub 上有14000颗star。

Locust

Locust 是一个简单易用的分布式用户负载测试工具,可以帮助您捕获响应时间。

它使用什么脚本语言? 最好的一种ー Python! :)

它可以用于帮助性能测试网站或其他应用程序。

Locust 还可以帮助您计算出一个系统可以处理多少并发用户。

像 jMeter 这样的工具所基于的是基于线程的体系结构,这种体系结构会消耗大量资源。Locust 使用一种基于事件的方法,这种方法使用的资源更少。

BlueConch 科技公司的技术领导人 Rahul Solanki 向我提到,当他将 Locust 与 JMeter 进行比较时,Locust 占用的资源数量减少了约70% 。

如果你熟悉术语“加载生成器”,Locust使用的术语“群”-因为你可以指向一个Locust群放在你的网站加载。

您可以为每个 Locust 实例定义所需的行为。它还使您能够从 web UI 实时监视蜂群的过程。

Locust的一些很酷的关键特性是:

使用直接的 Python 创建测试场景的能力您可以很容易地扩展需要仿真的用户数量它有一个很好的基于 web 的用户界面可扩展的适用于测试 api

缺点

因为它是一个新的工具,所以它的插件比 JMeter 少得多

目前在 GitHub 上有157000颗star。

Fiddler with BlackWidow and Watcher

这在性能工具列表上看起来似乎是一个奇怪的组合。

但是性能工程专家 Todd DeCapua 在之前的 PerfGuild 会议上建议使用 Fiddler 和 Watcher 以及 BlackWidow 来创建一个快速启动的自动化性能测试解决方案。

Fiddler 可以让你做很多事情,但是最好把它描述成一个数据包捕获工具。

虽然 Fiddler 可能不被认为是一个负载测试解决方案,但它可以做很多事情来调试网站问题,并且通过它的许多扩展之一,您可以完成更多的工作。

一些你可能想用 Fiddler 做的事情:

解决 web 应用程序中的问题安全测试工作表现评估调试来自大多数计算机和设备的网络流量许多集成特性便于找到性能瓶颈在开发者中已经是一个相当流行的工具。许多人使用它来进行调试,以查看他们的计算机发送到服务或网站的 HTTP 请求

“观察者”是 Fiddler 的一个安全外接程序,它将使您能够快速得到一些安全结果。黑寡妇是一个网络爬虫,让你的功能指向一个网址,然后能够钻取的结果。

对于刚刚开始做性能工程的人来说,这三个工具一起工作可以提供一个很好的方式来获得免费的外观和感觉,以及一个人可能无法快速获得的结果。

Todd 实际上在过去的一次 PerfGuild 在线会议上有一次会议,他在会上演示了这种方法。

nGrinder

nGrinder 的 GitHub 页面将其描述为被设计为企业级性能工程解决方案。它的开发是为了简化压力测试,并提供一个允许您创建、执行和监视测试的平台。

特点:

您可以使用 Jython 或 Groovy 编写测试,以创建测试场景,并使用多个代理为 JVM 创建压力 它可以用客户库扩展测试,比如 jar 和 py允许您监视性能代理加载生成的状态负责测试后从分布式代理中自动收集测试结果目前在 GitHub 上有13000颗星。

The Grinder

Grinder 是一个基于 java 的框架。它为您提供了易于运行和创建的分布式测试解决方案,使用许多负载生成器机器来捕获最终用户的响应时间。所以你不必担心任何虚拟用户的限制。

您可以在任何拥有 java api 的系统上执行负载测试一个漂亮的 GUI 控制台它自动处理客户端连接和 cookie 的管理

Gatling

Gatling 是一个基于 Scala、 Akka 和 Netty 的压力工具。

这种现代体系结构方法允许您测试和度量应用程序的端到端性能,并轻松地扩展虚拟用户。

它有一个简单而强大的 DSL易于扩展如果你喜欢以及它的好处,这是你的最佳负载测试工具它有一个场景记录器允许您采用左移代码方法进行性能测试

目前在 GitHub 上有5.1 k 星。

要了解更多关于Gatling的信息,请查看Gatling的创始人,Stephane Landelle 的关于正确使用Gatling进行负载测试的会议。

k6

K6是一个以开发人员为中心的开源负载测试工具,用于测试后端基础设施的性能。

您还可以使用 k6开始将性能测试包含到持续集成管道中。

6也是一个使用 Go 和 JavaScript 构建的现代负载测试工具,因此它很好地集成到了大多数开发人员的工作流程中。

干净的API脚本提供分布式和云执行超酷的 REST API 编排能力

目前在 GitHub 上有117000颗星。

Tsung

Tsung 是一个开源的、多协议的分布式负载测试工具。

可以监视客户机的 CPU、内存和网络流量它有一个 HTTP 记录器包括 HTML 报告和图表支持 HTTP、 XMPP、 LDAP 等协议

目前在 GitHub 上有2.1 k 星。

Siege

siege是一个命令行 HTTP 负载测试和基准测试工具。它被设计用来帮助开发人员在压力下度量他们的代码。

支持基本的身份验证、 cookie、 HTTP、 HTTPS 和 FTP 协议允许它的用户使用可配置数量的模拟客户机来攻击服务器,这些客户机将服务器“围攻”对于一个简单的,蛮力类型的测试工具非常好

目前在 GitHub 上有4000颗星。

Bees with Machine Guns

由芝加哥论坛报开发,这可能是这个列表中听起来最酷的性能测试工具。

机枪蜜蜂将自己描述为一个用来武装(创建)许多蜜蜂(aws EC2 instances)攻击(负载测试)目标(web 应用程序)的工具。

这个工具可以很容易地帮助您加载测试网站,需要处理高流量。

利用亚马逊 EC2

目前 GitHub 上有6000颗星。

对于企业范围的性能测试工具,LoadRunner 通常是最常见的工具之一,但是这些开源工具中的许多都可以满足您的大部分需求。此外,大多数这些工具协议可以用于性能测试 web 应用程序和性能测试 web 服务。

Fortio

Foratio 是一个很酷的负载测试库、命令行工具、高级 echo 服务器和 go (golang)中的 web UI。

这个工具允许指定一个设置的每秒查询负载和记录延迟直方图和其他有用的统计数据。

优点

它很快小占用空间(3Mb docker 映像,最小依赖性)可重复使用可嵌入的 go 库潜伏期直方图和其他有用的统计数据

目前在 GitHub 上有18000颗星。

puppeteer-webperf

随着大多数现代应用程序使用大量的 javascript 前端,客户端性能测量的需求从未像现在这样迫切。

不要忽视前端性能。

你可以使用 Puppeteer WebPerf 来收集 web 性能统计数据,比如页面加载的跟踪信息,截图获取开发工具的跟踪信息,获取运行时性能指标等等。

此外,检查我的完整前端性能测试指南的更多信息。

目前在 GitHub 上有14000颗星。

Flood Element

想要测试真正的浏览器负载吗?

Flood 创建了这个开源解决方案,以帮助使用真正的浏览器负载测试模拟用户行为。

元素是使用基于浏览器的负载测试工具的开放源码剧作家。

脚本是用打字稿创建的。

您可以像客户那样使用它来对付 Web 应用程序,打开浏览器并与页面元素进行交互。

这种方法可以帮助找到面向用户的性能问题。

它的编写方式类似于功能测试脚本,但是在 Flood 的帮助下,您可以在云中任意多个节点上快速运行负载测试脚本。

这是为数不多的开源工具之一,它允许您使用真实的浏览器创建性能测试,以更接近地模拟真实用户与应用程序的交互方式。

请阅读我的文章,浏览器级性能测试使用元素。

目前 GitHub 上有204颗星。

Artillery.io

I/o 是一个开源应用程序,它可以选择加入优质服务,以创建负载测试来模拟成千上万的用户。

它有详细的性能指标,包括:

延迟每秒请求数并发性捕获平均响应时间和吞吐量

峰值性能测试,以处理最大流量为您的后端应用程序的稳定性和可靠性。

它能够使用 JavaScript 编写自定义逻辑、发布和预测试场景,这些场景有各种各样的 NPM 模块供您使用。

它支持多种协议,包括 HTTP、 Web Socket、 Socket.IO、 Kinesis 和 HLS。

目前 GitHub 上有4397颗星。

最佳性能测试工具

在我看来,这些是用于无负载测试的十大性能负载测试工具。

和往常一样,为您的团队的压力和负载测试需求选择正确的性能测试工具取决于您需要测试什么。

使用这些压力测试和负载测试工具进行快乐的性能测试!

本人抖音账号:里面有最新最流行的automation devops等技术的介绍,欢迎大家一键三连。

2、内存条检测工具,内存检测工具哪个好

背景

2021年8月BeaconEye项目发布,这是一个基于CobaltStrike内存特征进行检测的威胁狩猎工具。BeaconEye具有优秀的检出率与检测效率,使大多数已有规避技术无效化,在网络安全圈内掀起了关于CS内存攻防的新一轮讨论热潮。

为何BeaconEye切中要害

BeaconEye能够扫描运行中的程序或 Minidump中的程序,识别出被Beacon注入的进程,并以上帝视角窥视其内部行为。

· 提取Beacon配置

· 获取执行命令的返回结果

· 检测使用了sleep_mask功能的Beacon

BeaconEye利用对解密后配置特征值进行匹配,简单的几行规则便将无数隐匿手段斩于马下,达到这种令人瞠目结舌的效果并非一日之功。能在攻击技术与检测技术都高度内卷的今天一枝独秀则源于两点:

1. 将Beacon Config作为特征匹配对象

2. 将堆作为内存扫描的对象

阿喀琉斯之踵-Beacon Config

Beacon Config存储了Beacon运行时的配置信息包含了C2配置,通讯参数,内存隐匿方式等重要信息。这些配置数据以典型的TLV格式来组织,偏移与内容相对固定,因而这些敏感信息非常易于根据特征被提取与解析。

使用分析工具从Beacon二进制中提取的配置信息

Becon执行流程的两次解密过程

Beacon默认加密存储于加载器中,执行时释放到堆内存空间中。无论何种加密方式,解密后的配置将一直存在,即便开启sleepmask功能也仅会对代码段进行保护。无论采用何种加解密方式,最终Beacon Config都将裸露于堆内存中,这便是Beacon Config的死门,也是BeaconEye针对堆进行扫描的原因。

BeaconEye中内置的yara规则

近期Tom Bonner研究在推特披露,Beacon Config中除了包含诸如域名/IP等关于Teamserver的情报之外,还包含了每个攻击者独一无二的身份水印信息。

CobaltStrike服务端源码中嵌入水印信息的部分

当Teamserver解析c2profile嵌入二进制中时,将从c2profile中读取名为self,记录着Teamserver文件哈希的值。对于大部分使用重编译的方式对CobaltStrike进行破解修改的攻击者来说,这个泄露的文件哈希可能暴露样本归属信息。研究者对一些在野样本中Beacon Config包含的Teamserver哈希进行了有效的分析聚类,更加精确地对在野攻击利用进行追踪分类。

研究员利用Beacon Config的水印信息进行归因聚类

奇招迭出,致盲BeaconEye

从BeaconEye的原理出发,规避扫描无非三种思路:

1. 规避BeaconEye的内存扫描,让它扫不到自己

2. 寻找内置yara规则的漏洞,绕过匹配

3. 彻底修改Beacon配置的数据结构

第三种方法无疑是最治标又治本的,但也是攻击成本最大的方案,接下来要介绍的两种BeaconEye绕过方法皆是前两种思路,以最小代价多快好省地绕过BeaconEye。

利用数据类型差异“修改1字节”绕过yara规则

TeamServer与Becon DLL中表示Type的数据类型长度不一致,导致其中存在数据Gap,可填充为任意数据绕过yara规则。通过这种方式可以实现所谓的“修改1字节绕过BeaconEye”。

以32位Beacon为例:

在TeamServer的Java代码中使用长度为4 byte的Int类型来表示type,而在Beacon DLL中实际使用的只有前两位 byte。因此下图红框区域的数据可任意填充而在不影响Beacon功能的情况下实现BeaconEye的绕过。

利用堆遍历算法缺陷躲过内存扫描

BeaconEye所检测的Beacon Config数据存在于堆中,因而BeaconEye的有效性非常依赖对堆的扫描。旧版本BeaconEye存在堆块扫描不全的问题,究其根源是使用了NtQueryVirtualMemory函数进行堆的枚举。使用该函数获得的堆大小存在天然的缺陷:只会计算属性一致的内存页,而实际上堆段中的内存属性是不同且不连贯的。这导致BeaconEye在获取堆信息时实际只获取了第一个堆段的内容。但是这种问题并不一定会触发,而是有特定的触发条件。

通过调用SymInitialize函数或反复调用HeapAlloc等方式,可手动造成Beacon 配置存在于BeaconEye无法扫描的堆段的情况。但该方法的发现者在披露绕过方式后就向BeaconEye官方提交了正确的堆块遍历方法,官方在接收提交后该方法也将生效。

朝花夕拾- Beacon检测技术与对抗发展历程

简单有效-可疑内存属性与静态特征

针对可疑的内存属性进行威胁狩猎是一种常见的思路。在默认情况下Beacon会在RWX(可读可写可执行)权限的内存空间执行,这种敏感的内存属性会使得Beacon存在的内存空间更易被发现。

未使用C2 Profile下RWX的内存区域中存储的即是完整的明文Beacon。

RWX内存区域的明文Beacon

在明文Beacon中DLL头及命名管道名称字符串等静态特征明显,部分厂商利用这些静态特征进行内存中Beacon的识别扫描。

官方救火员-C2 profile改变静态特征

但通过Malleable C2 profile这一官方提供的定制化配置文件,攻击者可对Beacon的内存属性静态特征等做进一步的定制和隐匿:

· 自定义内存属性 rwx/rx

· 自定义或删除文件头

· 自定义命名管道名称、替换字符串

通过其强大而灵活的特性,C2 profile帮助Beacon成功规避大部分针对内存属性与静态特征的检测,大大增强了Beacon的隐匿能力,增加了检测的成本。

固定密钥异或?直接解密提取Beacon配置

由于某些原因,CobaltStrike在导出Beacon时仅会对其中包含的Beacon配置信息用简单的异或加密进行保护。更致命的是加密密钥是固定的,对3.x版本的CobaltStrike默认是0x69,对4.x版本的CobalStrike默认是0x2e,用户并不能通过C2 Profile等方式对加密方式或密钥进行修改。

用于匹配的固定开始特征

结构相对固定的明文配置的特征在经过异或后的值依然具有明确的特征,可通过简单的特征匹配捕获。

自己动手-魔改Beacon Config密钥

Beacon Config的默认密钥可以通过手动patch的方式进行修改,虽然较为繁琐,但只要同时对服务端与beacon二进制模板中的异或密钥同时进行修改,便可以逃过利用默认异或密钥来进行特征扫描的工具。

Beacon Config默认以固定密钥加密的孱弱的加密方式给检测工具提取Beacon配置提供了可乘之机,攻击者仍可通过魔改二进制的手段修改该密钥。但只要加密方式不变,通过爆破异或等方式依然不难提取加密后的配置。

小结

BeaconEye的检测思路切中CobaltStrike要害,除非彻底变更数据结构,不存在一劳永逸的绕过方法。未来类似BeaconEye将C2框架内的固定数据结构作为检测对象的工具将会更多出现,各种隐匿技术也会相伴而生,将这场拉锯战继续下去。

CS内存检测与对抗技术的发展,显示了攻防双方在博弈中共同成长的路径。由内存特征到Beacon配置,随着理解的加深,攻防阵地越来越接近底层;由C2profile官方定制到动手魔改,社区研究在实战驱使下补全官方未提供的对抗能力。

本文关键词:内存条检测工具有,内存条检测工具使用视频,win10内存条检测工具,内存条检测工具有哪些,内存条检测工具怎么看结果。这就是关于《内存条检测工具,内存检测工具哪个好(15个2022年最流行的负载测试工具)》的所有内容,希望对您能有所帮助!更多的知识请继续关注《犇涌向乾》百科知识网站:!


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 中国政府采购网(中国政府采购网首页)

下一篇: 线雕鼻子可反复做几次(线雕鼻可以反复补几次线)



推荐阅读