命令与脚本解释器: 动态代码混淆与反射加载

动态代码混淆与反射加载(Dynamic Code Obfuscation with Reflective Loading)是一种通过实时变换代码特征并绕过模块加载监控的技术。攻击者在脚本解释器运行时动态生成混淆代码(如随机变量名替换、控制流平坦化),并通过反射机制将恶意模块直接加载到内存空间,避免传统导入表挂钩检测。该技术结合了代码形态动态变异和内存加载规避的双重隐匿策略。

匿迹机制的核心在于破坏静态特征检测和动态加载监控的有效性。攻击脚本在每次执行时通过元编程技术重构代码结构,生成语法合法但特征唯一的变体,使得基于特征签名的检测失效。反射加载技术则通过解释器的内部函数(如PowerShell的[Reflection.Assembly]::Load)直接映射恶意DLL到内存,绕过文件系统监控和模块加载审计。为进一步增强隐蔽性,攻击者可注入垃圾代码模拟合法脚本的代码熵特征,并利用延迟执行机制规避沙箱的时间敏感性检测。

ID: T1059.003
Sub-technique of:  T1059
Tactic: 攻击执行
Platforms: IaaS, Identity Provider, Linux, Network, Office Suite, Windows, macOS
Contributors: shrugginG
Created: 02 October 2020
Last Modified: 15 October 2024

Mitigations

This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.

Detection

Coming soon