【信息科学与工程学】【安全领域】第三十八篇 软件(联网和非联网形态)病毒/木马/蠕虫/信息窃取/漏洞发现/集成电路的软硬件缺陷发现的算法模型01
软件(联网和非联网形态)病毒/木马/蠕虫/信息窃取/漏洞发现/集成电路的软硬件缺陷发现的算法模型
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0001 |
病毒 |
基于代码混淆与变形引擎的生成模型 |
多态病毒引擎 |
1. 指令分析:对原始病毒体代码进行反汇编,识别可替换/等价指令序列。公式: |
检测逃避强度:高。变形后哈希匹配率 < 0.1%。代码熵 > 7.5 (以Shannon熵计)。 |
信息论(熵)、图论(控制流图)、密码学(简单流密码)、组合数学(置换) |
1. Windows PE文件感染 |
常量:原始病毒体代码 |
状态: |
集合:指令集、文件集。 |
指令级语法保留,语义等价变换。汇编语言特征明显。 |
1. 触发条件满足。 |
顺序(文件遍历)+ 随机序列(引擎内部操作) |
时间:O(n*m),n为文件数,m为文件平均大小。 |
X86 CPU:执行常规计算指令(ADD, MOV, XOR)、跳转指令(JMP, CALL, Jcc)、系统调用指令(INT, SYSENTER)。变体生成阶段不涉及特定硬件指令。 |
C代码片段(核心变形逻辑): |
|
Virus1-0002 |
木马 |
基于通信加密与行为隐藏的远程控制模型 |
反向连接木马通信模型 |
1. 信标(Beacon):木马启动后,尝试连接C2服务器。使用指数退避算法重试。间隔 |
隐蔽性:高。流量可模仿正常HTTPS。检测率依赖于C2存活状态和流量分析深度。 |
网络协议、密码学(对称加密)、控制理论(反馈循环)、指数退避算法 |
1. 远程桌面控制 |
常量:C2地址 |
状态: |
逻辑:连接成功/失败判断。 |
网络协议格式(HTTP头,DNS查询),加密载荷的Base64编码,JSON/XML命令格式。 |
1. 初始化:加载配置。 |
顺序(命令执行)+ 并行序列(可能多线程处理命令与心跳) |
时间:通信延迟为主。O(命令执行时间)。 |
通用CPU:执行网络I/O系统调用(socket, connect, send, recv)、加密指令(AES-NI)、文件I/O系统调用。 |
Go代码片段(连接与心跳): |
|
Virus1-0003 |
蠕虫 |
基于拓扑扫描与漏洞利用的自主传播模型 |
随机扫描/路由拓扑扫描蠕虫 |
1. 目标生成:随机生成IP地址 |
传播速度:快。扫描速率 |
流行病学模型(SIR模型)、随机过程、图论(网络拓扑)、博弈论(传播策略) |
1. 互联网规模IPv4随机扫描 |
常量:扫描端口列表 |
状态: |
集合:IP地址空间,开放端口集合。 |
网络协议数据包构造(SYN包,特定漏洞触发请求包),Shellcode特征。 |
1. 初始化随机种子IP或从配置文件读取初始列表。 |
并行序列(多线程扫描)+ 随机序列(IP生成) |
时间:O(N * m),N为地址空间大小,m为端口数。但通过并行可加速。 |
通用CPU:密集执行网络I/O系统调用、字符串匹配运算、数据包构造。多线程并发。 |
Python伪代码(扫描循环): |
|
Virus1-0004 |
信息窃取 |
基于键盘记录与屏幕捕获的数据采集模型 |
键盘记录钩子与屏幕截图模型 |
1. 钩子安装:在操作系统中安装键盘/鼠标事件钩子(Hook)。函数 |
数据完整性:高。可捕获几乎所有键盘输入。时间分辨率可达毫秒级。截屏质量可调(分辨率、色深)。 |
操作系统事件驱动模型、钩子机制、计算机图形学(屏幕抓取)、数据压缩理论 |
1. 窃取登录凭证(账号密码) |
常量:钩子类型标识 |
状态: |
逻辑:事件触发条件判断。 |
系统API调用,事件消息格式(如Windows消息WM_KEYDOWN),位图文件格式。 |
1. 程序启动,安装系统钩子。 |
中断驱动(钩子回调)+ 顺序/并行序列(记录、截图、发送可并行) |
时间:钩子回调为O(1),截图操作O(屏幕像素数),压缩O(n log n)。 |
X86/ARM CPU:执行系统调用(安装钩子、截图)、中断处理(钩子回调函数)、图形API调用(BitBlt等)、内存和文件I/O。 |
C++代码片段(Windows键盘钩子): |
|
Virus1-0005 |
漏洞发现 |
基于符号执行的路径探索与约束求解模型 |
动态符号执行(如KLEE) |
1. 程序加载与插桩:加载目标程序 |
代码覆盖率:高,可达到高路径覆盖率。误报率:依赖约束求解精度和漏洞规则定义,可能较高。 |
程序分析理论、符号计算、约束求解(SMT)、自动机理论(程序状态)、可满足性模理论(SMT) |
1. 文件格式解析器漏洞挖掘(PDF, Office) |
常量:目标程序 |
状态: |
逻辑:路径约束是逻辑公式的合取。 |
中间表示语言(如LLVM IR),SMT-LIB语言(用于与求解器交互)。 |
1. 初始化:将程序入口状态 |
顺序(指令模拟) + 并行(可并行探索不同路径) |
时间:最坏情况下是指数级(路径爆炸)。实际中通过启发式剪枝。 |
通用CPU:密集的整数和逻辑运算,内存访问模拟,与约束求解器(常为单独进程)的进程间通信。求解器本身涉及大量CPU计算。 |
C代码片段(简化路径探索): |
|
Virus1-0006 |
木马 |
基于进程注入与API挂钩的持久化模型 |
DLL注入与API钩子模型 |
1. 打开目标进程:获取目标进程ID |
隐蔽性:中。可被进程监控工具发现。注入成功率依赖于权限和防护软件。挂钩粒度可到函数级别。 |
Windows PE文件格式、进程内存管理、动态链接库(DLL)机制、汇编指令(JMP) |
1. 游戏外挂(修改内存、调用) |
常量:目标进程名 |
状态: |
逻辑:进程权限检查。 |
系统API调用序列,PEB(进程环境块)结构,汇编跳转指令(E9 JMP)。 |
1. 枚举进程快照 |
严格顺序执行 |
时间:O(进程数 + 内存操作),较快。 |
X86/ARM CPU:执行系统调用(OpenProcess, VirtualAllocEx, WriteProcessMemory, CreateRemoteThread)、内存屏障操作、修改代码段权限(VirtualProtectEx)。挂钩时需要原子地修改内存指令。 |
C++代码片段(DLL注入): |
|
Virus1-0007 |
蠕虫 |
基于社交工程与链接点击的传播模型 |
钓鱼邮件蠕虫传播模型 |
1. 联系人收集:读取受感染主机的邮件客户端地址簿、社交软件联系人列表。 |
传播效率:依赖社交工程成功率。点击率(CTR)通常1%-10%。感染率 |
社会工程学、图论(社交网络)、概率模型(点击率)、自然语言处理(模板生成) |
1. 大规模垃圾邮件传播 |
常量:邮件模板库 |
状态: |
集合:联系人集合,邮件模板集合。 |
电子邮件格式(RFC 5322),HTML正文,社会工程学话术(自然语言),链接缩短服务URL。 |
1. 遍历本地邮件存储(如Outlook .pst文件)或调用API获取联系人列表 |
顺序(遍历联系人) + 并行(可多线程发送) |
时间:O(n),n为联系人数量。受网络延迟和SMTP服务器响应影响大。 |
通用CPU:执行文件I/O(读取联系人)、网络I/O(SMTP)、字符串处理(邮件构造)。 |
Python伪代码(发送循环): |
|
Virus1-0008 |
信息窃取 |
基于浏览器内存扫描的凭据提取模型 |
浏览器进程内存凭证抓取模型 |
1. 定位浏览器进程:枚举进程列表,查找浏览器进程(如 |
准确性:高,可获取内存中现成的明文密码。覆盖范围:取决于浏览器版本和存储方式。 |
进程内存布局、浏览器内部存储机制(SQLite, JSON, 序列化对象)、字符串搜索算法、加密解密流程 |
1. 窃取浏览器保存的网站登录密码 |
常量:浏览器进程名列表 |
状态: |
集合:进程集合,内存区域集合,凭据集合。 |
浏览器内部数据结构序列化格式,SQLite数据库文件格式,JSON字符串,HTTP Cookie格式。 |
1. 获取进程快照 |
PROCESS_QUERY_INFORMATION, FALSE, pid) |
顺序(遍历进程和内存区域) |
时间:O(P * M * L),P为进程数,M为内存区域数,L为区域大小。较慢,尤其是大内存进程。 |
X86/ARM CPU:密集的系统调用(OpenProcess, VirtualQueryEx, ReadProcessMemory)、内存中字节扫描(REP SCASB等指令或软件算法)、字符串比较。 |
|
Virus1-0009 |
漏洞发现 |
基于模糊测试的输入生成与异常监控模型 |
覆盖引导的灰盒模糊测试(如AFL) |
1. 种子输入队列初始化:初始种子集 |
代码覆盖率:较高,能渐进式提高。漏洞发现能力:强,尤其对内存破坏类漏洞。效率高于纯随机模糊测试。 |
遗传算法(输入变异与选择)、程序控制流图(边覆盖)、概率统计、反馈循环 |
1. 文件解析器模糊测试(图像、视频、文档) |
常量:初始种子集 |
状态: |
集合:种子队列(可视为优先级队列),覆盖位图(集合的位表示)。 |
插桩点插入的汇编代码,用于记录边覆盖。输入数据的二进制或文本格式。 |
1. 初始化: |
= local_bm |
顺序(种子选择与变异) + 并行(可并行执行多个测试用例) |
时间:O(执行次数 * 程序运行时间)。可通过并行化大幅提升。 |
通用CPU:主要开销在于目标程序的反复执行。插桩代码会增加额外开销(记录边覆盖的位操作)。变异过程是纯CPU计算(位操作、随机数生成)。 |
|
Virus1-0010 |
集成电路缺陷 |
基于形式化验证的属性检查模型 |
模型检查(Model Checking) |
1. 系统建模:将硬件设计(如RTL代码)抽象为有限状态机(FSM)模型 |
完备性:理论上可穷尽所有状态,但受状态爆炸限制。精度:高,能给出确定性是/否答案。 |
时序逻辑(LTL, CTL)、自动机理论(Büchi自动机)、图论(状态空间图)、不动点定理 |
1. 硬件死锁检测 |
常量:系统模型 |
状态: |
逻辑:时序逻辑公式的语义。 |
时序逻辑公式(LTL: G, F, X, U; CTL: AX, EX, AG, EG, AU, EU),硬件描述语言(Verilog, VHDL)的状态机模型。 |
1. 将RTL转换为一个标签迁移系统(LTS)或Kripke结构 |
顺序(深度或广度优先遍历) |
时间:最坏情况O( |
S |
+ |
|
Virus1-0011 |
病毒 |
基于入口点模糊(EPO)与代码整合的感染模型 |
入口点模糊病毒 |
1. 目标定位:感染可执行文件(PE, ELF),找到其原始入口点(Original Entry Point, OEP) |
感染成功率:高,对许多不校验完整性的程序有效。隐蔽性:中,修改入口点可被静态分析发现。 |
PE/ELF文件格式、代码重定位、加密解密、控制流劫持 |
1. 感染Windows PE可执行文件(EXE, DLL, SCR) |
常量:病毒体代码 |
状态: |
代数:计算文件偏移与虚拟地址(VA/RVA)转换: |
PE文件头结构(IMAGE_DOS_HEADER, IMAGE_NT_HEADERS),节区表(IMAGE_SECTION_HEADER),汇编跳转指令(E9 JMP)。 |
1. 打开目标文件,读取DOS头和PE头。 |
严格顺序执行(感染过程) |
时间:O(文件大小),主要是文件I/O操作。 |
通用CPU:执行文件读写系统调用、内存中计算地址偏移、加密解密运算(如果加密)。感染过程是用户态操作,不涉及特殊指令。 |
C代码片段(修改PE入口点): |
|
Virus1-0012 |
木马/信息窃取 |
基于网络流量嗅探与协议解析的模型 |
网络嗅探与协议分析木马 |
1. 网卡设置为混杂模式:调用 |
信息获取范围:局域网内或本机流量。精度:依赖协议解析准确性,对加密流量(HTTPS)无效。 |
计算机网络协议栈(TCP/IP模型)、正则表达式、数据包过滤(BPF)、网络嗅探原理 |
1. 窃取局域网内明文传输的网站密码 |
常量:网络接口名 |
状态: |
|
Virus1-0012 |
木马/信息窃取 |
基于网络流量嗅探与协议解析的模型 |
网络嗅探与协议分析木马 |
5. (接上)信息重组:对于跨多个数据包的应用层会话(如TCP流重组),需要将属于同一连接的数据包按序列号重组。 |
对加密流量(TLS/SSL)捕获的敏感信息精度为0。 |
6. 数据回传:将提取的敏感信息加密 |
7. 内部网络监控与合规检查 |
5. 物联网设备明文协议分析 |
变量:pcap句柄 |
状态: |
概率:特定协议或敏感信息出现的频率。 |
网络协议格式(如HTTP头,FTP命令),正则表达式模式。 |
5. (接上)应用层解析:对重组后的TCP流数据 |
顺序(数据包到达顺序,但需重组)+ 并行(可多线程处理不同连接) |
时间:O(P),P为数据包数量,协议解码是常数时间。重组和正则匹配可能耗时。 |
通用CPU:执行网络数据包捕获的系统调用(如libpcap底层使用 |
C代码片段(使用libpcap捕获): |
dst_port == 80) { // HTTP |
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0013 |
勒索软件 |
基于非对称加密的文件锁定模型 |
混合加密勒索模型 |
1. 密钥生成:在受害者机器上生成一个唯一的对称密钥 |
加密强度:高。使用RSA-2048/AES-256时,若无私钥 |
公钥密码学(RSA)、对称密码学(AES)、文件系统操作、博弈论(勒索策略) |
1. 针对企业服务器的加密勒索 |
常量:攻击者公钥 |
状态: |
集合:目标文件集合,排除目录集合。 |
文件I/O操作,加密API调用,勒索信文本(自然语言,多国语言)。 |
1. 启动: |
顺序(文件遍历)+ 并行序列(多线程加密文件) |
时间:O(N * F_size),N为文件数,F_size为平均文件大小。加密是大头。 |
通用CPU:密集的文件读写系统调用、加密指令(AES-NI, RSA加速指令如 |
Python伪代码(加密核心): |
|||
|
Virus1-0014 |
木马/僵尸网络 |
基于资源窃取的加密货币挖矿模型 |
门罗币(Monero)CPU挖矿僵尸 |
1. C2通信与配置获取:与C2服务器建立连接,获取挖矿配置:矿池地址 |
Nonce) < Target |
算力:取决于感染的CPU核心数与性能。隐匿性:中,高CPU占用可能被用户察觉。收益模型:收益 |
工作量证明(PoW)共识算法、哈希函数(RandomX, Cryptonight)、概率论(寻找Nonce是伯努利试验)、资源调度 |
1. 感染企业服务器进行隐秘挖矿 |
常量:C2地址(初始),挖矿算法标识 |
状态: |
概率:每次哈希尝试找到有效Share的概率为 |
矿池通信协议(Stratum协议,JSON-RPC),挖矿算法内核的汇编/C代码,配置文件(JSON格式)。 |
1. 连接C2: |
顺序(任务计算)+ 并行(多CPU核心并行计算) |
时间:无限循环,计算密集型。复杂度取决于哈希函数,RandomX单次哈希约2ms(现代CPU)。 |
X86 CPU:执行挖矿算法的特定指令。RandomX大量使用AES-NI指令( |
C代码片段(简化挖矿循环): |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0015 |
供应链攻击 |
基于依赖混淆与恶意包发布的投毒模型 |
依赖混淆攻击(Dependency Confusion) |
1. 信息收集:扫描目标项目(如 |
攻击成功率:依赖目标项目配置,若未正确配置私有源优先级,则成功率较高。误报率:低(针对性地攻击使用私有包的项目)。 |
软件供应链理论、依赖解析算法(语义版本控制)、博弈论(名称抢注) |
1. 入侵企业CI/CD流水线 |
常量:目标项目配置文件路径、公共仓库API端点、恶意载荷 |
状态: |
集合论:私有包名集合、公共包名集合的差集运算。 |
软件包配置文件语法(JSON, YAML)、安装脚本语言(Python, JavaScript, Shell)、公共仓库API调用。 |
1. 下载或爬取目标代码仓库。 |
sh’) |
顺序(扫描-查询-发布)+ 事件驱动(等待构建触发) |
时间:O(n),n为依赖数量。主要开销在网络请求和包发布。 |
通用CPU:执行网络I/O(API请求、包上传)、文件I/O(读写配置文件、包文件)、脚本解释(Python, Node.js)。载荷执行时可能调用系统命令。 |
|
Virus1-0016 |
AI安全/对抗攻击 |
基于梯度符号的对抗样本生成模型 |
快速梯度符号法(FGSM) |
1. 前向传播:将干净输入 |
攻击强度:由 |
η |
_∞ ≤ ε`。 |
梯度下降优化、线性扰动假设、对抗样本的线性解释 |
1. 误导图像分类器(如将“停车标志”识别为“限速标志”) |
常量:原始输入 |
状态: |
微积分:梯度计算 |
深度学习框架API调用(如PyTorch的 |
1. 前向传播: |
||
|
Virus1-0017 |
硬件缺陷(侧信道) |
基于缓存计时差异的密钥提取模型 |
缓存计时攻击(如Flush+Reload) |
1. 监视目标地址:攻击者与受害者共享内存(如共享库)。确定受害者可能访问的敏感代码/数据地址 |
信息泄露率:每次测量泄露1比特信息(命中/未命中)。成功率:高,在可控环境中(如云服务器)可接近100%。时间分辨率:需要高精度计时器(如 |
计算机体系结构(缓存层次、一致性)、统计推断、密码学实现细节 |
1. 跨VM边界提取AES、RSA密钥(云环境) |
常量:目标内存地址 |
状态: |
概率与统计:假设受害者访问 |
内联汇编( |
1. 攻击者进程:通过 |
ρ |
|
顺序(迭代采样)+ 随机序列(受害者访问时间不确定) |
时间:O(N * |
|
Virus1-0018 |
漏洞发现(自动化利用) |
基于符号执行与约束求解的漏洞利用生成 |
自动化漏洞利用生成(AEG) |
1. 漏洞点定位:通过模糊测试、符号执行或静态分析发现一个潜在漏洞点 |
成功率:高度依赖约束求解能力和漏洞的可利用性建模。对于简单漏洞(如直接跳转到shellcode)成功率较高。 |
程序分析、符号执行、约束求解、控制流劫持理论、ROP编译 |
1. 为栈缓冲区溢出生成shellcode注入利用 |
常量:目标程序 |
状态: |
逻辑:路径约束和利用约束是逻辑公式的合取。 |
中间表示语言(如VEX, LLVM IR)、SMT-LIB语言、ROP链描述。 |
1. 符号执行引擎从入口点开始运行,记录路径约束 |
顺序(符号执行收集路径)+ 搜索(在gadget空间搜索可行链) |
时间:最坏情况下是指数级,受路径长度、gadget数量和约束求解复杂度影响。 |
通用CPU:密集的符号模拟和约束求解运算。求解器(如Z3)是计算和内存密集型应用,涉及大量的逻辑推理和搜索。 |
伪代码(核心思路): |
|
Virus1-0019 |
无文件攻击/内存驻留 |
基于进程镂空与模块反射加载的隐形模型 |
进程镂空(Process Hollowing) |
1. 创建合法进程(挂起状态):使用 |
隐蔽性:高。进程名为合法系统进程,恶意代码在进程内存中,无磁盘文件。检测难度大。 |
Windows进程与内存管理、PE文件格式、API挂钩(Zw系列) |
1. 绕过传统文件特征码查杀 |
常量:合法进程路径 |
状态: |
地址计算:虚拟内存地址转换,RVA到VA的计算: |
Windows Native API调用( |
1. |
严格顺序执行 |
时间:O(恶意PE文件大小),主要是内存分配和写入操作。 |
x86/x64 CPU:执行进程创建、内存管理、线程上下文操作的系统调用。恶意代码本身在目标进程上下文执行,使用其权限。 |
C++代码片段(核心步骤): |
|
Virus1-0020 |
移动端恶意软件 |
基于权限滥用与短信拦截的金融木马模型 |
Android权限滥用与短信拦截木马 |
1. 诱导安装与权限获取:通过伪装成正常应用(如游戏、工具)诱导用户安装。在 |
窃取成功率:高,特别是针对安全意识薄弱的用户。绕过检测:可通过动态加载代码、字符串加密、使用合法证书签名提高隐蔽性。 |
Android安全模型(权限机制、组件通信)、社会工程学、UI自动化 |
1. 窃取短信验证码(银行、支付应用) |
常量:C2服务器URL、拦截关键词列表 |
状态: |
逻辑:条件判断(短信内容匹配关键词、应用包名匹配)。 |
Android组件声明(XML),Java/Kotlin代码,HTTP/JSON通信。 |
1. 用户安装应用后,启动Activity动态申请危险权限。 |
事件驱动(异步接收广播和事件) |
时间:O(1)处理单条短信或事件。网络通信是主要延迟。 |
ARM CPU (Android): 执行Java/Kotlin代码,通过Android Runtime (ART)解释或JIT编译成本地指令。涉及系统服务调用(Binder IPC)、网络I/O。 |
Kotlin代码片段(短信接收): |
|
Virus1-0021 |
物联网(IoT)恶意软件 |
基于弱口令爆破与默认凭证的僵尸网络模型 |
IoT僵尸网络(如Mirai变种) |
1. 横向扫描:感染节点生成随机IP地址段(通常针对ISP的常见网段),或使用预设的硬编码IP段列表 |
感染速度:快,依赖于网络规模和弱口令设备的比例。攻击强度:僵尸网络规模越大,DDoS威力越强。 |
暴力破解算法、网络协议、分布式拒绝服务(DDoS)攻击模型、流行病学模型 |
1. 组建大型DDoS僵尸网络(用于勒索或竞争) |
常量:默认凭证字典 |
状态: |
集合:IP地址空间、凭证对集合、端口集合。 |
Telnet/SSH协议交互命令,HTTP请求,二进制文件下载命令( |
1. 生成目标IP: |
并行序列(多线程扫描爆破)+ 顺序(单个会话内的登录流程) |
时间:O(N_ips * N_ports * N_creds),但通过大规模并行可加速。 |
嵌入式CPU (MIPS/ARM): 执行基本的网络I/O、字符串比较、进程创建。通常资源有限,恶意软件代码精简。DDoS攻击时主要发送网络数据包。 |
C代码片段(Telnet爆破尝试): |
|
Virus1-0022 |
信息窃取(云环境) |
基于元数据服务与角色凭证窃取的云横向移动模型 |
云实例元数据服务滥用 |
1. 识别云环境:通过检查特定文件(如 |
信息准确性:100%,直接从云平台官方服务获取。攻击影响:严重,可能导致整个云账户沦陷。 |
云安全模型(身份与访问管理,IAM)、元数据服务设计、横向移动最小权限原则 |
1. 从被入侵的Web服务器窃取IAM角色凭证 |
常量:元数据服务IP地址(如169.254.169.254)、API端点(如 |
状态: |
集合:可访问的云资源集合(实例、存储桶等)。 |
HTTP请求格式、云服务商API调用(通常为RESTful JSON)、临时凭证格式(JSON)。 |
1. 检测: |
顺序(步骤依赖前一步结果) |
时间:O(1)获取凭证,后续操作取决于云API调用延迟和资源数量。 |
通用CPU:执行HTTP客户端请求(cURL库)、JSON解析、云服务SDK中的逻辑。无特殊硬件需求。 |
Shell脚本示例(AWS IMDSv1): |
|
Virus1-0023 |
漏洞发现(静态分析) |
基于污点分析与数据流图的漏洞模式匹配模型 |
静态污点分析(Taint Analysis) |
1. 构建程序表示:将源代码或二进制程序转换为中间表示(IR),并构建控制流图(CFG)和调用图(CG)。 |
精度:较高,但可能产生误报(过度近似)和漏报(分析不全面)。覆盖率:依赖于分析的范围(过程内/间)。 |
数据流分析、图论(可达性分析)、不动点计算、格理论 |
1. SQL注入漏洞检测 |
常量:污点源规则集 |
状态: |
集合:污点标签集合,程序点集合。 |
中间表示语言(如LLVM IR, Jimple)、数据流方程、漏洞报告格式。 |
1. 对于每个函数,建立数据流方程: |
顺序(迭代求解数据流方程) |
时间:最坏情况下O(N * |
E |
),N为变量/节点数, |
|
Virus1-0024 |
蠕虫(高级可持续威胁) |
基于零日漏洞与社交工程组合的定向传播模型 |
鱼叉式钓鱼邮件结合零日漏洞利用链 |
1. 目标情报收集:通过开源情报(OSINT)收集目标组织员工信息,包括姓名、职位、邮箱地址、社交媒体资料,形成高价值目标列表 |
攻击成功率:针对特定目标,成功率远高于广撒网。隐蔽性:极高,难以被传统防御手段检测。 |
社会工程学、漏洞利用技术、威胁情报分析、网络杀伤链模型 |
1. 针对政府机构的APT攻击 |
常量:目标列表 |
状态: |
图论:目标组织的社交网络图。 |
鱼叉式钓鱼邮件的自然语言(高度个性化)、诱饵文档格式(Office, PDF)、漏洞利用代码(Shellcode)。 |
1. 从LinkedIn、公司网站收集目标员工 |
顺序(攻击链步骤)+ 事件驱动(等待目标交互) |
时间:前期侦察和武器化耗时较长,从几天到数月。初始感染是瞬时的。 |
通用CPU:漏洞利用涉及对软件(如PDF阅读器)内存的精密操作,触发异常控制流。Shellcode执行常规系统调用。 |
概念性描述:攻击链高度定制化,代码不公开。核心是利用漏洞的Exploit代码,常用C/ASM编写,精确控制内存布局和代码执行流。例如,一个典型的ROP链布局在PDF的JavaScript或字体解析数据中。 |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0025 |
病毒/逃避技术 |
基于控制流混淆与不透明谓词的抗分析模型 |
控制流平坦化与不透明谓词混淆 |
1. 函数分割:将原始函数 |
(x*x % 2 == 1) |
混淆强度:高,显著增加逆向工程和静态分析的难度。开销:引入额外分支和计算,导致性能下降约10%-50%。 |
控制流图理论、布尔逻辑、不可判定性理论(构造难以静态分析但动态恒定的谓词) |
1. 商业软件保护(防止破解和逆向) |
常量:原始基本块集合 |
状态: |
图论:原始CFG到扁平化后状态机的转换。 |
高级语言(C/C++)的 |
1. 分析阶段:对函数 |
顺序(基本块内代码)+ 受控的随机/伪随机跳转(由 |
时间复杂度:增加常数因子,每个基本块执行前后多了状态判断和跳转。 |
|
|
Virus1-0026 |
木马/后门 |
基于域名生成算法(DGA)的弹性C2通信模型 |
时间种子的确定性域名生成算法 |
1. 种子获取:从确定性源获取种子 |
Month |
Day) |
Month |
Day |
key) |
弹性:高,通过改变种子每日更换C2域名,使黑名单失效。可预测性:对攻击者可控,因算法和种子已知;对防御者,若算法未逆向则难以预测。 |
密码学安全伪随机数生成器、哈希函数、时间同步 |
|||||
|
Virus1-0027 |
信息窃取/凭据获取 |
基于内存扫描与正则表达式匹配的通用凭证提取模型 |
进程内存通用凭证抓取器 |
1. 进程枚举与筛选:枚举系统所有进程 |
查全率:依赖于模式集的完备性和内存布局。可能提取到大量误报(非凭证的字符串)。查准率:通过启发式验证可提高。 |
正则表达式、字符串匹配算法(如Boyer-Moore)、进程内存管理、密码学(加密存储格式) |
1. 提取浏览器保存的密码和Cookie |
常量:目标进程名模式列表 |
状态: |
集合:进程集合,内存区域集合,匹配结果集合。 |
正则表达式语法,进程内存映射的文本表示(如 |
1. |
顺序(遍历进程和内存区域) |
时间:O(Σ(P * M_i)),P为进程数,M_i为进程i的可读内存区域大小。非常耗时,尤其对于大内存进程。 |
通用CPU:密集的系统调用(枚举进程、查询内存、读取内存)、内存中的字符串搜索(正则表达式引擎,可能是回溯或自动机实现)。 |
C++代码片段(使用std::regex): |
|
Virus1-0028 |
集成电路缺陷(设计阶段) |
基于形式化等价性检查的硬件篡改检测模型 |
等价性检查(Equivalence Checking) |
1. 设计表示:将硬件设计表示为两个版本:参考设计(无篡改) |
完备性:理论上可证明两个设计在所有可能输入序列下功能是否等价。能力:能检测出恶意插入的硬件木马(如果木马影响了功能),但对不影响功能(如泄漏信息)的木马可能漏检。 |
形式化验证、自动机理论、布尔逻辑、不动点定理、归纳法 |
1. 检测集成电路设计中的硬件木马(功能性) |
常量:参考设计 |
状态: |
逻辑:将设计行为表示为布尔函数 |
硬件描述语言(Verilog, VHDL)的门级网表或RTL代码,工具命令语言(TCL),反例波形文件(VCD, FSDB)。 |
1. 建模:将设计 |
顺序(基础步->归纳步) |
时间复杂度:最坏情况下是状态数的指数级(状态爆炸),但实际工具使用符号方法和启发式能处理较大设计。 |
通用CPU:等价性检查工具运行在通用CPU上,执行复杂的逻辑推理、图算法(BDD操作)、SAT求解。不直接涉及目标硬件芯片的执行。 |
Verilog示例 & TCL脚本(概念性): |
|
Virus1-0029 |
病毒/多态变形 |
基于遗传编程的代码自适应变异模型 |
遗传编程驱动的多态病毒引擎 |
1. 种群初始化:将原始病毒体 |
进化能力:能生成对抗特定检测引擎的变种。强度:适应度函数设计决定了进化方向。开销:进化过程计算成本高,通常在攻击者端离线进行。 |
遗传算法、进化计算、抽象语法树操作、适应度 landscapes |
1. 生成逃避特定杀毒软件特征码的病毒变种 |
常量:原始病毒体 |
状态: |
集合与种群:种群是个体(程序)的集合。 |
程序的AST表示,遗传编程的操作(子树交叉、节点变异),适应度评估脚本(调用杀毒引擎API)。 |
1. 初始化: |
迭代(代际循环)+ 并行(适应度评估可并行进行) |
时间:O(G_max * N * T_eval),其中 |
P |
), |
|
Virus1-0030 |
漏洞发现(动态污点) |
基于动态污点传播的输入追踪与漏洞检测模型 |
动态污点分析(Dynamic Taint Analysis) |
1. 污点源标记:在程序执行开始时,将不受信任的输入数据(如网络数据 |
精度:动态执行,误报率较低。覆盖率:依赖于测试用例的路径覆盖,可能漏报未执行路径上的漏洞。性能开销:高,因为需要插桩和跟踪每条指令。 |
信息流安全、动态二进制插桩、程序切片 |
1. 检测缓冲区溢出漏洞(污点数据用于数组索引或内存拷贝长度) |
常量:污点源规则(哪些函数/系统调用是源)、污点传播规则、污点Sink点规则。 |
状态: |
集合:污点标签集合,通常是输入源的标识集合。 |
插桩框架的API(如Pin, DynamoRIO),污点传播规则的描述,漏洞报告格式。 |
1. 插桩:使用动态二进制插桩框架(如Intel Pin)在程序运行时插入监控代码。 |
顺序(程序指令执行顺序)+ 动态(污点传播实时进行) |
时间:指令级插桩导致程序运行速度下降10倍到100倍。 |
通用CPU:动态二进制插桩框架(如Pin)将监控代码注入到目标程序指令流中,导致每条原指令前后都执行额外的插桩代码。这带来了巨大的性能开销。 |
Pin插桩工具伪代码(概念): |
|
Virus1-0031 |
蠕虫/网络攻击 |
基于递归DNS查询与子域名爆破的隐蔽通道模型 |
DNS隧道蠕虫 |
1. 数据编码:将需要传输的命令或数据( |
隐蔽性:高,DNS流量通常不被严格审查。带宽:极低,受限于DNS查询/响应包大小和速率。可靠性:依赖DNS基础设施的可用性。 |
DNS协议规范、信息编码理论、隐蔽信道 |
1. 绕过网络防火墙(允许DNS出站)的数据渗出 |
常量:攻击者控制的权威域名 |
状态: |
信息论:将数据编码为DNS标签字符串,标签长度限制为63字节,总域名长度限制255字节。 |
DNS协议报文(二进制格式),编码后的子域名(如 |
1. 客户端(被感染主机)发送查询: |
顺序(查询-响应模式)+ 分块序列(大数据需多轮) |
时间:受网络延迟和DNS解析时间影响。每个查询-响应回合约数百毫秒。 |
通用CPU:执行DNS协议栈( |
Python伪代码(客户端发送编码查询): |
|
Virus1-0032 |
硬件缺陷(侧信道-时间) |
基于时序差异的密码算法常数时间违规检测模型 |
时序侧信道分析(Timing Side-Channel) |
1. 目标算法识别:分析密码算法(如RSA解密、AES、字符串比较)的软件实现,识别其输入依赖的分支或内存访问模式。例如,RSA的平方乘算法中,如果私钥位为1则执行一次额外乘法,导致时间差异。 |
信息泄露量:每次测量泄露少量信息,需要多次测量取平均以减少噪声。成功率:依赖于计时精度和噪声水平,对本地或可控环境攻击成功率高。 |
统计学(假设检验、相关性分析)、密码学算法实现细节、计算机体系结构(缓存、分支预测) |
1. 破解有缺陷的RSA实现(如未使用蒙哥马利 ladder) |
常量:目标算法函数 |
状态: |
统计学:假设检验(如检验 |
高精度计时API调用( |
1. 目标:攻击一个简单的RSA平方乘解密实现: |
猜测该样本中该位为0} |
猜测该位为1} |
μ1 - μ0 |
|
|
Virus1-0033 |
木马/权限提升 |
基于访问令牌窃取与模仿的权限提升模型 |
令牌窃取与模仿(Token Impersonation) |
1. 进程枚举与目标选择:枚举系统进程 |
TOKEN_IMPERSONATE |
TOKEN_QUERY, &hToken) |
权限提升成功率:高,前提是攻击者已有中等权限(如 |
Windows安全子系统(访问令牌、安全描述符、权限)、进程与线程安全上下文 |
1. 从管理员权限的进程中窃取SYSTEM令牌 |
常量:目标进程名或PID(如 |
状态: |
集合:进程集合,进程令牌集合。 |
Windows API调用序列( |
1. 首先启用当前进程的 |
顺序(API调用步骤严格) |
时间:O(n)枚举进程,n为进程数。API调用开销很小。 |
|
Virus1-0034 |
漏洞发现(符号执行-混合) |
基于符号执行与具体执行混合的导向性模糊测试模型 |
混合执行(Concolic Execution)与模糊测试结合 |
1. 具体执行与符号执行并行:从一组初始种子输入 |
覆盖率:结合了符号执行的深度路径探索和模糊测试的高速变异,能有效提高代码覆盖率。效率:比纯符号执行快,比纯模糊测试更能触及深层路径。 |
符号执行、模糊测试、约束求解、程序分析 |
1. 发现需要复杂条件触发的深层漏洞 |
常量:目标程序 |
状态: |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0034 |
漏洞发现(符号执行-混合) |
基于符号执行与具体执行混合的导向性模糊测试模型 |
混合执行(Concolic Execution)与模糊测试结合 |
1. 具体执行与符号执行并行:从一组初始种子输入 |
覆盖率:结合了符号执行的深度路径探索和模糊测试的高速变异,能有效提高代码覆盖率。效率:比纯符号执行快,比纯模糊测试更能触及深层路径。 |
符号执行、模糊测试、约束求解、程序分析 |
1. 发现需要复杂条件触发的深层漏洞 |
常量:目标程序 |
状态: |
逻辑:路径约束是逻辑公式的合取。 |
中间表示语言、约束表达式(SMT-LIB)、模糊测试器的覆盖反馈格式。 |
1. 用具体输入 |
顺序(单次混合执行路径)+ 并行(模糊测试可大规模并行变异和测试)+ 反馈循环(符号执行生成种子给模糊测试,模糊测试发现新路径给符号执行) |
时间:符号执行部分较慢,模糊测试部分可并行加速。总体开销介于两者之间。 |
通用CPU:混合执行引擎本身执行插桩、符号模拟和约束求解调用。模糊测试部分执行目标程序并收集覆盖率。两者都是CPU密集型。 |
概念性伪代码: |
|
Virus1-0035 |
病毒/宏病毒 |
基于文档宏脚本的自复制与传播模型 |
Office文档宏病毒传播模型 |
1. 感染宿主文档:病毒代码作为VBA宏嵌入Office文档( |
感染率:在宏被启用的环境下较高。隐蔽性:依赖社会工程学诱使用户启用宏。 |
文档对象模型(DOM)、Visual Basic for Applications (VBA)、事件驱动编程、文件格式(OLE) |
1. 通过钓鱼邮件传播恶意文档 |
常量:病毒VBA代码模块 |
状态: |
集合:目标文件集合,已感染文件集合。 |
Visual Basic for Applications (VBA) 语言,Office对象模型(如 |
1. 用户打开含宏文档,触发 |
顺序(文件遍历感染)+ 事件驱动(由Office事件触发) |
时间:O(n),n为扫描的文件数。文件操作和VBA解释执行较慢。 |
通用CPU:在Office进程(winword.exe, excel.exe)上下文内执行VBA解释器。VBA代码被解释执行,涉及COM对象调用和文件I/O。 |
VBA代码片段(简化感染逻辑): |
|
Virus1-0036 |
木马/Rootkit |
基于内核模块加载与系统服务表挂钩的隐身模型 |
内核模式Rootkit(SSDT Hook) |
1. 内核驱动加载:通过漏洞利用、驱动签名伪造或已有管理员权限,将恶意内核驱动( |
隐蔽性:极高,在内核层面隐藏进程、文件、网络连接。稳定性风险:挂钩不当易导致系统蓝屏(BSOD)。 |
操作系统内核原理、系统调用机制、内存管理(分页、保护)、函数挂钩技术 |
1. 隐藏恶意进程、文件、注册表项 |
常量:目标系统调用索引 |
状态: |
地址计算:计算系统调用索引对应的内存地址: |
内核驱动开发(WDK),内联汇编(修改CR0),Windows内核数据结构( |
1. 驱动加载后,在 |
顺序(挂钩安装过程)+ 中断/异常(系统调用陷入内核时触发钩子) |
时间:挂钩操作本身是O(1)。每次被挂钩的系统调用被调用时,引入额外过滤开销。 |
x86/x64 CPU:执行内核模式指令,包括修改控制寄存器 |
C代码片段(SSDT Hook原理): |
|
Virus1-0037 |
信息窃取/网络嗅探 |
基于ARP欺骗的中间人攻击与流量劫持模型 |
ARP欺骗(ARP Spoofing/Poisoning) |
1. 网络探测:攻击者主机 |
成功率:在局域网内,对未启用静态ARP或ARP防护的主机成功率很高。影响范围:可劫持同一网段内任意两台主机间的通信。 |
地址解析协议(ARP)、局域网通信原理、网络数据包转发 |
1. 窃取局域网内的明文密码(HTTP, FTP) |
常量:网关IP |
状态: |
逻辑:条件判断(目标IP是否在攻击范围内)。 |
原始套接字编程,ARP报文结构( |
1. 使用 |
并行(同时毒化多个目标)+ 周期性(定时发送欺骗包维持) |
时间:O(1) 每对毒化,但需持续运行。流量转发和嗅探开销取决于流量大小。 |
通用CPU:执行原始套接字操作(构造和发送数据包)、网络I/O。启用IP转发后,内核会处理包转发,消耗CPU和内存资源。 |
Python伪代码(使用scapy): |
|
Virus1-0038 |
漏洞发现(整数溢出) |
基于符号范围分析与约束求解的整数溢出检测模型 |
整数溢出与环绕漏洞检测 |
1. 识别危险操作:在代码中识别可能导致整数溢出的算术操作,如无符号加法 |
误报:可能报告许多理论上可能但实践中不会触发的溢出(如受前文条件限制)。漏报:对复杂非线性约束或指针运算可能分析不充分。 |
整数算术、区间分析、抽象解释、约束求解 |
1. 检测缓冲区分配大小计算溢出(导致堆溢出) |
常量:整数类型位宽 |
状态: |
区间分析:定义在整数域上的区间格,进行区间运算,如 |
源代码或中间表示中的算术表达式,区间表示 |
1. 对于代码片段: |
顺序(数据流分析通常是迭代直到不动点) |
时间:O(V * E),V是变量数,E是数据流边数,但实际与程序大小和循环复杂度相关。 |
通用CPU:执行静态分析算法,包括区间运算、约束求解。分析阶段不执行目标代码。生成PoC时可能需要运行程序进行验证。 |
C代码片段(模拟区间加法检查): |
|
Virus1-0039 |
木马/下载器 |
基于分段加载与反射DLL注入的无文件落地模型 |
反射式DLL注入(Reflective DLL Injection) |
1. 准备DLL镜像:将恶意DLL(通常是PE文件)的内容读取到内存缓冲区 |
隐蔽性:高,DLL不写入磁盘,完全在内存中加载和执行。难度:实现复杂,需处理PE格式细节。 |
Windows PE文件格式、动态链接、内存重定位、导入地址表(IAT)解析 |
1. 高级恶意软件的无文件持久化 |
常量:恶意DLL的二进制数据 |
状态: |
地址计算:虚拟地址转换: |
PE文件结构体( |
1. 将DLL文件读入缓冲区 |
严格顺序(步骤依赖,如必须先分配内存、拷贝,再处理重定位和导入,最后执行) |
时间:O(SizeOfImage + number_of_relocs + number_of_imports),主要是内存读写和解析开销。 |
x86/x64 CPU:执行系统调用( |
C代码片段(重定位处理核心): |
|
Virus1-0040 |
漏洞发现(逻辑漏洞) |
基于状态机与业务规则推理的业务逻辑漏洞检测模型 |
状态机与业务逻辑漏洞推理 |
1. 业务流建模:将目标应用(如Web应用、API)的业务流程建模为有限状态机(FSM)。状态 |
查准率:高,因为逻辑漏洞通常导致明显的功能异常。查全率:依赖于状态机模型的完整性和探索深度。 |
有限状态机、形式化方法、业务规则建模、访问控制模型(RBAC, ABAC) |
1. 电子商务网站:绕过支付流程、优惠券滥用、无限积分 |
常量:业务状态机模型 |
状态: |
逻辑:业务规则是逻辑公式。漏洞检测是检查 |
HTTP请求/响应序列,API端点,会话令牌,业务对象ID,状态参数。 |
1. 以未登录用户身份,直接访问需要认证的页面 |
顺序(业务流程通常有序)+ 尝试乱序/非法序列(攻击测试) |
时间:O( |
S |
* |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0041 |
硬件缺陷(侧信道-功率) |
基于功耗轨迹分析的简单功率攻击(SPA)模型 |
简单功率分析攻击 |
1. 数据采集:对密码设备(如智能卡、加密芯片)在执行密码操作(如RSA签名、AES加密)时,通过串联电阻或电磁探头测量其瞬时功耗 |
信息泄露:直接泄露算法内部操作序列。成功率:对未加防护的实现成功率极高。误差:受测量噪声和轨迹对齐精度影响。 |
密码学算法实现、电路功耗模型、信号处理(对齐、滤波) |
1. 攻击智能卡中的RSA或ECC实现 |
常量:采样率 |
状态: |
信号处理:功耗轨迹是时间序列信号。对齐是信号配准问题。 |
功耗数据(模拟电压/数字采样值),密码操作触发信号(如GPIO)。 |
1. 设置示波器,在加密芯片的VCC路径上串联小电阻 |
顺序(算法操作顺序决定密钥位顺序) |
时间:O(N * L),N为密钥位数,L为每次测量的轨迹长度。主要开销在数据采集和后处理。 |
目标硬件:密码芯片内部晶体管开关活动导致电流变化,从而产生功耗轨迹。攻击测量发生在芯片外部。 |
Python伪代码(核心分析): |
|
Virus1-0042 |
病毒/逃逸技术 |
基于环境感知与沙箱检测的反仿真模型 |
沙箱/虚拟机环境检测与逃逸 |
1. 信息收集:查询系统环境信息,包括:硬件信息(CPU品牌、型号、核心数、内存大小)、系统信息(计算机名、用户名、已安装软件、运行进程、网络适配器MAC地址)、运行时信息(系统运行时间、鼠标移动、键盘活动、屏幕分辨率/颜色深度)。 |
逃逸率:对已知沙箱特征有效,但对抗自适应沙箱效果下降。误判:可能将某些真实用户环境(如低配PC、无外设服务器)误判为沙箱。 |
数字取证与事件响应(DFIR)、虚拟化技术、行为分析、启发式检测 |
1. 绕过自动化恶意软件分析沙箱 |
常量:已知沙箱/虚拟机特征列表 |
状态: |
集合:沙箱特征集合,环境信息集合。 |
系统API调用( |
1. 调用 |
顺序(信息收集)+ 并行(可同时检查多个特征) |
时间:O(1),特征检查是常数时间操作。诱导延迟会引入固定时间开销。 |
x86 CPU:执行 |
C代码片段(CPUID检查): |
|
Virus1-0043 |
蠕虫/移动端 |
基于漏洞利用套件(EK)的“水坑”攻击传播模型 |
网页漏洞利用套件(Exploit Kit) |
1. 流量重定向:通过黑帽SEO、恶意广告(Malvertising)、或被黑网站,将受害者流量重定向到攻击者控制的漏洞利用套件登录页面(Landing Page)。重定向可通过HTTP 302、iframe注入或JavaScript实现。 |
F)`。 |
感染率:依赖漏洞利用的成功率和目标环境普及率。隐蔽性:用户只需访问网页,无需交互。 |
浏览器安全模型、漏洞利用技术、客户端指纹识别、概率决策 |
1. 大规模传播勒索软件(如通过恶意广告) |
常量:漏洞利用库 |
状态: |
集合:漏洞集合,指纹特征集合。 |
F)`,匹配目标是最大化期望成功概率。 |
JavaScript代码(指纹收集、漏洞利用),HTML/CSS(登录页),可能的Flash/Java applet。 |
1. 受害者访问 |
顺序(指纹->匹配->投递->执行) |
时间:网络延迟为主,漏洞利用执行是毫秒级。指纹收集和匹配很快。 |
|
Virus1-0044 |
木马/后门 |
基于Windows服务与计划任务的持久化模型 |
Windows服务与计划任务持久化 |
1. 服务创建:以管理员权限,使用 |
持久性强度:高,结合多种机制,难以完全清除。隐蔽性:中,服务、计划任务、启动项是常见持久化位置,可能被安全软件监控。 |
Windows操作系统启动机制、服务控制管理器(SCM)、计划任务架构、注册表结构 |
1. 勒索软件驻留,确保重启后仍能加密文件 |
常量:服务名 |
状态: |
集合:持久化位置集合(服务列表、任务列表、注册表键集合)。 |
Windows API调用序列( |
1. 服务创建: |
顺序(安装步骤)+ 事件驱动(由系统启动/登录/定时事件触发执行) |
时间:安装步骤O(1),API调用开销很小。 |
x86/x64 CPU:执行系统调用(与服务控制管理器、任务计划程序、注册表配置单元交互)。持久化安装是用户态操作。 |
C代码片段(创建服务): |
|
Virus1-0045 |
漏洞发现(自动化) |
基于补丁差异分析的1-day漏洞挖掘模型 |
补丁比对与1-Day漏洞挖掘 |
1. 补丁获取:获取目标软件(如Windows, Adobe Reader, Chrome)的安全更新补丁文件。对于MSU/EXE,提取其中的补丁文件( |
准确率:高,因为补丁直接指出了安全缺陷位置。效率:比从零开始挖掘漏洞快得多。 |
二进制差分分析、控制流图(CFG)比对、漏洞模式识别、逆向工程 |
1. 从微软周二补丁日挖掘Windows 1-day漏洞 |
常量:补丁前文件 |
状态: |
图论:比较两个版本的函数控制流图(CFG),寻找增加的边(检查)或修改的节点。 |
二进制文件格式(PE, ELF),反汇编代码,源代码diff( |
1. 下载Windows补丁 |
顺序(获取->比对->分析->验证) |
时间:依赖二进制文件大小和比对工具效率。对于大型二进制(如内核),可能需要数十分钟。 |
通用CPU:执行二进制比对算法(图同构、哈希)、反汇编、控制流分析。是CPU密集型静态分析。 |
使用BinDiff的命令行示例: |
|
Virus1-0046 |
信息窃取/网络 |
基于SSL/TLS中间人解密的流量分析模型 |
SSL/TLS中间人解密(MITM) |
1. 网络位置劫持:通过ARP欺骗、DNS欺骗或恶意Wi-Fi接入点,将受害者(Client)与目标服务器(Server)之间的流量路由经过攻击者(Attacker)主机。 |
解密能力:对使用攻击者可控CA签名的证书的会话,可完全解密。局限性:对证书固定(Certificate Pinning)的应用无效,且需要将根证书导入受信存储。 |
公钥基础设施(PKI)、TLS协议、中间人攻击原理、密码学 |
1. 企业网络监控与数据泄露防护(合法用途) |
常量:自签名根CA证书 |
状态: |
密码学:TLS握手基于非对称加密(RSA/ECDHE)建立对称密钥。中间人攻击破坏了身份认证环节。 |
TLS握手报文( |
1. 启动ARP欺骗,使Client的网关流量经过Attacker。 |
并行(维护Client和Server两个独立的TLS连接和转发流)+ 实时(数据流持续) |
时间:引入一个额外的解密/加密步骤,增加少量延迟(毫秒级)。 |
通用CPU:执行TLS握手时的非对称加密/解密(RSA/ECC)、对称加密/解密(AES)、哈希运算(SHA)。网络I/O密集。 |
使用mitmproxy的基本原理: |
|
Virus1-0047 |
硬件缺陷(设计) |
基于形式化属性验证的硬件信息流安全模型 |
信息流跟踪(IFT)与形式化验证 |
1. 安全策略定义:定义信息流安全策略,例如无干扰(Non-interference):高安全级(秘密)数据不应影响低安全级(公开)输出。形式化地,对于任意两个输入序列 |
验证完备性:理论上可证明设计满足信息流安全属性。可扩展性:受状态爆炸限制,对大设计可能不适用。 |
信息流安全理论、格模型、非干扰、形式化验证(模型检查)、抽象解释 |
1. 验证密码协处理器不通过时序、功耗等侧信道泄露密钥 |
常量:硬件设计模型 |
状态: |
格理论:安全级形成一个格,标签传播是格上的运算。 |
硬件描述语言(Verilog, VHDL),属性描述语言(如PSL, SVA),模型检查器输入语言。 |
1. 设计一个简单模块: |
顺序(状态转移模拟)+ 迭代(标签传播直至不动点) |
时间:最坏情况下是指数级(状态爆炸),但符号方法和抽象可缓解。 |
通用CPU:执行模型检查算法,涉及状态空间遍历、标签计算、逻辑推理。是CPU和内存密集型。 |
Verilog代码与SVA属性示例: |
|
Virus1-0048 |
病毒/文件型 |
基于压缩包内文件感染的寄生模型 |
压缩包(ZIP/RAR)病毒 |
1. 压缩包解析:读取压缩包文件(如 |
感染率:依赖用户解压并运行被感染文件。隐蔽性:中,压缩包本身看起来正常,但内部文件已被修改,可能被校验和检测。 |
压缩文件格式(ZIP, RAR)、数据完整性(CRC)、寄生感染 |
1. 通过邮件附件传播 |
常量:压缩包文件路径 |
状态: |
集合:压缩包内文件集合,候选目标文件集合。 |
压缩文件格式规范(如ZIP的本地文件头、中央目录结构),CRC32算法。 |
1. 使用 |
顺序(遍历、解压、感染、压缩、替换) |
时间:O(n + m),n为压缩包内文件数,m为目标文件解压/压缩/感染时间。 |
通用CPU:执行压缩/解压缩算法(计算密集型)、CRC计算、文件I/O。病毒感染部分涉及PE解析和修改。 |
C伪代码(使用minizip): |
|
Virus1-0049 |
木马/后门 |
基于Windows WMI事件订阅的持久化与执行模型 |
Windows Management Instrumentation (WMI) 事件订阅后门 |
1. WMI查询/事件注册:使用WMI查询语言(WQL)注册一个事件过滤器 |
持久性:高,存储在WMI仓库,不易被常规启动项检查发现。隐蔽性:高,无独立进程,执行在系统服务中。触发灵活:可基于丰富的事件触发。 |
Windows管理规范(WMI)、事件驱动架构、CIM数据库 |
1. 在特定程序(如浏览器、邮件客户端)启动时执行恶意代码 |
常量:事件过滤器查询字符串 |
状态: |
事件驱动:基于发布-订阅模式,过滤器是订阅条件,消费者是回调。 |
WMI类名( |
1. 获取WMI服务: |
事件驱动(异步,由系统事件触发) |
时间:安装步骤O(1)。触发后执行恶意命令的时间取决于命令本身。 |
x86/x64 CPU:WMI服务( |
VBScript安装脚本示例: |
|
Virus1-0050 |
漏洞发现(自动化推理) |
基于符号执行与抽象解释的缓冲区溢出检测模型 |
符号执行结合抽象解释检测缓冲区溢出 |
1. 程序抽象:将程序转换为适合分析的中间表示(IR)。同时使用两种抽象: |
精度:结合两者,比单一方法更平衡,减少漏报和误报。效率:比纯符号执行快,比纯抽象解释准。 |
抽象解释、符号执行、区间运算、约束求解 |
1. 检测数组越界访问 |
常量:目标程序 |
状态: |
区间运算:抽象解释在区间域上计算,如 |
中间表示语言,区间表示 |
1. 分析代码: |
顺序(抽象解释先运行提供信息)+ 协同(符号执行利用抽象信息) |
时间:抽象解释O(nk),n为程序点,k为迭代次数;符号执行是指数级,但利用剪枝可加速。 |
通用CPU:执行抽象解释的区间计算、符号执行的模拟和约束求解。两者都是CPU密集型,但抽象解释通常更快。 |
伪代码(协同检查): |
|
Virus1-0051 |
信息窃取/网络 |
基于ICMP隧道的数据渗出模型 |
ICMP隧道(ICMP Tunneling) |
1. 数据封装:将待窃取的数据 |
带宽:低,受ICMP包大小和速率限制。隐蔽性:中,ICMP流量常见,但异常大量的ICMP包或大载荷可能被检测。 |
网络协议(ICMP)、原始套接字编程、数据封装 |
1. 绕过防火墙进行数据渗出(允许ICMP出站) |
常量:接收方IP |
状态: |
集合:数据块集合,按序列号排序。 |
原始ICMP报文结构(类型、代码、校验和、标识符、序列号、数据),可能加密后的载荷。 |
1. 发送端: |
顺序(数据分块顺序发送)+ 可能需要处理乱序(网络可能导致乱序,依赖序列号重组) |
时间:O(data_size / chunk_size),受网络延迟和发送间隔限制。 |
通用CPU:执行原始套接字系统调用、校验和计算、数据分块/重组。网络I/O为主。 |
C代码片段(发送ICMP Echo请求): |
|
Virus1-0052 |
病毒/复合型 |
基于病毒与蠕虫特性结合的混合传播模型 |
病毒-蠕虫混合传播模型 |
1. 本地感染(病毒特性):当病毒被激活后,首先在本地系统进行感染。遍历本地文件和可移动介质(U盘),使用传统的寄生感染技术(如文件感染、宏病毒)将自身复制到可执行文件或文档中。感染目标列表 |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0052 |
病毒/复合型 |
基于病毒与蠕虫特性结合的混合传播模型 |
病毒-蠕虫混合传播模型 |
1. 本地感染(病毒特性):当病毒被激活后,首先在本地系统进行感染。遍历本地文件和可移动介质(U盘),使用传统的寄生感染技术(如文件感染、宏病毒)将自身复制到可执行文件或文档中。感染目标列表 |
传播速度:结合了病毒的“近距离”传播和蠕虫的“网络自主”传播,速度极快。隐蔽性:多态变形增加了检测难度。破坏力:可结合多种恶意行为。 |
流行病学模型(SIR模型增强)、图论(网络拓扑、传播树)、密码学(多态引擎)、漏洞利用技术 |
1. 大规模勒索软件爆发(如WannaCry) |
常量:本地感染目标扩展名列表 |
状态: |
集合:本地文件集合,网络IP地址空间集合,已感染主机集合。 |
多态引擎的汇编/中间语言,网络漏洞利用的Shellcode,C2通信协议(自定义或模仿合法协议)。 |
1. 触发:用户运行被感染文件。 |
并行序列(本地感染、网络扫描、C2通信可多线程并行)+ 顺序(单次感染过程有序) |
时间:O(M + N*P),M为本地文件数,N为扫描IP数,P为端口数。网络传播是瓶颈。 |
通用CPU:执行密集的文件I/O、网络I/O、字符串处理(遍历路径)、加密运算(多态)、漏洞利用中的内存操作。多线程并发。 |
C伪代码(主循环框架): |
|
Virus1-0053 |
硬件缺陷(侧信道-电磁) |
基于电磁辐射分析的模板攻击模型 |
电磁模板攻击 |
1. 模板构建(分析阶段):使用可控的实验设备(与目标设备相同),对于所有可能的密钥字节值 |
攻击强度:高,在信噪比(SNR)足够时,单次轨迹即可恢复密钥。前提条件:需要与目标相同的可控设备进行模板构建。 |
多元统计分析、信号处理、电磁学、密码学 |
1. 攻击智能卡、HSM中的AES、DES、RSA密钥 |
常量:模板集合 |
状态: |
多元统计:假设在 |
电磁模拟信号(经ADC采样为数字序列),模板数据文件,统计计算脚本。 |
1. 模板构建:对可控设备,设置密钥字节 |
顺序(对每个密钥字节依次攻击)+ 批量(模板匹配是批量计算) |
时间:模板构建O(256 * N * L),N为每条轨迹的平均次数,L为轨迹长度,计算量大。攻击阶段O(256 * L * 密钥字节数)。 |
目标设备CPU:执行密码运算,产生电磁辐射。攻击测量发生在物理层。 |
Python伪代码(模板匹配): |
|
Virus1-0054 |
木马/无文件 |
基于Windows COM劫持与脚本组件的持久化模型 |
COM组件劫持与脚本持久化 |
1. COM组件定位:查找在系统启动或特定事件时自动加载的COM组件。这些组件在注册表中注册,其CLSID下的 |
持久性:高,注册在COM系统中,随系统或应用启动自动加载。隐蔽性:高,尤其使用脚本组件时,恶意代码存储在注册表内,无独立文件。 |
组件对象模型(COM)、注册表结构、进程外/内激活 |
1. 绕过应用白名单,通过COM加载恶意代码 |
常量:目标CLSID |
状态: |
集合:系统中所有已注册CLSID的集合,可劫持的CLSID子集。 |
注册表操作API,COM组件开发(DLL的 |
1. 寻找目标:枚举 |
顺序(安装步骤)+ 事件驱动(由COM对象创建请求触发) |
时间:安装步骤O(n),n为枚举的CLSID数量。触发执行是即时的。 |
x86/x64 CPU:执行注册表系统调用,COM库加载DLL时的系统调用。恶意DLL在加载进程的上下文执行。 |
C代码片段(修改注册表): |
|
Virus1-0055 |
漏洞发现(自动化) |
基于图神经网络(GNN)的漏洞代码模式识别模型 |
图神经网络漏洞模式学习 |
1. 代码图表示:将源代码或二进制代码转换为图结构 |
v∈V}) |
准确率:依赖于训练数据质量和规模,在benchmark上可达较高水平。泛化性:可学习到语法结构之外的语义模式,但可能过拟合训练集分布。 |
图表示学习、深度学习、程序分析、数据流分析 |
1. 检测C/C++代码中的缓冲区溢出、格式化字符串漏洞 |
常量:训练数据集 |
状态: |
图论:代码表示为图,GNN在图上进行消息传递和聚合。 |
代码的中间表示(如LLVM IR)、图数据格式(邻接列表、特征矩阵)、深度学习框架API。 |
1. 训练: |
顺序(前向/反向传播)+ 并行(GNN中节点特征的聚合和更新可并行化) |
时间:图构建O( |
V |
|
Virus1-0056 |
硬件缺陷(设计-验证) |
基于属性引导测试的硬件安全验证模型 |
属性引导的硬件模糊测试 |
1. 安全属性形式化:将硬件安全要求形式化为属性(Assertions),使用SystemVerilog Assertions (SVA) 或类似语言。例如,`assert property ( @(posedge clk) (req && !ack) |
=> ##[1:5] ack ); |
验证强度:高,结合形式化属性、随机测试和覆盖率引导,能有效发现设计错误。效率:比纯形式化验证可扩展性更好,但比定向测试计算量大。 |
约束随机验证、功能覆盖率、属性检查、遗传算法 |
1. 验证处理器指令执行正确性 |
常量:硬件设计(RTL) |
状态: |
概率:约束随机测试在输入空间进行抽样。 |
SystemVerilog Assertions (SVA),约束随机化语法,覆盖组(covergroup)定义,仿真脚本(如UVM)。 |
1. 定义接口信号和时钟。 |
-> ##[1:10] grant)); |
顺序(仿真周期顺序)+ 随机(激励生成) |
时间:O(N * S),N为仿真周期数,S为设计规模。通常很耗时,需高性能计算或硬件加速仿真。 |
|
Virus1-0057 |
木马/移动端 |
基于Android Binder机制滥用的权限提升模型 |
Android Binder权限提升攻击 |
1. 服务接口分析:分析目标系统服务(如 |
攻击成功率:依赖特定系统服务接口的权限检查漏洞。在已root设备或存在漏洞的系统版本上可能成功。影响:可直接提升到系统权限,危害大。 |
Android Binder IPC机制、Linux进程间通信、权限模型、服务端校验 |
1. 停止其他应用进程(拒绝服务) |
常量:目标系统服务名 |
状态: |
反射:通过Java反射机制 |
Android AIDL接口,Java反射API,Binder事务代码( |
1. 获取 |
顺序(获取代理->反射调用) |
时间:O(1),几次反射调用,很快。 |
ARM CPU (Android): 执行Java反射调用,底层通过JNI调用 |
Java代码片段(反射调用forceStopPackage): |
|
Virus1-0058 |
漏洞发现(二进制) |
基于动态二进制插桩的Use-After-Free漏洞检测模型 |
动态UAF检测(如AddressSanitizer, DrMemory) |
1. 内存分配/释放插桩:在程序运行时,通过动态二进制插桩(DBI)工具(如Pin, DynamoRIO)拦截所有堆内存分配( |
检测精度:高,可准确捕获UAF访问。误报:极低。性能开销:高,通常使程序慢2-5倍,内存开销大(影子内存)。 |
动态二进制插桩、影子内存、内存安全、程序分析 |
1. 检测C/C++程序中的Use-After-Free漏洞 |
常量:DBI框架回调函数,影子内存映射比例(如8:1),隔离区大小 |
状态: |
集合:已分配内存块集合,已释放(隔离)内存块集合。 |
插桩框架的API(插入回调),影子内存操作,栈回溯符号化。 |
1. 插桩 |
顺序(程序指令顺序)+ 实时检查(每次内存访问时检查) |
时间:每次内存分配/释放和每次内存访问都有额外开销,程序运行慢2-5倍。 |
通用CPU:执行插桩代码,包括大量额外的指令来检查影子内存。影子内存访问增加内存带宽压力。DBI框架本身有显著开销。 |
Pin插桩工具伪代码(概念): |
|
Virus1-0059 |
信息窃取/网络 |
基于HTTP协议请求走私的攻击模型 |
HTTP请求走私(HTTP Request Smuggling) |
1. 前端/后端解析差异:利用前端代理服务器(如CDN、负载均衡器)和后端应用服务器对HTTP请求解析的差异。常见差异点: |
攻击成功率:依赖具体的前端/后端组件和版本组合。影响:严重,可绕过安全边界。 |
HTTP协议规范、请求解析实现差异、网络中间件架构 |
1. 绕过WAF或CDN的安全规则 |
常量:目标URL |
状态: |
协议状态机:HTTP解析是状态机,差异源于状态转移的不同。 |
HTTP请求原始格式,包括行终止符 |
1. CL.TE攻击:前端使用 |
顺序(请求发送顺序)+ 需要与其他用户请求交织(异步) |
时间:O(1),一次或几次HTTP请求。但探测差异可能需要多次尝试。 |
通用CPU:前端代理和后端Web服务器的HTTP解析逻辑。攻击者是简单的HTTP客户端,发送特制数据包。 |
原始HTTP请求示例(CL.TE): |
|
Virus1-0060 |
硬件缺陷(侧信道-时序) |
基于Prime+Probe的缓存侧信道攻击模型 |
Prime+Probe缓存攻击 |
1. 缓存集关联性学习:现代CPU缓存是组相联的。确定攻击者与受害者共享的缓存级别(通常是最后一级缓存LLC)。了解缓存几何结构:缓存行大小 |
空间分辨率:可监控到缓存组级别。时间分辨率:需要高精度计时器。跨核攻击:LLC通常在核心间共享,允许跨虚拟机和进程攻击。 |
计算机体系结构(缓存层次、替换策略)、高精度计时、密码学实现 |
1. 跨VM恢复AES密钥(云环境) |
常量:缓存几何参数 |
状态: |
集合:攻击集是 |
内联汇编(内存访问指令 |
1. 确定LLC是12路组相联,组数 |
顺序(Prime->Wait->Probe循环) |
时间:O(W) 每次Prime/Probe,W通常是8-16。需要多次迭代(数千到数百万)以获取统计上显著的结果。 |
x86 CPU:执行内存加载指令( |
C代码片段(核心计时循环): |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0061 |
供应链攻击 |
基于上游源码污染与构建工具劫持的投毒模型 |
开源软件包上游仓库投毒 |
1. 目标选择:选择流行开源项目,特别是那些被广泛依赖但维护活跃度较低的项目。分析其项目结构,定位关键源码文件、构建脚本(如 |
影响范围:极广,可影响所有依赖该开源包的下游应用。隐蔽性:高,恶意代码隐藏在合法项目中,难以通过代码审计发现。持久性:一旦发布,即使后续修复,已安装的恶意版本可能长期存在于供应链中。 |
软件供应链安全、信任传递、社会工程学、最小权限原则 |
1. 在广泛使用的工具库(如 |
常量:目标开源仓库 |
状态: |
图论:软件依赖关系构成一个有向无环图(DAG),投毒节点会影响所有可达的下游节点。 |
高级编程语言(如JavaScript, Python, C)源码,构建脚本语言(Shell, Make),版本控制提交信息。 |
1. 克隆目标仓库: |
sh’); |
顺序(贡献->投毒->发布->触发) |
时间:前期信任建立可能需要数周至数月。代码注入和发布是瞬间的。影响扩散速度取决于下游更新策略。 |
通用CPU:恶意代码在受害者构建或运行环境中执行,使用其环境的解释器或编译器(如Node.js, Python)。攻击者主要通过源码版本控制系统(如Git)和包仓库进行操作。 |
|
Virus1-0062 |
AI安全/对抗攻击 |
基于生成对抗网络(GAN)的恶意软件逃避检测模型 |
生成对抗网络(GAN)生成对抗性恶意软件样本 |
1. GAN架构:构建一个生成对抗网络,包含一个生成器 |
x) |
逃避效果:可显著降低基于机器学习的检测模型的检出率。功能保留:通过约束设计,可保持恶意软件原有功能。可转移性:生成的对抗样本可能对未知检测模型也有逃避效果。 |
生成对抗网络、对抗样本、特征空间优化、恶意软件分析 |
1. 生成可逃避静态机器学习检测的PE文件 |
常量:原始恶意软件样本集 |
状态: |
优化:极小极大博弈,目标函数 |
δ |
_p ≤ ε |
深度学习框架(如PyTorch, TensorFlow)代码,软件样本的向量化表示(如字节直方图、灰度图像)。 |
||
|
Virus1-0063 |
硬件缺陷(物理侵入) |
基于激光注入的故障攻击模型 |
激光故障注入攻击 |
1. 目标定位:对目标芯片(如智能卡、安全元件)进行去封装,使用显微成像技术定位目标晶体管线或区域。目标通常是密码运算中的关键节点,如条件跳转指令、状态机状态位、寄存器写入使能信号。 |
空间精度:可达微米级, targeting 单个晶体管。时间精度:亚纳秒级, targeting 单个时钟周期。攻击强度:可绕过多数硬件防护,直接修改芯片内部状态。 |
激光与物质相互作用、半导体物理、故障分析、密码学 |
1. 提取智能卡中的AES、DES、RSA密钥 |
常量:激光波长 |
状态: |
物理:激光能量 |
激光控制软件指令,芯片图像坐标,故障分析脚本。 |
1. 对智能卡进行酸腐蚀去封装,暴露芯片表面。 |
顺序(每次攻击是单次触发,但需要多次尝试以定位和优化参数) |
时间:每次激光脉冲注入是纳秒级,但包括定位、同步设置、多次尝试,总时间可能数小时至数天。 |
目标芯片硬件:晶体管受到光干扰,产生非预期的电流,导致逻辑状态错误。攻击是外部物理干扰,不依赖芯片的指令集。 |
控制激光的伪代码: |
|
Virus1-0064 |
木马/权限提升 |
基于Windows访问令牌模拟与权限滥用的模型 |
命名管道模拟与令牌窃取 |
1. 高权限进程监听:以一个高权限(如SYSTEM)运行的进程创建一个命名管道(Named Pipe) |
权限提升路径:从SYSTEM权限窃取管理员用户令牌,或从管理员进程窃取更高权限。隐蔽性:中,命名管道通信是合法机制,但异常的组合可能被检测。 |
Windows安全模型、访问令牌、模拟(Impersonation)、进程间通信(IPC) |
1. 从SYSTEM服务中窃取交互式登录的用户令牌 |
常量:命名管道名称 |
状态: |
集合:进程令牌集合,模拟令牌的线程集合。 |
Windows API调用序列( |
1. 服务端(以SYSTEM运行): |
顺序(管道创建->连接->模拟->操作) |
时间:O(1),API调用开销很小。 |
x86/x64 CPU:执行系统调用( |
C代码片段(服务器端模拟): |
|
Virus1-0065 |
漏洞发现(配置错误) |
基于大规模网络扫描与指纹识别的暴露服务发现模型 |
互联网暴露面资产与漏洞发现 |
1. 目标网络段生成:根据目标组织信息(ASN、Whois记录)或使用全网随机/分段扫描策略,生成IP地址范围列表 |
扫描广度:可覆盖整个互联网或大型企业网络。准确性:指纹识别和版本匹配准确率较高,但存在误报。效率:通过大规模并行扫描,可在数小时至数天内完成全网扫描。 |
网络扫描算法、服务指纹识别、版本匹配、漏洞管理 |
1. 发现暴露在公网的未授权服务(如数据库、SMB) |
常量:扫描端口列表 |
状态: |
集合:IP地址集合,开放端口集合,服务指纹集合,CVE集合。关联操作是集合的交、连接运算。 |
网络扫描工具命令( |
1. 使用 |
并行序列(大规模并行扫描是核心)+ 顺序(单次扫描流程:发现->识别->关联) |
时间:O(N * P),N为IP数量,P为端口数量。通过并行化和速率限制,实际时间可控。 |
通用CPU:执行网络I/O(发送探测包、接收响应)、字符串匹配(指纹识别)、数据库查询。扫描工具通常为多线程/多进程,充分利用多核。 |
bash脚本示例(整合masscan和nmap): |
|
Virus1-0066 |
硬件缺陷(侧信道-声学) |
基于声学发射的密钥恢复攻击模型 |
声学侧信道攻击(Acoustic Cryptanalysis) |
1. 声音信号采集:使用高灵敏度麦克风(或激光测振仪间接测量机箱振动)录制目标设备(如笔记本电脑、手机)在执行密码操作时产生的声音。采样率 |
∫ S'(τ) w(τ-t) e^{-j2πfτ} dτ |
^2 |
信息泄露:通过空气传播的振动信号泄露计算信息。攻击距离:可达数米(麦克风)或更远(激光测振)。成功率:依赖信号质量和特征区分度。 |
信号处理、时频分析、模式识别、密码学 |
1. 通过录音恢复笔记本电脑上的RSA密钥(如GnuPG早期版本) |
常量:采样率 |
状态: |
信号处理:声音信号是时间序列,STFT将其映射到时间-频率域。 |
声音WAV文件格式,时频分析库函数调用,分类模型代码。 |
1. 录制笔记本电脑运行 |
顺序(音频时间顺序对应操作顺序) |
时间:录音时长即密码操作时间(秒级)。信号处理和分析是O(T * F),T是样本数,F是FFT点数。 |
|
Virus1-0067 |
木马/后门 |
基于Windows LSA Secrets与注册表存储的凭据窃取模型 |
LSA Secrets 与 注册表凭据提取 |
1. 权限提升:获取SYSTEM权限。这可以通过利用漏洞、使用PsExec( |
信息价值:极高,可获得高权限账户的明文或可逆加密的凭据。隐蔽性:需要SYSTEM权限,操作本身会访问敏感注册表项,可能触发防护软件警报。 |
Windows安全子系统、LSA架构、注册表结构、密码学(SysKey加密) |
1. 获取域管理员缓存凭据(用于横向移动) |
常量:LSA Secrets注册表路径 |
状态: |
密码学:LSA使用RC4或AES等算法加密Secrets,密钥派生自系统启动密钥。 |
Windows注册表API,LSA数据结构, |
1. 以SYSTEM权限运行 |
顺序(需要先获得SYSTEM权限,然后逐步访问注册表和解密) |
时间:O(n),n为Secrets数量,解密操作很快。 |
x86/x64 CPU:执行注册表系统调用、密码学解密运算(RC4/AES)。主要工作在用户态,但需要高权限。 |
mimikatz 命令示例: |
|
Virus1-0068 |
漏洞发现(逻辑) |
基于时间竞争条件(TOCTOU)的漏洞检测模型 |
时间竞争条件(TOCTOU)检测 |
1. 识别敏感操作序列:在代码中识别“检查-使用”(Check-Then-Use)模式。即,程序先检查某个条件 |
漏洞触发概率:竞争窗口 |
并发理论、竞态条件、文件系统语义、操作系统调度 |
1. 文件系统TOCTOU(符号链接攻击) |
常量:目标程序 |
状态: |
并发:两个线程的执行顺序是不确定的,存在交错(interleaving)。需要找到能触发漏洞的交错。 |
多线程编程API( |
1. 目标代码: |
并行序列(T1和T2并发执行,顺序不确定) |
时间:O(N),N为尝试次数,可能需数百万次才能触发一次成功竞争。 |
通用CPU:执行多线程上下文切换、文件系统系统调用、同步原语操作。竞争的成功依赖于操作系统的调度时机。 |
C代码片段(竞争攻击线程T2): |
|
Virus1-0069 |
信息窃取/网络 |
基于QUIC协议元数据加密与流量分析的指纹识别模型 |
QUIC协议指纹识别与元数据推断 |
1. QUIC流量捕获:在网络中捕获QUIC数据包(通常基于UDP端口443)。QUIC是Google主导的传输协议,集成TLS 1.3,大部分数据是加密的,但初始握手(Client/Server Hello)中包含未加密或部分加密的元数据。 |
识别准确率:对主流客户端较高,但可能因版本更新和配置变化而失效。隐私影响:即使内容加密,元数据指纹仍可泄露用户所用应用、设备等信息。 |
网络协议分析、指纹识别、统计推断、QUIC/TLS规范 |
1. 网络流量分类与QoS(服务质量)管理 |
常量:QUIC协议版本列表,已知客户端指纹数据库 |
状态: |
集合:QUIC数据包集合,客户端指纹集合,特征集合。 |
QUIC数据包二进制格式,TLS Client Hello结构,指纹哈希表示。 |
1. 使用 |
顺序(握手过程有序)+ 可能需要多个数据包 |
时间:O(n),n为数据包数,解析和哈希计算很快。 |
通用CPU:执行网络数据包捕获(BPF)、协议解析(字节操作)、哈希计算。指纹匹配是内存查找。 |
Python伪代码(使用pyshark): |
|
Virus1-0070 |
硬件缺陷(设计-安全启动) |
基于安全启动信任链旁路的攻击模型 |
安全启动绕过(Secure Boot Bypass) |
1. 信任链分析:分析目标平台(如UEFI)的安全启动信任链。通常从硬件信任根(如CPU内的微代码或ROM)开始,验证引导加载程序(Bootloader)的数字签名,然后依次验证操作系统加载器、内核、驱动等。信任链可表示为 |
攻击深度:极深,在操作系统之前获得控制。持久性:极高,驻留在固件中。检测难度:极难,传统安全软件无法扫描固件。 |
公钥基础设施(PKI)、安全启动协议、UEFI规范、硬件信任根 |
1. 安装固件级rootkit(如LoJax) |
常量:目标平台UEFI固件映像 |
状态: |
密码学:签名验证使用非对称加密(RSA, ECC),验证公式 |
UEFI规范定义的数据结构( |
1. 漏洞:某些UEFI实现中, |
顺序(系统启动顺序严格,攻击需在特定阶段介入) |
时间:一次成功的漏洞利用可能只需一次重启。但漏洞研究和利用开发耗时极长。 |
CPU(x86/ARM):执行UEFI固件代码,包括签名验证、模块加载。攻击代码在UEFI环境中运行,使用UEFI服务。写入闪存需要访问SPI控制器。 |
UEFI Shell 下修改启动变量示例: |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0071 |
供应链攻击 |
基于代码签名证书窃取与滥用的软件投毒模型 |
代码签名证书滥用攻击 |
1. 证书窃取/伪造:通过入侵证书颁发机构(CA)、社会工程学窃取开发者私钥,或利用CA的验证漏洞申请到针对知名厂商的代码签名证书。获得有效的私钥 |
欺骗成功率:高,只要证书有效且未被吊销,可绕过大多数基于签名的验证。持久性:直到证书被吊销并广泛更新吊销列表(CRL/OCSP)。 |
公钥基础设施(PKI)、数字签名、证书吊销机制、信任链 |
1. 供应链攻击,分发带后门的“官方”软件更新 |
常量:被盗/伪造的证书私钥 |
状态: |
密码学:数字签名公式 |
PE文件格式的数字签名目录结构,PKCS#7签名数据结构,RFC 3161时间戳协议。 |
1. 攻击者从被入侵的软件公司获取 |
顺序(签名->分发->验证->执行) |
时间:签名和验证是毫秒级操作。主要开销在证书链验证和可能的吊销列表检查网络请求。 |
x86/x64/ARM CPU:执行哈希计算(SHA256)、非对称解密(RSA/ECC)、证书解析。签名验证是操作系统信任验证组件的一部分。 |
PowerShell签名示例: |
|
Virus1-0072 |
硬件缺陷(侧信道-电压) |
基于电压毛刺注入的故障攻击模型 |
电压毛刺故障注入 |
1. 目标同步:将电压毛刺发生器与目标芯片(如微控制器、智能卡)的时钟同步。通过连接芯片的时钟引脚或使用外部时钟,确保毛刺在特定的时钟周期注入。 |
空间精度:整个芯片或区域受影响,但可通过聚焦电源引脚 targeting 特定模块。时间精度:亚纳秒至纳秒级,可 targeting 单条指令。攻击强度:可绕过硬件安全机制,直接修改芯片行为。 |
半导体时序、电源完整性、故障模型、差分故障分析 |
1. 绕过微控制器的读保护(RDP)和安全启动 |
常量:正常电压 |
状态: |
电路理论:CMOS电路时序裕量 |
毛刺发生器控制命令,芯片引脚定义,故障输出日志。 |
1. 目标:一颗STM32单片机,已启用读保护(RDP Level 1),禁止调试和闪存读取。 |
顺序(每次尝试是单次触发,但需要参数搜索循环) |
时间:参数搜索空间很大,可能需要数千至数百万次尝试。每次尝试包括芯片复位、运行程序、注入毛刺、读取结果,耗时数十毫秒。 |
目标芯片硬件:电压毛刺导致内部晶体管供电不足,开关速度变慢或逻辑电平错误。攻击是外部模拟信号注入。 |
伪代码(参数搜索循环): |
|
Virus1-0073 |
AI安全/模型窃取 |
基于预测API查询的机器学习模型提取攻击 |
模型提取攻击(Model Extraction) |
1. 预测查询:攻击者(无模型内部信息)可以向目标模型的预测API(如云服务提供的图像分类接口)发送查询 |
窃取保真度:替代模型 |
机器学习、查询复杂性、主动学习、知识产权 |
1. 窃取商业云API提供的昂贵模型(如人脸识别、情感分析) |
常量:目标模型预测API端点 |
状态: |
优化:训练替代模型是标准的经验风险最小化: |
x) |
预测API的输入输出格式(如JSON),机器学习框架训练代码。 |
1. 目标:窃取一个在线图像分类器 |
顺序(查询-训练迭代)+ 可并行(批量查询) |
时间:O(N * T_query + T_train),N为查询次数,T_query为单次API延迟,T_train为替代模型训练时间,通常很大。 |
通用CPU/GPU:攻击者训练替代模型需要大量计算,通常使用GPU加速。查询目标API主要是网络I/O。目标模型运行在服务提供商的硬件上(可能是GPU/TPU)。 |
|
Virus1-0074 |
漏洞发现(协同) |
基于符号执行与模糊测试协同的漏洞挖掘模型 |
符号执行与模糊测试协同(如QSYM) |
1. 符号执行引导:从初始种子输入开始,进行符号执行,收集路径约束 |
覆盖率:高于单独使用任何一种技术。效率:比纯符号执行快,比纯模糊测试更能触及深层路径。 |
符号执行、模糊测试、约束求解、程序分析 |
1. 发现需要复杂数学条件触发的漏洞(如校验和验证) |
常量:目标程序 |
状态: |
逻辑:路径约束是逻辑公式,具体化是将部分变量赋具体值,简化约束。 |
中间表示语言,约束表达式,覆盖位图格式。 |
1. 目标程序有一个检查: |
并行序列(符号执行和模糊测试可并行运行,通过共享队列交换输入和覆盖信息) |
时间:O(T_sym + T_fuzz),其中T_sym是符号执行时间,T_fuzz是模糊测试时间。两者可并行,总时间近似于较慢的那个。 |
通用CPU:符号执行部分执行约束求解和符号模拟,是CPU密集型。模糊测试部分执行目标程序并收集覆盖率,也是CPU密集型。两者可运行在不同核心。 |
概念性伪代码: |
|
Virus1-0075 |
移动端漏洞利用 |
基于Android Binder内核驱动漏洞的权限提升模型 |
Android Binder内核漏洞利用(如CVE-2019-2215) |
1. 漏洞触发:利用Binder驱动中的Use-After-Free或越界读写漏洞。例如,通过 |
提权效果:从普通应用权限提升到root权限。可靠性:依赖漏洞的可利用性和堆布局的稳定性,可能不稳定。 |
内核内存管理、Use-After-Free、堆喷、控制流劫持 |
1. 利用Binder驱动漏洞获取Android root权限 |
常量:目标漏洞触发原语 |
状态: |
集合:内核堆缓存中的空闲对象链表,堆喷占据的内存块集合。 |
Binder |
1. 漏洞:CVE-2019-2215,Binder驱动中的Use-After-Free, |
顺序(触发->喷堆->利用) |
时间:O(1),但堆喷和数据准备可能需要数十毫秒。利用尝试本身很快。 |
ARM CPU (Android): 执行系统调用( |
C代码片段(概念性触发): |
|
Virus1-0076 |
网络攻击 |
基于WebSocket协议滥用的隐蔽信道与数据渗出模型 |
WebSocket隐蔽信道 |
1. WebSocket握手:客户端(被感染主机)向攻击者控制的服务器发起WebSocket握手。发送标准的HTTP Upgrade请求,其中包含 |
隐蔽性:高,WebSocket是常用协议,加密后(WSS)与HTTPS无异,深度包检测(DPI)难以区分。带宽:较高,支持实时流式传输。 |
WebSocket协议(RFC 6455)、隐蔽信道、流量伪装、实时通信 |
1. 绕过企业防火墙和数据丢失防护(DLP)进行数据渗出 |
常量:WebSocket服务器URI |
状态: |
协议:WebSocket帧格式: |
WebSocket帧二进制格式,HTTP Upgrade请求头,Base64编码。 |
1. 客户端使用 |
顺序(握手后,数据帧按序发送和接收)+ 全双工(可同时收发) |
时间:O(data_size / chunk_size),受网络延迟和WebSocket帧处理开销影响。 |
通用CPU:执行WebSocket协议栈(解析帧头、掩码/解掩码运算)、Base64编码/解码、JSON解析、网络I/O。如果使用TLS,还有加密解密开销。 |
JavaScript客户端示例: |
|
Virus1-0077 |
云安全/容器逃逸 |
基于Docker容器挂载逃逸与特权提升的模型 |
Docker容器挂载逃逸(如procfs, sysfs) |
1. 容器内信息收集:在已获得shell的容器内,检查挂载的卷、内核版本、当前用户权限。寻找以特权模式( |
/tmp/exploit.sh |
逃逸成功率:在配置不当(特权模式、危险挂载)的容器中成功率极高。影响:从容器隔离环境突破到主机root权限。 |
Linux内核机制(cgroups, procfs)、容器安全模型、能力(Capabilities) |
1. 从被入侵的容器逃逸到宿主机 |
常量:敏感挂载点路径 |
状态: |
集合:容器内可见的挂载点集合,当前进程的能力集。 |
|
Shell命令, |
1. 在特权容器内(或具有 |
顺序(步骤严格,尤其cgroup操作顺序) |
时间:O(1),命令执行很快。触发核心转储可能需要等待或尝试多次。 |
|
Virus1-0078 |
无文件攻击/Linux |
基于共享对象(.so)注入与LD_PRELOAD的持久化模型 |
Linux共享库注入(LD_PRELOAD) |
1. 恶意共享库编写:创建一个恶意的共享库( |
隐蔽性:中,LD_PRELOAD是合法机制,但异常使用可能被检测。持久性:高,通过shell配置文件实现用户级别持久化。功能性:可拦截几乎所有库调用。 |
动态链接、ELF格式、函数挂钩、环境变量 |
1. 记录SSH、sudo等敏感命令的密码 |
常量:恶意共享库路径 |
状态: |
链接:动态符号解析顺序: |
C函数定义,ELF共享库格式,shell环境变量语法。 |
1. 编写 |
顺序(程序启动时预加载,之后函数调用被拦截) |
时间:加载.so增加少量启动开销。函数调用增加间接跳转和额外代码执行时间。 |
x86/ARM CPU:执行动态链接器( |
C代码示例(记录read的密码): |
|
Virus1-0079 |
密码学攻击 |
基于伪随机数生成器(PRNG)后门与密钥恢复的模型 |
伪随机数生成器后门(Dual_EC_DRBG) |
1. 后门植入:在伪随机数生成器(PRNG)算法中植入后门。例如,Dual_EC_DRBG(双椭圆曲线确定性随机比特生成器)使用椭圆曲线点乘。算法内部状态 |
攻击强度:如果后门存在且参数被恶意选择,攻击是确定性的,可完全恢复状态。隐蔽性:后门隐藏在公开算法参数(点P, Q)中,难以检测。 |
椭圆曲线密码学、伪随机数生成理论、 kleptography |
1. 弱化密码学库中的随机数生成,为情报机构留后门 |
常量:椭圆曲线参数(曲线 |
状态: |
椭圆曲线:在有限域 |
椭圆曲线点坐标,PRNG输出字节序列,标量乘法运算。 |
1. 假设PRNG使用Dual_EC_DRBG,公开参数 |
顺序(需要连续输出以进行状态匹配) |
时间:一次椭圆曲线标量乘法是昂贵的(毫秒级),但只需几次尝试。对于现代计算机,恢复状态是可行的。 |
通用CPU:执行大整数模运算、椭圆曲线点加和倍点运算。攻击是计算密集型的,但可行。专用密码硬件(如支持ECC的芯片)可加速。 |
伪代码(状态恢复): |
|
Virus1-0080 |
社会工程学 |
基于深度伪造语音与实时合成的电话钓鱼模型 |
深度伪造语音钓鱼(Vishing) |
1. 目标声音采集:通过公开视频、会议录音、社交媒体等方式,采集目标人物(如公司高管、财务人员)的语音样本 |
欺骗成功率:高,如果语音逼真且剧本合理,可欺骗未经培训的员工。技术门槛:高,需要高质量的语音样本和训练计算资源。 |
深度学习、语音合成、社会工程学、心理学 |
1. 针对企业的商务邮件妥协(BEC)变种,通过电话确认 |
常量:目标语音数据集 |
状态: |
深度学习:语音合成模型是序列到序列(Seq2Seq)模型,损失函数如L1损失`L = |
Mel_pred - Mel_true |
_1 |
x_1, ..., x_{i-1})`。 |
语音波形文件格式(WAV),文本到语音的标注,深度学习框架API。 |
|
编号 |
类别 |
模型配方 |
算法/模型/方法名称 |
算法/模型/方法的逐步思考推理过程及每一个步骤的数学方程式 |
精度/密度/误差/强度 |
底层规律/理论定理 |
典型应用场景【10个场景】 |
变量/常量/参数列表及说明 |
状态机 |
数学特征 |
语言特征 |
时序和交互流程的所有细节/分步骤时序情况及数学方程式 |
顺序/乱序/差序列/倒序/并行序列/分布式序列/随机序列/其他 |
复杂度 |
GPU/ASIC/NPU/RISC-V CPU芯片/X86 CPU/龙芯 CPU/ARM CPU执行的所有指令集情况和执行的指令集序列和各类硬件芯片执行情况 |
C/C++/Java/go/kotlin/Verilog HDL代码和芯片执行情况 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Virus1-0081 |
供应链攻击 |
基于公共软件包仓库(npm, PyPI)的依赖混淆攻击模型 |
依赖混淆攻击(Dependency Confusion) |
1. 内部包标识:扫描目标公司内部使用的私有软件包,获取其包名 |
攻击成功率:依赖于目标公司是否错误配置了包管理器源优先级。在缺乏明确内部源优先配置的环境中,成功率较高。隐蔽性:恶意包发布在公共仓库,但通常不会被注意,直到受害者中招。 |
软件依赖解析算法、包管理器配置语义、最小权限原则 |
1. 针对企业软件供应链,污染其内部构建和部署流水线 |
常量:目标内部包名 |
状态: |
集合:包管理器配置的源(registry)列表 |
包管理器的配置文件(如 |
1. 攻击者通过开源情报(如GitHub代码库)发现某公司使用私有包 |
顺序(侦察->制作->发布->等待触发) |
时间:侦察和制作包需要时间,发布是即时的。触发时间不确定,可能数小时到数天。 |
通用CPU:包管理器(npm, pip)执行依赖解析算法,网络请求获取包元数据和tarball,解压并执行安装脚本。恶意代码在安装时的Node.js/Python环境中执行。 |
恶意 package.json 示例: |
|
Virus1-0082 |
AI安全/数据投毒 |
基于训练数据注入的后门攻击模型 |
后门攻击(Backdoor Attack) |
1. 后门模式选择:选择一个不易察觉的“触发器”模式 |
攻击成功率:高,在污染率足够、触发器选择恰当时,后门激活成功率可接近100%。隐蔽性:高,模型在干净数据上性能无明显下降,触发器通常很小且不起眼。 |
机器学习、模式关联、过参数化、表示学习 |
1. 人脸识别系统中,植入后门使任何戴特定眼镜的人被识别为目标人物 |
常量:触发器模式 |
状态: |
优化:模型训练是经验风险最小化,但污染数据引入了 |
图像像素值,文本词向量,音频频谱值,模型训练代码。 |
1. 目标:一个图像分类模型,识别猫和狗。 |
顺序(数据污染->训练->测试) |
时间:训练时间与原模型相同,因为污染数据比例小。触发器嵌入开销可忽略。 |
GPU (CUDA cores):模型训练(前向传播、反向传播)主要在GPU上进行。触发器嵌入是简单的张量操作,可在CPU或GPU上完成。 |
PyTorch伪代码(数据污染): |
|
Virus1-0083 |
云安全/配置错误 |
基于云存储桶(S3)公开访问与数据泄露的模型 |
云存储桶公开访问滥用 |
1. 存储桶枚举:通过子域名爆破、搜索引擎(如 |
发现概率:高,由于配置错误普遍存在。影响程度:严重,可导致大规模数据泄露。 |
云安全最佳实践、最小权限原则、访问控制列表(ACL)、桶策略 |
1. 企业数据泄露(客户信息、内部文档) |
常量:目标公司标识 |
状态: |
集合:可能的存储桶名称集合(基于词汇、组合),存储桶内对象键集合。 |
AWS S3 REST API端点,桶策略JSON格式,敏感数据模式(正则表达式)。 |
1. 通过Crunchbase等发现目标公司 |
顺序(枚举->尝试访问->下载->分析)+ 并行(可并行测试多个候选桶) |
时间:O(N + M),N为候选桶数量,M为可访问桶中的文件数量。受网络延迟影响。 |
通用CPU:执行网络请求(HTTP/HTTPS)、JSON解析、字符串匹配(搜索敏感信息)。攻击者使用AWS CLI或自定义脚本,主要开销在网络I/O。 |
Bash脚本示例(枚举与检查): |
|
Virus1-0084 |
物联网/僵尸网络 |
基于UPnP协议滥用与端口映射的蠕虫传播模型 |
UPnP滥用蠕虫 |
1. 内网感染:蠕虫首先通过某种方式(如弱口令、漏洞)感染内网一台设备(如路由器、网络摄像头、智能电视)。 |
传播范围:可绕过NAT,将内网设备暴露到公网,扩大僵尸网络规模。隐蔽性:UPnP是合法协议,但恶意使用难以被普通用户察觉。 |
通用即插即用(UPnP)协议、网络地址转换(NAT)、端口映射、僵尸网络拓扑 |
1. 组建大规模物联网僵尸网络(如Mirai变种) |
常量:UPnP多播地址 |
状态: |
协议:UPnP使用SOAP over HTTP,消息是XML格式。 |
SSDP发现消息,SOAP请求XML体,IGD服务描述。 |
1. 蠕虫发送SSDP M-SEARCH: |
顺序(发现->描述->控制)+ 事件驱动(响应SSDP) |
时间:O(1),一次完整的UPnP交互在秒级。但需要等待SSDP响应(MX秒)。 |
通用CPU:执行网络套接字操作(UDP多播、HTTP)、XML解析。蠕虫和UPnP服务(通常在路由器上)运行在各自的设备上。 |
Python伪代码(UPnP端口映射): |
|
Virus1-0085 |
漏洞发现/移动端 |
基于Android Intent重定向与组件暴露的漏洞利用模型 |
Android Intent重定向攻击 |
1. 暴露组件发现:静态分析目标Android应用的 |
影响:可能导致权限提升、数据泄露、拒绝服务。普遍性:在未严格验证 |
Android组件通信、Intent机制、权限模型、输入验证 |
1. 窃取其他应用的数据(通过重定向到其内部Activity) |
常量:目标应用包名 |
状态: |
集合:目标应用的组件集合,可被启动的组件集合(包括系统组件)。 |
AndroidManifest.xml语法,Intent的Extra数据格式,组件类名。 |
1. 目标应用 |
顺序(构造->调用->重定向->执行) |
时间:O(n),n为导出组件数量,静态分析可能较耗时。运行时调用是瞬时的。 |
ARM CPU (Android): 执行Android框架的Intent解析和组件启动逻辑。攻击者应用和受害应用运行在各自的进程,通过Binder IPC通信。 |
Java代码(PoC攻击者): |
|
Virus1-0086 |
硬件缺陷(侧信道-内存) |
基于DRAM行缓冲器冲突的Rowhammer攻击模型 |
Rowhammer攻击 |
1. 内存地址映射:了解DRAM的组织结构:内存被分为多个行(Row),每个行有多个列(Cell)。频繁打开和关闭一行(称为“锤击”,hammering)会导致相邻行(victim rows)的电容电荷泄漏加快,可能发生位翻转(bit flip)。 |
攻击强度:可绕过所有软件隔离,直接操作硬件。可靠性:位翻转具有随机性,成功率高但翻转位置不确定,需大量尝试。 |
DRAM物理特性、内存控制器、缓存一致性、物理地址映射 |
1. 从用户态提权到内核态(如获得root) |
常量:锤击次数 |
状态: |
组合:DRAM地址到(bank, row, column)的映射是复杂的,攻击者需通过侧信道或物理信息来找到合适的地址对。 |
汇编指令( |
1. 在Linux上,通过 |
顺序(锤击循环)+ 并行(可多线程锤击不同地址对) |
时间:O(N),N为锤击次数,通常需要数百万次,在秒级完成。地址搜寻可能耗时。 |
x86/ARM CPU:执行内存加载指令( |
C/内联汇编示例(锤击核心): |
|
Virus1-0087 |
社会工程学 |
基于二维码(QR Code)钓鱼与恶意URL分发的模型 |
二维码钓鱼攻击 |
1. 恶意载体制作:攻击者制作一个恶意载体,通常是一个URL,指向钓鱼网站、恶意应用下载、或直接触发某些动作(如 |
欺骗成功率:高,用户对QR码警惕性较低,且无法直接预览内容。传播性:易于通过物理和数字渠道大规模分发。 |
社会工程学、QR码编码标准、移动设备交互、URL重定向 |
1. 网络钓鱼,窃取银行、社交媒体凭证 |
常量:恶意URL |
状态: |
信息编码:QR码是二维矩阵码,将数据(如URL)编码为黑白模块。数据容量和纠错等级可调。 |
QR码图片文件,诱饵文本,短链接服务API。 |
1. 攻击者注册钓鱼域名 |
顺序(制作->分发->扫描->执行) |
时间:制作QR码和钓鱼页面很快。攻击效果取决于用户何时扫描。 |
通用CPU:QR码生成和解码涉及图像处理和纠错算法(如Reed-Solomon)。攻击者生成QR码,用户设备扫码解码。恶意网站在服务器上运行。 |
Python生成QR码示例: |
|
Virus1-0088 |
密码学攻击 |
基于长度扩展攻击的哈希函数滥用模型 |
哈希长度扩展攻击(Hash Length Extension Attack) |
1. 已知条件:攻击者知道某个消息 |
M) |
|
M |
Padding |
Append |
M |
||||||
|
Virus1-0089 |
无线安全 |
基于Wi-Fi探针请求与MAC地址跟踪的物理位置追踪模型 |
Wi-Fi探针追踪 |
1. 探针请求监听:移动设备(手机、笔记本)为了快速连接已知网络,会定期广播“探针请求”帧,其中包含其曾连接过的Wi-Fi网络SSID列表。每个探针请求都包含设备的MAC地址(通常是随机的,但早期或未启用随机化的设备使用真实MAC)。攻击者使用无线网卡(监听模式)捕获这些帧。 |
追踪精度:依赖监听点密度,在密集部署下可达米级。隐蔽性:完全被动监听,设备无感知。 |
802.11协议、信号传播模型、三角定位、隐私保护 |
1. 商场、机场等公共场所的人群流量分析 |
常量:监听设备位置坐标 |
状态: |
信号处理:RSSI是距离 |
802.11帧格式(特别是Management frame, subtype: Probe Request),MAC地址格式,SSID字符串。 |
1. 在购物中心部署三个监听器A(0,0), B(20,0), C(0,15)。 |
并行(多个监听点同时捕获)+ 时间序列(持续跟踪) |
时间:实时捕获,数据处理和定位计算很快。持续跟踪产生大量数据。 |
通用CPU/嵌入式CPU:监听设备(如Raspberry Pi)的无线网卡芯片捕获射频信号,生成帧数据。主CPU运行抓包工具(如 |
使用 tcpdump 捕获探针请求: |
|
Virus1-0090 |
无文件攻击/Windows |
基于Windows COM脚本组件(.sct)与注册表存储的持久化模型 |
Windows脚本组件(.sct)注册表持久化 |
1. 恶意脚本制作:创建一个XML格式的脚本组件文件( |
隐蔽性:高,无文件落地,恶意载荷存储在注册表中。持久性:高,注册表项在重启后保留。 |
COM组件、Windows脚本宿主、注册表结构、无文件攻击 |
1. 绕过应用白名单( |
常量:恶意脚本内容 |
状态: |
注册表路径: |
注册表项和值, |
1. 创建恶意脚本文件 |
顺序(注册->触发) |
时间:注册表操作是瞬时的。脚本执行时间取决于载荷。 |
x86/x64 CPU:执行注册表系统调用。 |
注册表添加命令(reg文件): |
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)