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

[论文阅读] (35)TIFS24 MEGR-APT:基于攻击表示学习的高效内存APT猎杀系统

《娜璋带你读论文》系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢。由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学术路上期待与您前行,加油。

该文是贵大0624团队论文学习笔记,分享者钟睿杰同学,未来我们每周至少分享一篇论文笔记。前一篇博客介绍了ESWA’24的轻量级入侵检测论文,结合特征工程开发更轻量级、准确高效的IDS。这篇文章将带来TIFS’24加拿大康考迪亚大学——基于攻击表示学习的高效内存APT猎杀系统(MEGR-APT),本文的主要贡献为结合更好的子图提取技术,保证子图提取的正确性和维度,减少内存消耗;构建攻击表示学习,提高准确率和运行速度。此外,由于我们还在不断成长和学习中,写得不好的地方还请海涵,希望这篇文章对您有所帮助,这些大佬真值得我们学习。fighting!

  • 欢迎关注作者新建的『网络攻防和AI安全之家』知识星球(文章末尾)

在这里插入图片描述

原文作者:Ahmed Aly,Shahrear Iqbal, et al.
原文标题:MEGR-APT: A Memory-Efficient APT Hunting System Based on Attack Representation Learnin
原文链接:https://ieeexplore.ieee.org/document/10517754
发表会议:IEEE TIFS 2024
笔记作者:贵大0624团队 钟睿杰
开源代码:https://github.com/CoDS-GCS/MEGR-APT-code


一.摘要

高级持续性威胁(APT)的隐蔽性和持续性使其成为最具挑战性的网络威胁之一。为了捕捉这种持续性,许多系统采用了基于溯源图(provenance graph, PG)的方法进行安全防护。溯源图通过使用因果关系和信息流将系统实体连接起来,从而表示系统审计日志。APT狩猎需要处理不断增长的大规模溯源图,这些图表示了几个月或几年的广泛活动,即多TB级别的图数据。

现有的APT狩猎系统通常是基于内存的,这会导致巨大的内存消耗,或者是基于磁盘的,这会导致性能下降。因此,这些系统在图的规模或时间性能方面难以扩展。

本文提出了MEGR-APT,一种可扩展的APT狩猎系统,旨在发现与发布在网络威胁情报(CTI)报告中的攻击场景(查询图)匹配的可疑子图。MEGR-APT采用两阶段处理方法进行APT狩猎:

  • (i)内存高效地提取可疑子图作为图数据库中的搜索查询;
  • (ii)基于图神经网络(GNN)和我们有效的攻击表示学习进行快速子图匹配。

我们将MEGR-APT与当前最先进的APT系统进行了比较,使用了DARPA TC3和OpTC等常用的APT基准数据集,并且还使用了真实的企业数据集进行了测试。MEGR-APT在内存消耗上实现了数量级的减少,同时在时间和准确性方面与最先进的系统表现相当。


二.引言及前置知识

MEGR-APT 通过两个过程捕获 APT:(i) 内存高效的可疑子图提取,以及 (ii) 基于图神经网络 (GNN) 和我们有效的攻击表示学习的快速子图匹配。我们的双重过程平衡了时间和内存效率之间的权衡。为了克服基于磁盘的解决方案的局限性,我们开发了一种基于资源描述框架 (RDF) 图模型的 PG 的有效表示 [13]。我们基于 RDF 的图形设计支持在较长一段时间(数月或数年)内增量构建 PG。

我们使用 DARPA TC3 [16] 和 OpTC [17] 评估 MEGR-APT,这是评估基于出处图的系统的两个最流行的基准数据集 [5]。MEGR-APT 的内存消耗减少了一个数量级,同时在时间和准确性方面实现了与 Poirot [7] 相当的性能,Poirot [7] 是一种基于图匹配的最先进的威胁搜寻系统。例如,MEGR-APT 消耗了 288 MB 的内存来搜寻 TC3 主机中的 APT,而 Poirot 使用了 21 GB 的内存。两个系统的处理时间为 6 分钟。此外,我们使用企业数据集执行了一个真实的用例。

