Huoji's 10c56952c6 Refactor import library parsing with SEH-safe function and README update
- Extract SEH-based import library parsing into a separate function for better modularity
- Add new processImportWithSEH and processImportWithSEH_Internal functions to handle import parsing safely
- Update README.md with more detailed project description and initial engine classification
- Improve error handling and exception management during PE import directory traversal
- Standardize library name processing with lowercase transformation
2025-03-09 04:42:28 +08:00
2025-03-06 04:05:03 +08:00

[2025]从0制作现代启发式AI杀毒引擎,附源码

前言

冲鸭安全突破3000粉丝了,应该国内大半个搞安全的人都在看了.所以整个大的活.

为什么突然想搞这个,因为在做国内安全业务的时候,我意识到,国内的平均技术水平还有很大的挖掘价值.很多人从事安全,可能也对自己的电脑上的安全软件的工作原理感兴趣.也有很多人把做安全软件视为自己的梦想.或者一个努力方向.所以我觉得,有必要花一些时间,系统的整理一下杀毒引擎的工作原理,在整理工作原理的时候我发现网上基本0资料,有也停留在2006年之前什么特征码扫描,云查杀毒.仿佛杀毒软件这玩意就是个黑盒.

简而言之,为了系统性的科普知识,而不是其他公众号那种胡言乱语,meme,免杀巫术,我花了大概两天时间,写了一个符合现代(2025年)情况的杀毒引擎.现在我将介绍他是如何工作的.以及他的缺陷是什么.并且在文末我还会开源源码,能直接VS编译.方便大家学习

杀毒引擎分类

目前查杀引擎各家瞎吹的什么NGAV无非就这几种:

  1. 云查引擎 这包括: 模糊hash引擎(ssdeep,simhash等都算),模糊hash是一种算法,能比较文件相似度(某些PPT叫病毒基因),具体可以看我之前的文章: [2021]余弦定理检测文件相似度 & 病毒样本基因检测 https://key08.com/index.php/2021/08/19/1306.html hash base引擎,没什么好说的,基于sha1或者sha256等固定唯一hash 背后的各种沙箱/人工/自动机鉴定
  2. 特征引擎
  3. ai机器学习引擎
  4. 启发式沙箱引擎

云引擎说起来非常复杂,属于是各家的核心能力,我们不讨论其实现(某些直接买了VT当云引擎的除外).所以除了1外,2,3,4往往是同时打包在一起的, 这几个引擎各有特点,比如特征引擎不具备启发能力,纯靠人力堆.启发的沙箱引擎检出弱,很容易被针对,技术落后一代.AI机器学习引擎高检出,但是也高误报,对业务造成很大影响,to B/G基本不开这玩意.

我们要做什么

我们今天所做的,是一个机器学习+沙箱行为检测的引擎,为什么不做特征引擎,因为特征引擎太普通了,如果对其感兴趣的,可以去看yara. 整个引擎的构造如下图所示:

我们需要

Description
No description provided
Readme 20 MiB
Languages
C 79.7%
C++ 7.9%
Python 3.7%
Java 2.1%
Visual Basic 6.0 1.1%
Other 5.3%