描述
一个错误的对手利用应用程序未能验证正在运行的进程执行任意代码的完整性在一个单独的生活进程的地址空间。敌人的上下文中运行代码可以使用另一个进程试图访问进程的内存,系统/网络资源等。这次袭击的目的是逃避检测防御和升级权限屏蔽恶意代码在一个现有的合法的过程。方法的例子包括但不限于:动态链接库(DLL)注射,可移植可执行注入,线程执行劫持,ptrace系统调用,VDSO劫持,功能连接,反射代码加载等等。
攻击的可能性
典型的严重性
执行流程
探索
确定目标的过程:对手决定过程有足够的特权,他们希望包括代码。
技术 |
在Windows上,使用process explorer的安全选项卡是否与administror特权进程正在运行。 |
在Linux上,可以使用ps命令来查看正在运行的进程和管道输出搜索一个特定的用户,或根用户。 |
实验
尝试包括简单的代码与已知输出:敌人试图包括非常简单的代码到现有的过程来确定代码内容工作。代码将使用基于不同方法包括代码到现有过程。
利用
包括任意代码到现有的流程:一旦敌人已确定,包括代码到现有的过程是可能的,他们将目标代码的目的,如访问进程的内存。
先决条件
目标应用程序未能验证正在运行的进程的完整性,让敌人执行任意代码。 |
技能要求
(级别:高) 知道如何恶意代码加载到运行的进程的内存空间,以及正在运行的进程执行这个代码的能力。例如,使用DLL注入,敌人必须知道如何一个DLL加载到另一个运行的进程的内存空间,并导致这一过程来执行代码的DLL。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
完整性
保密 |
执行未经授权的命令
读取数据 |
|
缓解措施
通过使用一个防止未知或恶意软件加载allowlist政策。 |
适当限制软件被使用的位置。 |
利用安全内核模块提供先进的访问控制和过程像SELinux的限制。 |
监控API调用像CreateRemoteThread SuspendThread / SetThreadContext / ResumeThread QueueUserAPC,类似的Windows。 |
监控像ptrace API调用系统调用,使用LD_PRELOAD环境变量,dlfcn动态链接API调用,类似Linux。 |
监控API调用SetWindowsHookEx和SetWinEventHook安装钩子程序窗口。 |
监控过程和命令行参数未知的行为相关的代码注入。 |
分类法映射
CAPEC映射ATT&CK技术利用一个继承模型简化和减少直接CAPEC / ATT&CK映射。继承的映射表示文本说明父CAPEC有相关ATT&CK映射。注意,ATT&CK企业框架不使用一个继承模型的一部分映射到CAPEC。
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2018-07-31
(版本2.12) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2019-04-04
(版本3.1) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Weaknesses |
2020-07-30
(版本3.3) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述、移植Taxonomy_Mappings |
2021-06-24
(版本3.5) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Taxonomy_Mappings |
2021-10-21
(版本3.6) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Execution_Flow |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Taxonomy_Mappings |
2023-01-24
(版本3.9) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述、Related_Weaknesses Taxonomy_Mappings |
|