本文贡献可以总结如下:
开发轻量级和准确性高的APT检测系统,使其能在资源受限的设备上运行。该系统用于从大型 PG 中大规模捕获 APT。

  • 内存高效的 APT 检测:构建一种从大型 PG 和给定查询图中提取可疑子图的内存高效方法一种基于攻击的表示学习模型,以低内存消耗提取与攻击场景相关的可疑子图。
  • 高效的子图匹配: 利用图神经网络(GNN) 和攻击表示学习,快速匹配可疑子图与攻击场景(查询图)。
  • 使用广泛使用的 APT 基准测试(即 DARPA TC3 和 OpTC)进行全面评估,并创建一个真实的用例。结果表明,MEGR-APT 在减少内存方面优于最先进的系统,同时实现了相当的准确性。

下面给初学者或其它小方向的同学普及下APT攻击和溯源图前置知识。

在这里插入图片描述

什么是溯源图?
溯源图是一种通过图形化方式展示事物发生过程和各环节关系的工具,通常用于追溯事件的源头或原因。

为什么要用溯源图?
APT攻击往往持续几个月甚至更长时间。攻击者通常长时间保持隐蔽,通过间隔性的攻击步骤避开传统的监控系统。

在这里插入图片描述

下面给出具体的示例:

在这里插入图片描述

APT检测系统现有工作:

  • 整体溯源图:处理通常需要大量内存和计算资源,难以扩展到大规模系统
  • 事件序列:序列化的表示可能无法完整捕捉攻击,无法检测长时间跨度的攻击
  • 溯源图子图:能够减少部分内存和计算资源开销,依赖领域知识

现有APT检测系统的局限性:

  • 内存消耗:现有的APT检测系统通常是内存型的,容易造成巨大内存消耗,难以应对大规模数据集。
  • 性能瓶颈:基于磁盘的APT检测方法可能会遭遇性能瓶颈,导致检测速度缓慢,难以实现实时或近实时检测。
  • 扩展性问题:目前大多数系统难以扩展以适应大规模数据的处理,尤其是在涉及到数TB级别的日志数据时。

因此,开发一个轻量级并且能准确识别真实网络攻击行为的APT检测迫在眉睫。研究需求:

  • 结合更好的子图提取技术,保证子图提取的正确性和维度,减少内存消耗
  • 结合更好的攻击表示学习,提高准确率和运行速度

三.本文模型

1.总体架构

本文的整体框架如下图所示,关键步骤包括:

  • 基于日志文件对溯源图进行构建并存储在图数据库中
  • 基于攻击报告构建攻击查询图,并标记出对应的IOC节点
  • 基于查询图以及对应的IOC节点对溯源图使用SPARQL语言(SPARQL Protocol and RDF Query Language)进行溯源子图提取
  • 基于RGCN模型对查询图和溯源子图进行攻击表示学习
  • 基于GNN的图匹配模型,计算出查询图与溯源子图的相似性分数产生警报

在这里插入图片描述

2.构建溯源图

(1)解析日志获到实体、事件、属性,并将实体用点、事件用边表示,添加对应的属性。

(2)为溯源图创建一个逻辑命名空间和前缀声明,以便在后续的RDF三元组生成过程中可以引用这些名称。如下例子:ex:File123 就是http://example.org/File123 的简写。

在这里插入图片描述

(3)将每一个点、每一条、每一个属性根据RDF格式添加到溯源图中。

在这里插入图片描述

3.IOC溯源子图提取

(1)将上一步骤在查询图中提取的IOC在溯源图中标记为可疑节点。

(2)基对于每一个可疑结点,对其N-hop以内的所有节点进行判断:若为进程或可疑节点则添加到三元组数组中。

(3)限制溯源图提取子图的边数以及点数。

在这里插入图片描述

4.RGCN:对图中节点编码

RGCN(Relational graph convolutional network)在处理多关系图时,能够更有效地捕捉不同类型关系下的节点特征交互,而GCN则适用于处理单一类型的图数据。如下左图,在GCN结点6的参数更新是基于1,3,4三个节点采用相同的策略,但是在实际场景中,1,3,4与6的关系是有所不同,故对其的参数更新有不一样的决策,故引入RGCN算法,如右下图,该算法考率不同的关系对当前节点进行参数更新。

在这里插入图片描述

5.基于GNN的表示学习和图匹配模型

(1)对查询图和溯源提取子图中各节点采用RGCN编码。

(2)基于各节点的编码采用全局注意力得到最终图向量表示。

(3)使用NTN(Neural Tensor Network)和Full Connect Neural Network进行相似度评分。

在这里插入图片描述


四.实验评估

1.数据集

(1)DARPA TC3
对三个主机进行两周的APT攻击模拟,使用不同的操作系统,TRACE 和 THEIA 主机运行 Linux 操作系统,而 CADETS 运行 FreeBSD 操作系统。

  • https://github.com/darpa-i2o/Transparent-Computing

在这里插入图片描述

(2)DARPA OpTC
从 1000 台 Windows 主机收集了 7 天的系统审核日志。攻方在过去三天内针对多个主机3次APT模拟攻击

  • https://github.com/FiveDirections/OpTC-data

在这里插入图片描述


2.实验结果分析

(1)内存和时间效率
在DARPA TC3数据集上评估 MEGR-APT 与 POIROT 和 DEEPHUNTER 的内存和时间效率:显示了每种攻击场景、其相应的溯源图大小和日志持续时间。可从表中观察到,MEGR-APT所占有的内存是最少的。Poirot模型检测到一个子图便会停止,但消耗资源仍较大。

在这里插入图片描述

(2)DARPA OPTC 数据集上评估
在攻击数据集中能够检测出子图;在良性数据集中不会检测子图,不存在误报。

在这里插入图片描述

(3)DARPA TC3 数据集上评估
在攻击数据集中有较高的AUC以及准确率;在良性数据集中不会检测子图,不存在误报。

在这里插入图片描述

(4)真实数据
在真实企业中执行了一个真实的使用案例,其中包含从 4000 台主机收集的内核日志数据集,时间跨度超过 6 个月。根据内部工具支持的手动调查,在具有一个恶意痕迹的主机和12个随机良性主机上测试了 MEGR-APT,其在12个良性主机中的11个中没有产生任何假警报,而它在1个良性主机中生成了两个人类报告中不存在的警报。

在这里插入图片描述

(5)消融实验

  • 子图提取方法消融:在DARPA OpTC数据集分别使用Poirot、DeepHunter和本文方法的子图提取方法进行实验,可观察本文方法准确率高、消耗资源少。

在这里插入图片描述

  • 攻击表示学习消融:使用DARPA TC3数据集分别进行有或没有的攻击表示学习实验,可观察到有攻击表示学习的方法性能表现更好。

在这里插入图片描述


五.相关工作

基于溯源图处理的三种机制包括整体溯源图分析(如 Unicorn 和 Prov-Gem,用于检测长期攻击,但易误报且缺乏可解释性)、事件序列分析(如 ATLAS 和 ANUBIS,提取事件序列分类攻击,但难以捕获完整上下文)、以及子图分析(如 SteinerLog、Holmes 和 MEGR-APT,通过规则匹配或图匹配检测恶意子图,更具解释性但依赖专家规则或查询图)。

高级持续性威胁(APT)检测可以分为四种方法:

  • 异常检测通过分析系统中偏离正常行为模式的活动来发现潜在威胁,常用统计学和无监督学习方法检测未知威胁,但容易产生高误报(如系统更新被误判);
  • 攻击检测利用已知攻击模式(如TTPs)或机器学习分类模型识别恶意活动,适用于快速检测勒索软件、网络钓鱼等已知威胁,具有误报率低的优势,但对未知攻击的检测能力有限;
  • 攻击重构从已知恶意活动出发,通过溯源图或时间序列分析重建攻击链,帮助安全分析师追踪攻击路径并制定修复策略,但需要恶意活动的起点,无法主动发现新威胁;
  • 威胁狩猎是一种主动方法,通过分析系统日志、图匹配或行为分析主动发现隐藏的APT攻击痕迹,适用于高级攻击检测和零日漏洞的搜寻,优势在于主动性强、结合领域知识,但依赖分析师经验和高质量数据。

在这里插入图片描述


六.总结及个人感受

本文提出了一种基于图神经网络(GNN)的攻击表示学习模型,用于识别与攻击查询图匹配的可疑子图。其准确并高效地发现与攻击查询图匹配的可疑子图。通过与广泛使用的APT基准数据集(DARPA TC3 和 OpTC)的验证,证明了其性能。

本文将 MEGR-APT 与现有的基于图的APT检测系统(如Poirot和DeepHunter)在DARPA TC3数据集上的表现进行了比较。结果表明,MEGR-APT在内存消耗、时间效率方面大幅优于其他系统,同时保持了相同的准确度。

本文作者提出了未来该方向工作的重点

  • 攻击查询图是基于CTI报告构建的,但对于更复杂或多样化的攻击类型,MEGR-APT的适应能力可能会受到限制。
  • 尽管目前MEGR-APT在处理大型图数据时已经表现良好,但仍有优化空间,特别是在大规模数据集的处理和实时响应能力的提升上。

溯源图作者很早就了解,但一直未进行深入实验,由于其语料规模过大,自身笔记本性能受限。未来真的要好好尝试下,对经典溯源图方法进行复现及创新。最后祝大家新年快乐,不忙的时候写篇年终总结。

在这里插入图片描述

2024年4月28日是Eastmount的安全星球——『网络攻防和AI安全之家』正式创建和运营的日子,该星球目前主营业务为 安全零基础答疑、安全技术分享、AI安全技术分享、AI安全论文交流、威胁情报每日推送、网络攻防技术总结、系统安全技术实战、面试求职、安全考研考博、简历修改及润色、学术交流及答疑、人脉触达、认知提升等。下面是星球的新人券,欢迎新老博友和朋友加入,一起分享更多安全知识,比较良心的星球,非常适合初学者和换安全专业的读者学习。

目前收到了很多博友、朋友和老师的支持和点赞,尤其是一些看了我文章多年的老粉,购买来感谢,真的很感动,类目。未来,我将分享更多高质量文章,更多安全干货,真心帮助到大家。虽然起步晚,但贵在坚持,像十多年如一日的博客分享那样,脚踏实地,只争朝夕。继续加油,再次感谢!

(By:Eastmount 2025-01-09 周四夜于贵阳 http://blog.csdn.net/eastmount/ )


前文赏析:

  • [论文阅读] (01)拿什么来拯救我的拖延症?初学者如何提升编程兴趣及LATEX入门详解
  • [论文阅读] (02)SP2019-Neural Cleanse: Identifying and Mitigating Backdoor Attacks in DNN
  • [论文阅读] (03)清华张超老师 - GreyOne: Discover Vulnerabilities with Data Flow Sensitive Fuzzing
  • [论文阅读] (04)人工智能真的安全吗?浙大团队外滩大会分享AI对抗样本技术
  • [论文阅读] (05)NLP知识总结及NLP论文撰写之道——Pvop老师
  • [论文阅读] (06)万字详解什么是生成对抗网络GAN?经典论文及案例普及
  • [论文阅读] (07)RAID2020 Cyber Threat Intelligence Modeling Based on Heterogeneous GCN
  • [论文阅读] (08)NDSS2020 UNICORN: Runtime Provenance-Based Detector for Advanced Persistent Threats
  • [论文阅读] (09)S&P2019 HOLMES Real-time APT Detection through Correlation of Suspicious Information Flow
  • [论文阅读] (10)基于溯源图的APT攻击检测安全顶会总结
  • [论文阅读] (11)ACE算法和暗通道先验图像去雾算法(Rizzi | 何恺明老师)
  • [论文阅读] (12)英文论文引言introduction如何撰写及精句摘抄——以入侵检测系统(IDS)为例
  • [论文阅读] (13)英文论文模型设计(Model Design)如何撰写及精句摘抄——以入侵检测系统(IDS)为例
  • [论文阅读] (14)英文论文实验评估(Evaluation)如何撰写及精句摘抄(上)——以入侵检测系统(IDS)为例
  • [论文阅读] (15)英文SCI论文审稿意见及应对策略学习笔记总结
  • [论文阅读] (16)Powershell恶意代码检测论文总结及抽象语法树(AST)提取
  • [论文阅读] (17)CCS2019 针对PowerShell脚本的轻量级去混淆和语义感知攻击检测
  • [论文阅读] (18)英文论文Model Design和Overview如何撰写及精句摘抄——以系统AI安全顶会为例
  • [论文阅读] (19)英文论文Evaluation(实验数据集、指标和环境)如何描述及精句摘抄——以系统AI安全顶会为例
  • [论文阅读] (20)USENIXSec21 DeepReflect:通过二进制重构发现恶意功能(恶意代码ROI分析经典)
  • [论文阅读] (21)S&P21 Survivalism: Systematic Analysis of Windows Malware Living-Off-The-Land (经典离地攻击)
  • [论文阅读] (22)图神经网络及认知推理总结和普及-清华唐杰老师
  • [论文阅读] (23)恶意代码作者溯源(去匿名化)经典论文阅读:二进制和源代码对比
  • [论文阅读] (24)向量表征:从Word2vec和Doc2vec到Deepwalk和Graph2vec,再到Asm2vec和Log2vec(一)
  • [论文阅读] (25)向量表征经典之DeepWalk:从Word2vec到DeepWalk,再到Asm2vec和Log2vec(二)
  • [论文阅读] (26)基于Excel可视化分析的论文实验图表绘制总结——以电影市场为例
  • [论文阅读] (27)AAAI20 Order Matters: 二进制代码相似性检测(腾讯科恩实验室)
  • [论文阅读] (28)李沐老师视频学习——1.研究的艺术·跟读者建立联系
  • [论文阅读] (29)李沐老师视频学习——2.研究的艺术·明白问题的重要性
  • [论文阅读] (30)李沐老师视频学习——3.研究的艺术·讲好故事和论点
  • [论文阅读] (31)李沐老师视频学习——4.研究的艺术·理由、论据和担保
  • [论文阅读] (32)南洋理工大学刘杨教授——网络空间安全和AIGC整合之道学习笔记及强推(InForSec)
  • [论文阅读] (33)NDSS2024 Summer系统安全和恶意代码分析方向相关论文汇总
  • [论文阅读] (34)EWAS2024 基于SGDC的轻量级入侵检测系统
  • [论文阅读] (35)TIFS24 MEGR-APT:基于攻击表示学习的高效内存APT猎杀系统

相关文章:

[论文阅读] (35)TIFS24 MEGR-APT:基于攻击表示学习的高效内存APT猎杀系统

《娜璋带你读论文》系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢。由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学术路上期…...

12 USART串口通讯

1 串口物理层 两个设备的“DB9接口”之间通过串口信号建立连接,串口信号线中使用“RS232标准”传输数据信号。由于RS232电平标准的信号不能直接被控制器直接识别,所以这些信号会经过“电平转换芯片”转换成控制器能识别的“TTL校准”的电平信号&#xff…...

CF 368A.Sereja and Coat Rack(Java实现)

问题分析 简而言之,小明要邀请m个绅士到家,家里有n个挂衣钩,一个挂衣钩要支付i元,如果挂衣钩不够了就要给每个绅士赔d元 思路分析 所以思路就很清楚了,获取n,d,m的值,并用数组存放每…...

清华大学、字节跳动等单位联合发布最新视觉语言动作模型RoboVLMs

近年来,视觉语言基础模型(Vision Language Models, VLMs)大放异彩,在多模态理解和推理上展现出了超强能力。现在,更加酷炫的视觉语言动作模型(Vision-Language-Action Models, VLAs)来了&#x…...

网络安全、Web安全、渗透测试之笔经面经总结

本篇文章涉及的知识点有如下几方面: 1.什么是WebShell? 2.什么是网络钓鱼? 3.你获取网络安全知识途径有哪些? 4.什么是CC攻击? 5.Web服务器被入侵后,怎样进行排查? 6.dll文件是什么意思,有什么…...

.NET Core NPOI 导出图片到Excel指定单元格并自适应宽度

NPOI:支持xlsx,.xls,版本>2.5.3 XLS:HSSFWorkbook,主要前缀HSS, XLSX:XSSFWorkbook,主要前缀XSS,using NPOI.XSSF.UserModel; 1、导出Excel添加图片效果&#xff0…...

python bs4 selenium 查找a href=javascript:();的实际点击事件和url

在使用 BeautifulSoup 和 Selenium 时,处理 href"javascript:;" 的链接需要一些额外的步骤,因为这些链接不直接指向一个 URL,而是通过 JavaScript 代码来执行某些操作。这可能包括导航到另一个页面、触发模态窗口、显示/隐藏内容等…...

三 BH1750 光感驱动调试1

一 扫描设备 查看手册 BH1750 光感模块 寄存器地址为 0x23 官方手册 : http://rohmfs.rohm.com/en/products/databook/datasheet/ic/sensor/light/bh1750fvi-e.pdf su 然后用 i2cdetect 扫描设备: 拨,插 对比, 探测设备挂载在 /dev/i2c-5 上, 从设备地址为 0x23 二 …...

UE材质节点Fresnel

Fresnel节点 ExponentIn 控制边缘透明度 BaseReflectFractionIn 控制中心透明度...

linux的大内核锁与顺序锁

大内核锁 Linux大内核锁(Big Kernel Lock,BKL)是Linux内核中的一种锁机制,用于保护内核资源,以下是关于它的详细介绍: 概念与作用 大内核锁是一种全局的互斥锁,在同一时刻只允许一个进程访问…...

用户注册模块用户校验(头条项目-05)

1 用户注册后端逻辑 1.1 接收参数 username request.POST.get(username) password request.POST.get(password) phone request.POST.get(phone) 1.2 校验参数 前端校验过的后端也要校验,后端的校验和前端的校验是⼀致的 # 判断参数是否⻬全 # 判断⽤户名是否…...

面向对象的基本概念

本篇,来介绍面向对象的基本概念。 1 面向过程与面向对象 面向过程与面向对象,是两种不同的编程思想。 1.1 面向过程 面向过程的思路,是按照问题的解决步骤,将程序分解为一个个具体的函数或过程,然后依次调用这些函数来实现程序的功能。 面向对象的程序设计,程序的执行…...

深度学习每周学习总结R4(LSTM-实现糖尿病探索与预测)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客R6中的内容,为了便于自己整理总结起名为R4🍖 原作者:K同学啊 | 接辅导、项目定制 目录 0. 总结1. LSTM介绍LSTM的基本组成部分如何理解与应用LSTM 2. 数据预处理3. 数…...

如何使用 PHP 操作亚马逊 S3 对象云存储

以下是使用PHP与亚马逊S3对象云存储(也有其他支持S3协议的云存储服务,原理类似)进行交互的常见文档接口使用示例,涵盖了基本的操作如上传文件、下载文件、删除文件、列举文件等内容。 ### 前提条件 1. 首先,你需要获取…...

26_Redis RDB持久化

从这个模块开始带领大家来学习Redis分布式缓存的相关内容,主要学习目标见下: 数据丢失问题:实现Redis数据持久化(RDB和AOF)并发能力问题:搭建Redis主从集群,实现读写分离故障恢复问题:利用Redis哨兵模式,实现健康检测和自动恢复存储能力问题:搭建Redis分片集群,利用…...

标准Android开发jdk和gradle和gradle AGP和AndroidStudio对应版本

还在为用什么gradle版本烦恼吗?编译不过IDE不开始下载第三方库吗?是时候匹配下你的gradle编译版本了: 1.Gradle 各版本支持的 JDK 版本范围如下: Gradle 版本最低支持 JDK最高支持 JDK7.0 - 7.6JDK 8JDK 178.0 - 8.2JDK 11JDK 1…...

太速科技-628-基于VU3P的双路100G光纤加速计算卡

基于VU3P的双路100G光纤加速计算卡 一、板卡概述 基于Xilinx UltraScale16 nm VU3P芯片方案基础上研发的一款双口100 G FPGA光纤以太网PCI-Express v3.0 x16智能加速计算卡,该智能卡拥有高吞吐量、低延时的网络处理能力以及辅助CPU进行网络功能卸载的能力…...

潜力巨大但道路曲折的量子计算

近一年来,由于工作的原因参观访问了一些量子产业园,接触了量子加密计算机、量子云计算等非常炫酷的概念性产品,这与自己一直认为的“量子技术仍然处于实验室研究阶段”的基本判断与认知产生了强烈的冲突,一刹那间,心中…...

LabVIEW驱动电机实现样品自动搜索

利用LabVIEW控制电机驱动相机在XY平面上进行扫描,以检测样品位置。样品最初可能位于相机视野范围之外,需要实现自动搜索样品位置并完成精确定位扫描的功能。该系统需具有以下特点: 高效搜索:能够快速确定样品位置,缩短…...

React Native Hooks开发指南

一、什么是Hooks Hooks 是 React 16.8 的新增特性。在不编写 class 的情况下使用 state 以及其他的 React 特性。Hooks 是一种在函数式组件中使用有状态函数的方法。 二、类组件 componentDidMount、componentDidUpdate 和 componentWillUnmount 这三个函数的组合。 三、常用…...

Cursor实现用excel数据填充word模版的方法

cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句,它能够让用户直接在浏览器内练习SQL的语法,不需要安装任何软件。 链接如下: sqliteviz 注意: 在转写SQL语法时,关键字之间有一个特定的顺序,这个顺序会影响到…...

docker 部署发现spring.profiles.active 问题

报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...

MySQL 8.0 事务全面讲解

以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南:从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案

在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。​ 一、系统核心功能架构&…...

数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !

我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...

协议转换利器,profinet转ethercat网关的两大派系,各有千秋

随着工业以太网的发展,其高效、便捷、协议开放、易于冗余等诸多优点,被越来越多的工业现场所采用。西门子SIMATIC S7-1200/1500系列PLC集成有Profinet接口,具有实时性、开放性,使用TCP/IP和IT标准,符合基于工业以太网的…...